List calls
GET/calls
Returns calls in this workspace, sorted by sort_by (default started_at desc). Use the date, status, direction, disposition, and duration filters to narrow results. Responses always include the full public call resource, including transcript and analysis fields when available.
Requires
Authorization: Bearer <api_key>. Create a key in the Inspra dashboard under Workspace Settings → API Keys.Query parameters
- pageinteger≥ 1optional1-based page index. Defaults to 1.Default
1 - page_sizeinteger1–100optionalItems per page. Defaults to 20. Hard-capped at 100 by the server.Default
20 - statusstringoptionalFilter by
call_status. Known DB values:initiated,ringing,in_progress,completed,failed,no_answer,busy,canceled. Provider-emitted statuses outside this set are possible and pass through unchanged. - directionstringoptionalComma-separated list of directions to include. Allowed:
inbound,outbound,web. Omit (or include all three) to return every direction. - agent_idstringoptionalUUID of an agent — restrict results to calls handled by this agent.
- searchstringoptionalCase-insensitive substring match across
from,to,agent_name, andsummary. - start_datestringdate-timeoptionalISO 8601 date or datetime — only include calls with
started_aton or after this value. Treated as UTC when no offset is supplied. Inclusive lower bound. - end_datestringdate-timeoptionalISO 8601 date or datetime — only include calls with
started_aton or before this value. Treated as UTC when no offset is supplied. Inclusive upper bound. - min_durationinteger≥ 0optionalMinimum talk-time in **seconds** (inclusive). Use to exclude very short calls.
- max_durationinteger≥ 0optionalMaximum talk-time in **seconds** (inclusive).
- dispositionstringoptionalComma-separated list of dispositions to include. Known values:
appointmentBooked,callbackIntent,callBack,doNotCallAgain,interested,noAnswer,noSpeech,notInterested,transferDone,voiceMail,IVR. - sort_bystringoptionalColumn to sort by. Defaults to
started_at.Default"started_at"started_atdurationagent_call_typeagent_nametofromcall_iddisposition - sort_orderstringoptionalSort direction. Defaults to
desc(newest first when sorting by date).Default"desc"ascdesc
Response 200 OK
Paginated call list.
- dataobject[]required
24 fields
- idstringoptionalStable UUID of the call within this workspace.
- call_idstringnullableoptionalProvider-side call identifier. Use to correlate with provider logs.
- workspace_idstringoptionalUUID of the owning workspace.
- agent_idstringnullableoptionalUUID of the agent that handled the call.
- agent_namestringnullableoptionalSnapshot of the agent's name at call time (denormalised; may differ from the agent's current name).
- agent_call_typestringnullableoptionalDirection of the call from the agent's perspective. One of
inbound,outbound,web. - call_statusstringnullableoptionalLifecycle state. DB enum values:
initiated,ringing,in_progress,completed,failed,no_answer,busy,canceled. Providers may surface additional intermediate states. - dispositionstringnullableoptionalBusiness outcome label set by the post-call analysis pipeline. Known values:
appointmentBooked,callbackIntent,callBack,doNotCallAgain,interested,noAnswer,noSpeech,notInterested,transferDone,voiceMail,IVR. Set may grow as new analysers ship. - disposition_statusstringnullableoptionalSub-status for the disposition (provider-specific free-form string).
- fromstringnullableoptionalE.164 caller phone number (inbound origin or outbound caller ID).
- tostringnullableoptionalE.164 destination phone number.
- durationnumbernullableoptionalTalk-time duration in **seconds** (from call connect to hang-up). Null while in progress.
- started_atstringnullableoptionalISO 8601 UTC timestamp when the call connected.
- ended_atstringnullableoptionalISO 8601 UTC timestamp when the call ended. Null while in progress.
- created_atstringnullableoptionalISO 8601 UTC timestamp when the call record was created (may precede
started_atfor queued outbound). - summarystringnullableoptionalAuto-generated one-paragraph summary from the post-call analysis pipeline.
- sentimentsanyoptionalProvider-specific sentiment analysis payload. Shape varies; treat as free-form JSON.
- has_prompt_analysisbooleannullableoptionalTrue when post-call structured analysis (criteria/structured_output) ran for this call.
- transcriptobject[]nullableoptionalFull conversation transcript as a JSON array of speaker-turn objects. Present when available on list and single-call responses.
7 fields
- rolestringnullableoptionalSpeaker role, usually
assistant/agentoruser/customer. - textstringnullableoptionalSpoken text for providers that use
text. - contentanyoptionalSpoken text for providers that use
content; may be a string or provider-specific JSON. - messagestringnullableoptionalSpoken text for providers that use
message. - timenumbernullableoptionalOptional provider timestamp or offset for the utterance.
- startnumbernullableoptionalOptional provider timestamp for the start of the utterance.
- endnumbernullableoptionalOptional provider timestamp for the end of the utterance.
- transcript_with_tool_callsanyoptionalTranscript enriched with tool invocations. Present when available.
- variablesanyoptionalThe
variablesmap originally sent on place-call (echoed back). Present when available. - call_analysisanyoptionalStructured analysis output (criteria results, extracted fields). Present when available.
- recording_urlstringnullableoptionalShort-lived URL to the call recording when present.
- ended_reasonstringnullableoptionalProvider-reported reason the call ended (e.g.
customer-ended-call,silence-timed-out).
- paginationobjectrequiredEchoed pagination block on every list response.
pageandpage_sizematch the request (or the defaults if omitted);totalis the count of matching rows across all pages.3 fields
- pageinteger≥ 1required1-based page index of this response.
- page_sizeinteger≥ 1requiredNumber of items per page (request cap is 100).
- totalinteger≥ 0requiredTotal matching items across all pages.
Errors
- 400Bad RequestValidation failed / malformed request.
- 401UnauthorizedMissing, malformed, or invalid API key.
- 403ForbiddenWorkspace unavailable, suspended, or paywalled.
- 429Too Many RequestsWorkspace request limit exceeded; shared across all its API keys.