Skip to main content

List All Calls

Retrieves calls for your organization with pagination and filtering options. Query Parameters: Example Request:
Example Response:

Get a Specific Call

Retrieves a specific call by ID. Query Parameters: Example Request:

Get Most Recent Call

To retrieve only the most recent call matching your filters, use the most_recent=true parameter. This returns a single call object instead of an array. Example Request:
Example Response:

Payload Modes

The API supports two payload modes to optimize response size based on your needs.

Light Payload (Default)

Returns essential call information suitable for listings and summaries. Fields included:
  • id - Unique call identifier
  • agent_id - Agent that handled the call
  • agent_name - Agent display name
  • contact_id - Associated contact ID (if linked)
  • contact_first_name - Contact first name
  • contact_last_name - Contact last name
  • contact_email - Contact email
  • phone_number - Customer phone number
  • phone_number_called_from - Originating phone number
  • call_type - inbound or outbound
  • status - Call status
  • call_success - Whether the call was successful
  • went_to_voicemail - Whether call went to voicemail
  • call_duration - Duration in seconds
  • started_at - Call start timestamp
  • ended_at - Call end timestamp
  • ended_reason - Reason the call ended
  • recording_url - URL to call recording (if available)
  • campaign_id - Associated campaign ID
  • campaign_name - Campaign name
  • created_at - Record creation timestamp

Full Payload

Returns all light fields plus detailed analysis and transcript data. Use fields=full to enable. Additional fields:
  • transcript - Raw transcript text
  • transcript_formatted - Structured transcript with speaker labels and timestamps
  • post_call_analysis - AI-generated call analysis
  • call_description - Summary description of the call
  • custom_analysis - Custom analysis results
  • structured_data_results - Extracted structured data from the call
  • notes - Array of notes added to the call
  • action_executions - Actions triggered by the call
  • action_summary - Summary of executed actions
  • quality_metrics - Call quality measurements
  • enhanced_context - Additional contextual information

Include Options

Instead of using fields=full which returns everything, you can selectively include specific field groups using the include parameter. This allows you to get the light payload plus only the additional data you need. Use comma-separated values to include multiple groups: include=transcript,metrics

Include Examples

Get light payload with just the transcript:
Get light payload with transcript and performance metrics:
Get a specific call with all diagnostic data:
The include parameter works with both fields=light (default) and fields=full. When used with fields=full, any duplicate fields are automatically handled.

Filtering Examples

Filter by Contact

Get all calls for a specific contact:

Filter by Phone Number

Get all calls to/from a specific phone number:
Phone numbers should be URL-encoded when using cURL. The + character becomes %2B. Python’s requests library handles this automatically.

Filter by Date Range

Get calls from a specific time period:

Filter by Agent and Status

Get completed calls for a specific agent:

Filter by Campaign

Get all calls from a specific campaign:

Combine Multiple Filters

Get recent inbound calls for a contact with full details:

Pagination

For large result sets, use limit and offset to paginate through results. Example - Page 2 with 25 results per page:
The response includes pagination metadata:
Use has_more to determine if additional pages exist.

Common Error Responses