Platform · Outbound

Outbound calls, triggered from your code.

Trigger a single AI-powered call from your workflow or run a managed recipient batch. Every call becomes an execution record with transcript, recording, tool results, and outcome, so outbound automation stays traceable from trigger to follow-up.

Problem · Solution

The problem today

Outbound calling is often split between rigid dialers that are difficult to connect to business workflows and one-off calling tools that give operations no control over larger recipient lists. Teams need both: contextual calls triggered by real events, plus managed batches with clear recipient status, progress, and follow-up outcomes.

How Vocily AI handles it

  • Single calls from business events

    Trigger a call when an order is placed, a lead arrives, a reminder is due, or another workflow reaches the right moment.

  • Managed batches for recipient lists

    Run controlled outbound lists with recipient-level status, pause and resume controls, focused reruns, and exportable outcomes.

  • Per-call runtime variables

    Inject context per call — caller name, order ID, due amount, anything. Available as template variables in the prompt and the agent's tools.

  • One execution record per call

    Every call writes a structured record — call SID, status, transcript, recording, tool calls, outcome, per-component cost. Queryable, exportable, webhook-pushable.

  • Structured outcomes

    Reached · transferred · booked · follow-up · unreached · opt-out. Outcomes are tags, not free-text. Reporting becomes filtering.

  • Retries stay intentional

    Failed calls keep their own record with a reason code. Your team decides which recipients belong in a focused rerun and when another attempt is appropriate.

What's in it

What an outbound call looks like.

From trigger to write-back, here's the contract.

01

Triggering

How calls get placed.

Endpoint
POST /v1/calls — pass agent ID, to-number, and optional runtime variables.
Authentication
Workspace API key. Server-side only.
Variables
Per-call key/value pairs that substitute into the agent's prompt and tool configs.
Idempotency
Idempotency key supported to prevent double-dial on retries.

02

Execution record

What lives on every call once it completes.

Identity
Execution ID · Call SID · agent · language used.
Status
Queued · dialing · in_progress · completed · failed (with reason).
Transcript
Full turn-by-turn with word-level alignment events.
Recording
Audio per execution (stops at human handoff).
Tool calls
Every API tool invocation with input, output, latency, status.
Cost
Per-component breakdown — STT, TTS, LLM, telephony — and total.

03

Outcome categories

Structured tags applied per call.

Reached
Caller answered and the conversation completed.
Transferred
Agent handed off to a human destination per escalation rules.
Booked
A meeting / visit / appointment was created inside the call.
Follow-up
Caller asked for a callback at a specific time.
Unreached
No-answer, busy, or voicemail — with reason code.
Opt-out
Caller explicitly asked not to be called again — timestamped.

04

Webhooks & write-back

How outcomes get back into your stack.

Webhook events
call.started · call.ended · call.failed · transcript.ready · recording.ready · post_call_analysis.ready
Signing
HMAC-SHA256 per event so your backend can verify origin.
Retries
Exponential backoff with delivery history per endpoint.
Pull-mode
REST endpoints to pull execution records on demand if you'd rather not handle webhooks.

From trigger to execution

Every outbound call has a paper trail.

Vocily AI uses the same execution model for every outbound call, so each is traceable from start to finish.

Execution ID
Call SID
Status
Tool results
Recording
Cost

Execution record

Completed

exec_29x8b

Outbound · 03:04 · placed via Vobiz

Channel

Outbound

Duration

3m 04s

Transcript

14 turns

Recording

Ready

Tools invoked

crm.lookup_policyschedule.book

Common questions

What teams ask before they switch.

Yes. Use a managed outbound batch for a recipient list, or trigger individual calls directly from your own business workflows.