/swagger-ui, with the OpenAPI
3.0 document at /api-docs/openapi.json.
Every tenant endpoint below also has a generated reference page with a live playground under the
Voice API tab — 65 operations, built from the OpenAPI document the
server publishes. This page is the narrative map; use the tab to make calls.
Service
Calls
POST /make-call supports an Idempotency-Key with 24-hour replay protection, a transient
per-call config (custom tools included) for prototyping, and persisted metadata.
Browser calls run the same media protocol and pipeline as phone calls, so anything configured
for telephony — agents, tools, transfers, evals — applies unchanged.
Media stream authentication
The WebSocket handshake authenticates a tenant byAuthorization: Bearer … or a short-lived
signed ?stream_token=….
Translation calls
A translation call bridges two people who do not share a language: the platform dials both, and each hears the other translated in near real time.Response
ok: true means both legs were placed, not that both were answered — the
call_sid values are how you follow each leg’s actual outcome. When Twilio is
not configured the response carries error instead of the sids.Sessions and supervision
Supervisor actions:
monitor, whisper, barge, escalate, end.
Functions and automations
Human handoff
/transfer-call dials a human with a bounded ring timeout
(twilio.human_agent_timeout_seconds, default 25s). If nobody answers, /transfer-complete
reconnects the caller to the AI with a message-taking greeting rather than Twilio’s default
hangup. A failed background escalation likewise speaks a recovery prompt — counted by
escalation_bridge_failed_total — instead of leaving the caller on a silent line.
Admin
Admin routes requireADMIN_API_KEY, passed as x-admin-key.
GET /metrics on the main port requires x-admin-key. The dedicated METRICS_PORT is
unauthenticated and must be network-restricted.<redacted> placeholder. Tenant reads expose deterministic config ETags, so writes can use
If-Match to avoid lost updates.
Next steps
Configuration
Tenant settings, audio providers and turn behaviour.
Webhooks
Signature verification, shared with custom tool calls.
Voice SDKs
TypeScript, Python and the browser Web SDK.
Quickstart
First agent, number and call, end to end.