Call Definition
Documentation Index
Fetch the complete documentation index at: https://docs.ultravox.ai/llms.txt
Use this file to discover all available pages before exploring further.
The version of the client that joined this call.
The reason the call ended.
unjoined- Client never joinedhangup- Client hung upagent_hangup- Agent hung uptimeout- Call timed outconnection_error- Connection errorsystem_error- System error
unjoined, hangup, agent_hangup, timeout, connection_error, system_error - BILLING_STATUS_PENDING* - The call hasn't been billed yet, but will be in the future. This is the case for ongoing calls for example. (Note: Calls created before May 28, 2025 may have this status even if they were billed.)
- BILLING_STATUS_FREE_CONSOLE* - The call was free because it was initiated on https://app.ultravox.ai.
- BILLING_STATUS_FREE_ZERO_EFFECTIVE_DURATION* - The call was free because its effective duration was zero. (Note: There may still be a non-zero sip bill in this case.)
- BILLING_STATUS_FREE_MINUTES* - The call was unbilled but counted against the account's free minutes. (Note: There may still be a non-zero sip bill in this case.)
- BILLING_STATUS_FREE_SYSTEM_ERROR* - The call was free because it ended due to a system error.
- BILLING_STATUS_FREE_OTHER* - The call is in an undocumented free billing state.
- BILLING_STATUS_BILLED* - The call was billed. See billedDuration for the billed duration.
- BILLING_STATUS_REFUNDED* - The call was billed but was later refunded.
- BILLING_STATUS_UNSPECIFIED* - The call is in an unexpected billing state. Please contact support.
BILLING_STATUS_PENDING, BILLING_STATUS_FREE_CONSOLE, BILLING_STATUS_FREE_ZERO_EFFECTIVE_DURATION, BILLING_STATUS_FREE_MINUTES, BILLING_STATUS_FREE_SYSTEM_ERROR, BILLING_STATUS_FREE_OTHER, BILLING_STATUS_BILLED, BILLING_STATUS_REFUNDED, BILLING_STATUS_UNSPECIFIED Who was supposed to talk first when the call started. Typically set to FIRST_SPEAKER_USER for outgoing calls and left as the default (FIRST_SPEAKER_AGENT) otherwise.
FIRST_SPEAKER_AGENT, FIRST_SPEAKER_USER Settings for the initial message to get the call started.
The medium used initially by the agent. May later be changed by the client.
MESSAGE_MEDIUM_VOICE, MESSAGE_MEDIUM_TEXT A short summary of the call.
A summary of the call.
The agent used for this call.
The ID of the agent used for this call.
Experimental settings for the call.
Optional metadata key-value pairs to associate with the call. All values must be strings.
The initial state of the call which is readable/writable by tools.
SIP details for the call, if applicable.
Messages spoken by the agent when the user is inactive for the specified duration. Durations are cumulative, so a message m > 1 with duration 30s will be spoken 30 seconds after message m-1.
BCP47 language code that may be used to guide speech recognition.
16Details about a call's protocol. By default, calls occur over WebRTC using the Ultravox client SDK. Setting a different call medium will prepare the server for a call using a different protocol. At most one call medium may be set.
The retention policy for the call's data after it ends.
retain- Retain indefinitelyauto_delete- Auto-delete after billing
retain, auto_delete 0 <= x <= 1A voice not known to Ultravox Realtime that can nonetheless be used for a call. Such voices are significantly less validated than normal voices and you'll be responsible for your own TTS-related errors. Exactly one field must be set.
Overrides for the selected voice.
Indicates whether a transcript is optional for the call.
VAD settings for the call.
Settings for exchanging data messages with an additional participant.
Callbacks configuration for the call.