The logs API returns the same records as the portal's log pages: every IVR call with its keys pressed, variables, answers and price; every HTTP request a flow or status callback made, with a retry for failed background requests; and every email notification. Lists are paginated with page and per_page, and can be filtered by flow and status.
Call logs#
| Method | Path | Notes |
|---|---|---|
| GET | /v1/ivr/call-logs |
Query: flow_id, status, source, reference_id, page, per_page (default 20) |
| GET | /v1/ivr/call-logs/{id} |
One call, including answers |
| GET | /v1/ivr/calls/{call_sid} |
One call by call SID, including http_requests |
source is where the call came from: inbound, api, test, or an order automation.
Main fields:
| Field | Notes |
|---|---|
id, flow_id, flow_name, flow_version |
Which flow and version ran |
caller_number, called_number |
The two numbers |
status, hangup_cause, sip_status, call_outcome |
How the call ended. See status callback |
dtmf_path |
Keys pressed, in order |
duration_sec, price, price_unit |
Duration and cost |
started_at, answered_at, ended_at |
Timestamps |
source, reference_id, variables |
API context |
recording_url, call_recording_url, voicemail_url |
Signed links, when present |
answers |
Spoken answers from Ask nodes (single-call endpoint) |
HTTP logs#
| Method | Path | Notes |
|---|---|---|
| GET | /v1/ivr/http-logs |
Query: flow_id, call_sid, status, kind, page, per_page |
| GET | /v1/ivr/http-logs/{id} |
One request with headers (secrets masked), body, response and attempts |
| POST | /v1/ivr/http-logs/{id}/retry |
Retry a failed background request. Returns 409 not_retryable otherwise |
| Filter | Values |
|---|---|
status |
pending (another attempt is due), delivered, failed, skipped |
kind |
node (HTTP Request node), status_callback, test, order_action, outcome_action, order_action_test |
Email logs#
GET/v1/ivr/email-logs?flow_id=&status=&page=&per_page= (default 25 per page)
| Field | Notes |
|---|---|
call_sid, flow_id, flow_name |
Which call and flow |
recipient, subject |
Where it went |
status |
sent (accepted by the email provider), failed, suppressed (skipped by a burst guard), no_recipient |
error |
Why it failed, when it did |
created_at |
When |
Stats#
GET/v1/ivr/stats returns total_flows, published_flows, active_numbers, total_calls, total_minutes, total_cost, completed_calls and failed_calls.
See also the portal views: Call Logs, HTTP Logs and Email Logs.