Request Handoff
Flag the call for a human follow-up: the first request puts a task note for a human on the lead's timeline (RO-134). RO-064: with ``live_transfer: true`` and a live-transfer target the workspace allows now (Settings -> Live transfer: enabled, within its hours, on an outbound call dialled through LiveKit SIP, not a test call, no opt-out), the answer carries ``transfer`` (the team line and its ring timeout) and the task note waits for ``/transfer-result`` instead.
API key access
/api/v1/calls/{call_id}/handoffPer-call token issued when the call was created (job metadata api_token).
In: header
Path Parameters
uuidHeader Parameters
Workspace of the call (must match the token).
uuid""length <= 2000RO-064: the worker can bridge this call to a person now (the caller asked for one on an
outbound SIP call); the answer may then carry transfer.
falseResponse Body
curl -X POST "http://localhost:8000/api/v1/calls/497f6eca-6276-4993-bfeb-53cbbbba6f08/handoff" \ -H "X-Workspace-Id: string" \ -H "Content-Type: application/json" \ -d '{ "lead_id": "9bddab70-98e6-43a9-8f32-c9788b9de0c0" }'{
"accepted": true,
"message": "string",
"transfer": {}
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}Opt Out
Suppress the lead (phone + every channel per policy) and stop their sequences. Idempotent; accepted even after the call completed.
Run Audition
Synthesise `text` (at most 200 characters) with 1-5 voices. Each sample comes back in full quality and in phone quality (8 kHz mu-law, what a caller hears) with the provider's time to first byte. Per-sample failures (no key, a cap reached, the provider refused) are reported in the sample, never retried. Caps: 30 new samples per workspace and UTC day (cached replays are free) and a daily character budget per provider on the platform's keys. Owners and admins.