API reference

Calls API

Guide: Place a call.

EndpointPurpose
POST /api/v1/callsPlace an outbound AI call
GET /api/v1/callsList calls (agent_id, status, limit ≤200)
GET /api/v1/calls/{id}Full record: status, transcript, summary, sentiment
GET /api/v1/calls/{id}/transcriptTranscript only
POST /api/agents/{id}/test-callThe agent calls you

POST /api/v1/calls

Body: agent_id (required), to (required, E.164), objective, metadata (≤8KB, echoed on events), callback_url, source. Header Idempotency-Key deduplicates retries. Caps: 5 concurrent, 50/hour.

Returns 201 {call_id, call_sid, status, polling_url, transcript_url}.

Call lifecycle

initiated → ringing → in-progress → completed | failed | busy | no-answer | canceled

Transcripts append turn-by-turn while the call is live; summary/sentiment/intent land shortly after hangup (and fire call.completed). Prefer webhooks over polling for fleet-scale workloads.