End Test Call
Hang up a browser test call (admin+): deletes its LiveKit room, which disconnects the browser and the agent; the agent then completes the call (outcome and transcript). `ended: false` when the room was already gone.
API key access
admin scope with an API key (ro_pat_...). A signed-in session uses the caller's role./api/v1/voice/test-calls/{call_id}/endAccess token from /api/v1/auth/login, or an API key (ro_pat_..., RO-176) from /api/v1/workspaces/current/api-keys: the key implies its workspace and needs the route's scope. MCP connectors (/api/v1/mcp only) may use an OAuth access token (ro_oat_..., RO-284).
In: header
Path Parameters
uuidHeader Parameters
Id of the workspace to act on (must be a member).
Response Body
curl -X POST "http://localhost:8000/api/v1/voice/test-calls/497f6eca-6276-4993-bfeb-53cbbbba6f08/end" \ -H "X-Workspace-Id: string"{
"call_id": "0d0a16ab-a508-4d58-bf24-5dc3cb248f3e",
"ended": true
}{
"detail": [
{
"loc": [
"string"
],
"msg": "string",
"type": "string",
"input": null,
"ctx": {}
}
]
}Dial Result
The outbound SIP leg was never answered (busy, no answer, rejected, failed). Ends a queued or ringing call with that status and adds ``call_completed`` (0 seconds, disposition ``sip_<code>``) to the timeline; the dial attempt keeps counting toward the calling frequency caps. Idempotent (``recorded: false`` once the call has ended); 409 for a call in progress. ``voicemail`` (RO-043): an answering machine picked up (also for a call in progress); ``message_left`` says whether the agent left its message (disposition ``voicemail_message_left`` or ``voicemail_hung_up``).
Knowledge Search
Approved snippets from the workspace knowledge base. Never fails the call: when search can't run (free-tier quota used up, embeddings not configured, provider error) it returns no snippets and a ``reason``, and the agent promises a follow-up instead of guessing.