Listen to a call the AI assistant is handling (receive-only)
POST/api/calls/:callId/listen
The browser's SDP offer (receive-only audio) is answered by a send-only bridge leg that carries the caller and whatever the caller hears (the assistant, notices, hold audio), mixed and encoded as Opus 48 kHz. Nothing travels the other way: the caller and the assistant never hear the listener, and nothing about the call changes.
Only while the assistant holds the call (ai_state attaching / live /
escalating, nobody has answered it). Every start is written to the
audit log as call.listen_started (who, which call, when); the caller
is told nothing beyond the call's existing recording notice.
Request
Responses
- 200
- 401
- 403
- 404
- 409
- 422
- 429
- 501
- 503
The bridge's answer; audio flows once ICE connects.
Not authenticated. code: account_disabled means the member's seat was deactivated in this workspace: the session is over even though the token was not revoked (clients sign out and clean up).
Authenticated but not allowed.
Resource not found (or not visible to the current tenant).
listen_requires_ai (the assistant does not hold the call) or a bridge refusal (call_not_active, listen_exists).
The request failed validation.
listen_limit — the call already has the most listeners the bridge allows.
listen_unsupported — this media bridge has no listen leg.
listen_bridge_unavailable — the media bridge could not be reached.