.csv files. This guide details the content of each one and how to correctly interpret the results.
Contact Export
This CSV file contains all contacts added to the campaign along with their current status and associated metrics.File Columns
Basic Columns:campaign_name: Campaign name.campaign_date: Campaign creation date (format: YYYY-MM-DD).id: Unique contact identifier from the import file (if provided).contact: Phone number in E.164 format.name: Contact name.context: Context or additional contact information.status: Current contact status in the campaign (see status section).retries: Number of retries performed.calls: Total number of calls made to the contact (call campaigns only).billed_duration: Total billable duration in readable format (call campaigns only).last_update: Date and time of last status update.follow_up: Indicates if the contact has a scheduled follow-up (True/False).
- Tags: One column per tag configured in the agent. The value will be
Trueif the contact has that tag,Falseotherwise. - Extractable Fields: One column per data field configured for extraction in the agent (e.g., “email”, “interest”, “rating”).
Campaign Contact Statuses
Contacts can have different statuses depending on the campaign channel.Common Statuses (Both Channels)
Call-Specific Statuses
WhatsApp-Specific Statuses
Conditional: These statuses can change to
queue or retrying if the
system determines there are available retries according to the campaign
configuration.Understanding Retries
retries: Retry counter specific to calls that reach voicemail. The limit is configured in the campaign.failed_retries(not visible in CSV): Internal system that retries contacts withfailedstatus. Limit defined in system configuration (typically 1).
- If a contact reaches
voicemailandretries < campaign_limit, the status will change toretryingand the contact will be attempted again. - If a contact has
failed, and has not exceeded the system retry limit, it will return toqueue. - When limits are exceeded, the status remains as final.
Call Export
This CSV file contains each individual call made during the campaign, allowing detailed analysis of each interaction.File Columns
Basic Columns:campaign_name: Campaign name.campaign_date: Campaign creation date.id: Unique call ID.number_to: Destination phone number (E.164).contact_name: Contact name.type: Call type (inbound/outbound).status: Final call status (see status section).answered_by: Who answered the call (see next section).created_at: Call creation date and time.started_at: Call start date and time (when answered).ended_at: Call end date and time.ended_by: Who ended the call (agent,userorsystem). Empty if the call never connected.ended_reason: Brief reason why the call ended. Empty if not available.duration: Total duration in readable format (MM:SS).billed_duration: Billable duration in readable format (MM:SS).recording_url: URL to download the call recording.
- Tags: One column per tag configured in the agent.
- Extractable Fields: Data extracted during the conversation.
Call Statuses
Individual calls can have the following statuses (status):
Response Types (answered_by)
This field is critical to understand who answered the call:
Important note on billing:
- Calls answered by answering machines (
machine) have a reduced rate. - The billable duration (
billed_duration) automatically applies the limit to voicemail calls. - Only calls with
answered_by: humanare included in the recording export.
Difference between Duration and Billed Duration
duration: Total time from when the call was answered until it ended.billed_duration: Time billed as consumption:- For
human: equal toduration. - For
machine:durationlimited to 5 seconds.
- For
Results Export
This CSV file is a filtered version of the contact export that includes only contacts with extracted data.Differences from Contact Export
- Includes: Only contacts with extracted data.
- Purpose: Analysis of conversions and positive campaign results.
- Columns: Identical to the contact export.
Use Cases
This export is useful for:- Analyzing qualified leads that completed the conversation flow.
- Obtaining structured information collected during conversations (emails, dates, preferences, etc.).
- Calculating effective conversion rates.
- Integrating with CRMs or other downstream systems.
Campaign Statuses
Cycle Interpretation in Results
When a campaign has cycles enabled:- Contacts that do not reach a “successful final status” will be retried.
- The
retriesfield resets on each cycle. - Statuses within the filter for cycles will not return to queue in the next cycle.
Best Practices for Analysis
- To measure reach: Use Contact export and count statuses:
- For Calls:
answeredconverted
- For WhatsApp:
deliveredacceptedreadconverted
- For Calls:
- To measure conversion: Use Contact export and filter/count contacts in
convertedstatus or use Results and analyze extracted fields. - For cost auditing: Use Call export and sum
billed_durationbyanswered_by.