GEThttps://core-api.heysadie.ai/calls/live
success data calls id callId assistantId assistantName customerNumber callSource status startedAt durationSeconds monitorSupported monitorUnsupportedReason monitorCount total metadata timestamp version path error code message details fieldList calls live
Try it in the API ExplorerExample request
curl "https://core-api.heysadie.ai/calls/live" \
-H "Authorization: ApiKey YOUR_API_KEY"Authentication
Authenticate with an API key in the Authorization header using the ApiKey scheme. See Authentication for how keys work and where to get them.
AuthorizationstringrequiredAPI key in the ApiKey scheme: ApiKey YOUR_API_KEY. Tenant keys authorize their own tenant; organization keys can act on any tenant in the organization.
X-Tenant-Idstring (uuid)optionalRequired when authenticating with an organization key: it selects the tenant the request acts on. Omit with tenant keys.
Responses
successbooleanrequiredtrue on every 2xx
dataobjectoptionalThe result
Show 2 child properties
callsobject[]requiredCalls currently in progress
Show 12 item properties
idstringrequired`calls.id`: the internal id every other call endpoint addresses a call by, and the one to put in the monitor-session path.
callIdstringrequired`calls.call_id`: the agent-minted id that appears in agent logs. Carried so an operator can correlate a support ticket.
assistantIdstring | nullrequiredassistantNamestring | nullrequiredcustomerNumberstring | nullrequiredThe caller's number, E.164.
callSourcestringrequired`pstn`, `webrtc` or `whatsapp`. Monitoring is scoped to phone calls, so anything but `pstn` reports `monitorSupported: false`.
statusstring | nullrequiredstartedAtstringrequiredWhen the call row was created, which is when the call started. `calls.started_at` stays null for the whole of a live call.
durationSecondsnumberrequiredHow long the call has been running, derived server-side so a client with a skewed clock still renders a sane number.
monitorSupportedbooleanrequiredWhether a monitor session can be minted for this call. False for a call served by an agent build that predates live monitoring, for a call that has already reported, and for anything that is not a phone call.
monitorUnsupportedReasonenum | nullrequiredNull when the call can be monitored. `agent_build_unsupported` when the row carries no room name or no control secret: an agent build predating live monitoring, or a call that has already reported. `not_phone_call` for a browser or WhatsApp call; monitoring is scoped to phone calls in v1. Present so a greyed-out button has a tooltip.
"agent_build_unsupported""not_phone_call"monitorCountnumberrequiredHow many monitor sessions currently count against the call: the same number the mint endpoint enforces its cap with.
totalnumberrequiredNumber of calls returned
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested
400The request is invalid. `details` lists each field that failed
successbooleanrequiredfalse on every error
errorobjectoptionalWhat went wrong: a stable `code` to branch on and a human-readable `message`
Show 3 child properties
codeenumrequiredA parameter or body field broke a rule
"VALIDATION_ERROR"messagestringrequiredHuman-readable explanation. Do not parse it; branch on `code`
detailsobject[]optionalOne entry per field that failed
Show 2 item properties
fieldstringrequiredThe offending field
messagestringrequiredThe rule it broke
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested
401Missing or invalid credentials
successbooleanrequiredfalse on every error
errorobjectoptionalWhat went wrong: a stable `code` to branch on and a human-readable `message`
Show 2 child properties
codeenumrequiredNo valid credentials
"UNAUTHORIZED"messagestringrequiredHuman-readable explanation. Do not parse it; branch on `code`
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested
403The credentials are valid but may not use this route
successbooleanrequiredfalse on every error
errorobjectoptionalWhat went wrong: a stable `code` to branch on and a human-readable `message`
Show 2 child properties
codeenumrequiredThe credentials may not use this route
"FORBIDDEN"messagestringrequiredHuman-readable explanation. Do not parse it; branch on `code`
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested
404Not found, or outside the caller's scope
successbooleanrequiredfalse on every error
errorobjectoptionalWhat went wrong: a stable `code` to branch on and a human-readable `message`
Show 2 child properties
codeenumrequiredAn id names nothing the caller can see
"RESOURCE_NOT_FOUND"messagestringrequiredHuman-readable explanation. Do not parse it; branch on `code`
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested
500An unexpected server error
successbooleanrequiredfalse on every error
errorobjectoptionalWhat went wrong: a stable `code` to branch on and a human-readable `message`
Show 2 child properties
codeenumrequiredAn unexpected server failure
"INTERNAL_SERVER_ERROR"messagestringrequiredHuman-readable explanation. Do not parse it; branch on `code`
metadataobjectoptionalRequest metadata
Show 3 child properties
timestampstringrequiredWhen the server answered, ISO 8601 UTC
versionstringrequiredAPI version
pathstringoptionalThe URL that was requested