GET
/
api
/
calls
/
{call_id}
curl --request GET \
  --url https://api.ultravox.ai/api/calls/{call_id} \
  --header 'X-API-Key: <api-key>'
{
  "callId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "clientVersion": "<string>",
  "created": "2023-11-07T05:31:56Z",
  "joined": "2023-11-07T05:31:56Z",
  "ended": "2023-11-07T05:31:56Z",
  "endReason": "unjoined",
  "firstSpeaker": "FIRST_SPEAKER_AGENT",
  "firstSpeakerSettings": {
    "user": {},
    "agent": {
      "uninterruptible": true,
      "text": "<string>"
    }
  },
  "inactivityMessages": [
    {
      "duration": "<string>",
      "message": "<string>",
      "endBehavior": "END_BEHAVIOR_UNSPECIFIED"
    }
  ],
  "initialOutputMedium": "MESSAGE_MEDIUM_VOICE",
  "joinTimeout": "30s",
  "joinUrl": "<string>",
  "languageHint": "<string>",
  "maxDuration": "3600s",
  "medium": {
    "webRtc": {},
    "twilio": {},
    "serverWebSocket": {
      "inputSampleRate": 123,
      "outputSampleRate": 123,
      "clientBufferSizeMs": 123
    },
    "telnyx": {},
    "plivo": {},
    "exotel": {}
  },
  "model": "fixie-ai/ultravox",
  "recordingEnabled": false,
  "systemPrompt": "<string>",
  "temperature": 0,
  "timeExceededMessage": "<string>",
  "voice": "<string>",
  "transcriptOptional": true,
  "errorCount": 0,
  "vadSettings": {
    "turnEndpointDelay": "<string>",
    "minimumTurnDuration": "<string>",
    "minimumInterruptionDuration": "<string>"
  },
  "shortSummary": "<string>",
  "summary": "<string>",
  "experimentalSettings": "<any>"
}

Authorizations

X-API-Key
string
header
required

API key

Path Parameters

call_id
string
required

Response

200 - application/json
callId
string
required
clientVersion
string | null
required

The version of the client that joined this call.

created
string
required
joined
string | null
required
ended
string | null
required
endReason
required

The reason the call ended.

  • unjoined - Client never joined
  • hangup - Client hung up
  • agent_hangup - Agent hung up
  • timeout - Call timed out
  • connection_error - Connection error
Available options:
unjoined,
hangup,
agent_hangup,
timeout,
connection_error
firstSpeaker
enum<string>
requireddeprecated

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.

Available options:
FIRST_SPEAKER_AGENT,
FIRST_SPEAKER_USER
firstSpeakerSettings
object
required

Settings for the initial message to get the call started.

initialOutputMedium
enum<string>
required

The medium used initially by the agent. May later be changed by the client.

Available options:
MESSAGE_MEDIUM_VOICE,
MESSAGE_MEDIUM_TEXT
joinUrl
string | null
required
errorCount
integer
default:
0
required

The number of errors in this call.

shortSummary
string | null
required

A short summary of the call.

summary
string | null
required

A summary of the call.

experimentalSettings
any
required

Experimental settings for the call.

inactivityMessages
object[]

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.

joinTimeout
string
default:
30s
languageHint
string | null

BCP47 language code that may be used to guide speech recognition.

Maximum length: 16
maxDuration
string
default:
3600s
medium
object

Details 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.

model
string
default:
fixie-ai/ultravox
recordingEnabled
boolean
default:
false
systemPrompt
string | null
temperature
number
default:
0
Required range: 0 < x < 1
timeExceededMessage
string | null
voice
string | null
transcriptOptional
boolean
default:
true
deprecated

Indicates whether a transcript is optional for the call.

vadSettings
object

VAD settings for the call.