Agoralia docs
Run

Journeys & pipelines

Two different multi-step concepts — journeys sequence touches (call/wait/sms) per contact over time; pipelines run multiple agents on a single call.

Journeys & pipelines

Both add structure beyond a single agent on a single call, but they solve different problems:

  • Journey — a multi-touch sequence per contact, over time: call, wait, SMS, call again.
  • Pipelinemultiple agents on one call, handing off mid-conversation.

Pick the right one

Reaching the same person across days? Use a journey. Routing one live call through specialists (e.g. triage → sales)? Use a pipeline.

Journeys (multi-touch per contact)

A journey is configured on a campaign — it sequences steps that run per contact as calls complete. Step types are call, wait, and sms.

Journey config
{
  "max_touches": 4,
  "exit_on_success": true,
  "steps": [
    { "type": "call", "label": "Initial contact" },
    { "type": "wait", "hours": 24, "label": "Wait 24h" },
    { "type": "sms",  "body": "Hi {name}, we tried calling. Reply to schedule.", "label": "SMS follow-up" },
    { "type": "wait", "hours": 48, "label": "Wait 48h" },
    { "type": "call", "label": "Final attempt" }
  ]
}
FieldWhat it is
stepsOrdered list of call / wait / sms steps.
wait.hoursHours to pause before the next step.
sms.bodySMS text (sent via the configured SMS sender). Supports {name}.
max_touchesHard cap on actual calls, regardless of steps defined.
exit_on_successStop the sequence as soon as a contact converts.

When a call ends, the next step is computed automatically: a wait schedules the next touch with a delay; exit_on_success ends the journey on a successful outcome; reaching max_touches ends it too.

MCP — configure a journey
configure_journey(campaign_id="CAMPAIGN_ID", steps=[...], max_touches=4, exit_on_success=true)
get_journey(campaign_id="CAMPAIGN_ID")

Pipelines (multi-agent on a single call)

A pipeline chains multiple agents within one call — one agent can hand off to another mid-conversation (for example, a triage agent transfers to a sales agent). Build them from templates such as sales pipeline, inbound routing, and appointment setting.

MCP — pipelines
create_pipeline(name="Triage → Sales", ...)
create_smart_pipeline(...)        # cost-weighted build with a preview
list_pipelines()
get_pipeline(pipeline_id="...")
activate_pipeline(pipeline_id="...")
delete_pipeline(pipeline_id="...")

create_smart_pipeline produces a cost-weighted preview before you commit, then you activate_pipeline to make it live.

Next