GET /calls requires calls:read, from and to ISO timestamps with offsets, and
an increasing interval of at most 366 days. The start is inclusive and the end is
exclusive. Optional filters are listId, ownerId, after and limit.
GET /calls/{id} uses the call SID, not the numeric row ID from collection
data. A call outside your credential’s scope returns the same 404 as a missing
call. Responses include owner, direction, call status, disposition, talk time,
original list attribution, and permitted evidence.
Delayed or restricted evidence
Recording and transcript states arerestricted without recordings:read and
transcripts:read, respectively. With permission, each is available or
unavailable. Authorized recording reads include url; transcript reads include
segments:[{speaker,text}].
Unavailable can mean delayed, uncaptured or removed evidence. Re-fetch the call
after recording.available, transcript.available or a later call update event.
A stored recording reference does not prove that a provider-hosted URL is publicly
playable. Never send provider credentials to a browser.
A collection cursor discovers increasing row IDs; it does not discover every
later disposition or transcript. Use changes and webhooks to
re-fetch updated resources. Historical rows without established workspace
attribution remain excluded until a reviewed backfill.
List attribution
The call response’slistId follows the original session, not the contact’s current
list membership. Calls without a retained session/list link can have null list
attribution. Moving a contact does not rewrite its prior calls’ list attribution.
Compare lists or owners
GET /analytics/summary requires analytics:read and accepts:
startDateandendDate: inclusive calendar days, up to 366 days.timezone: IANA timezone, defaultUTC.- Optional
listIdandownerId. groupBy:list(default),ownerornone.conversationThresholdSeconds: 1–3,600, default 120.
range, threshold and groups.
Each group reports calls, connected, conversations, talkTimeSeconds,
connectRate, conversationRate and verifiedConversions:null.
Connects count accepted calls with positive local/provider talk time, or a
non-voicemail call with positive provider talk time. Conversations use those
conditions at or above the threshold. Rates divide by all calls in the group;
these are call rates, not unique-contact conversion rates.
Join bookings, payments or sales from their authoritative system to calculate
verified business conversion. A positive disposition alone is not proof of a sale.