- What data is captured per call
- How to interpret exported CSV or JSON files
- The meaning of each analytics field
- How teams typically use call reporting data
What Is Individual Call Reporting?
Every inbound, outbound, test, or campaign call produces a call record containing:- Metadata (IDs, timestamps, duration, direction, type)
- Outcomes and analytics extracted from the conversation
- Summaries and transcript content
CSV export format
You can export individual calls or batches of calls as a CSV file.- One row = one call
- One column = one field
- Timestamps are exported in ISO 8601 (UTC, with
Z) unless otherwise noted.
- Operational monitoring
- Clinical review
- Compliance audits
- BI dashboards
- QA and model evaluation
Field reference
The table below documents columns in the individual call CSV export.Legend
- Type is the data type as exported in CSV (string/number/boolean/date/time).
- Enum lists all allowed values (where applicable).
- Fields marked Analytics are derived from the call transcript using the call analytics schema.
Call metadata fields
| Field | Type | Enum (all options) | Description |
|---|---|---|---|
call_id | string | — | Unique identifier for the call record (primary key). Example: call-uva-a75a7b1f. |
org_id | string | — | Organization ID (tenant identifier). |
org_name | string | — | Organization display name. Example: Althea Health. |
patient_id | string | — | Patient identifier in your tenant (may be internal or external). |
patient_name | string | — | Patient display name captured at export time. |
patient_dob | string (date) | — | Patient date of birth in YYYY-MM-DD format. |
campaign_id | string | — | Campaign identifier when the call is campaign-driven; may also represent an inbound routing or channel identifier depending on your setup. |
campaign_name | string | — | Campaign display name. For test calls, may reflect “Test Call”. |
workflow_id | string | — | Workflow identifier used to run the call flow. |
workflow_name | string | — | Workflow display name. |
status | string | completed, initiated, ringing, in-progress, failed, no_answer, n/a | Call status in the reporting layer. (Shown in the Call History UI.) |
type | string | test, campaign, single | Call type category. (Matches Call History tabs.) |
direction | string | inbound, outbound | Whether the call was inbound (patient called in) or outbound (agent placed the call). |
duration_seconds | number | — | Call duration in seconds (from call start to end). |
created_at | string (datetime) | — | When the call record was created in the system (ISO 8601). |
updated_at | string (datetime) | — | When the call record was last updated (ISO 8601). |
Summary & transcript fields
| Field | Type | Enum (all options) | Description |
|---|---|---|---|
summary | string | — | Long-form call summary (typically 3–5 paragraphs). This corresponds to the extensive call summary concept in the analytics schema. |
short_summary | string | — | One-sentence summary for tables and quick review (15–25 words). This corresponds to the brief call summary concept in the analytics schema. |
transcript | string | — | Full transcript for the call, usually including role labels like User: and Agent:. |
Analytics and outcome fields
The following fields are derived analytics signals extracted from the transcript. Types and enums below are defined by your call analytics schema.Routing, safety, and escalation
| Field | Type | Enum (all options) | Description |
|---|---|---|---|
call_answered_by | string | human, voicemail, answering_machine, unclear | Who/what answered the call, inferred from transcript patterns (interactive conversation vs voicemail greeting vs generic automated response). |
call_purpose | string | post_discharge_followup, medication_reminder, appointment_reminder, health_check_in, symptom_monitoring, patient_education, satisfaction_survey, care_coordination, test_results_discussion, general_inquiry, complaint_resolution, other | Primary purpose classification for the call based on content. |
call_authenticated | boolean | — | Whether the caller was successfully authenticated/verified as the patient. Nullable in schema; may appear blank when not applicable or not performed. |
call_transferred | boolean | — | Whether the call was transferred/forwarded to a human agent or another destination. Nullable in schema. |
call_escalated | boolean | — | Whether the caller requested escalation to a human agent. Nullable in schema. |
urgent_follow_up_required | boolean | — | Whether the call suggests urgent follow-up within 24–48 hours (clinical concern, worsening symptoms, critical issue). Nullable in schema. |
do_not_call_again | boolean | — | Whether the caller explicitly requests no future contact. Nullable in schema. |
Callback and scheduling analytics
| Field | Type | Enum (all options) | Description |
|---|---|---|---|
call_back_requested | boolean | — | Whether the caller asked for a callback (explicitly). Nullable in schema. |
preferred_callback_date | string (date) | — | Specific requested callback date in YYYY-MM-DD, if specified. Nullable in schema. |
preferred_callback_time | string (time) | — | Specific requested callback time in HH:MM (24-hour), if specified. Nullable in schema. |
callback_timeframe | string | today, tomorrow, this_week, next_week, this_month, next_month, in_2_weeks, in_3_weeks, specific_date, unspecified | Generalized timeframe when the user requests a callback but doesn’t give a precise date/time. Use specific_date if an exact date was provided; unspecified if callback requested but no timeframe. Nullable in schema. |
Sentiment and satisfaction analytics
| Field | Type | Enum (all options) | Description |
|---|---|---|---|
sentiment | string | very_positive, positive, neutral, negative, very_negative, mixed | Overall emotional sentiment of the caller during the interaction. |
caller_satisfaction | string | very_satisfied, satisfied, neutral, dissatisfied, very_dissatisfied, unclear | Satisfaction with the interaction/outcome (distinct from sentiment; focuses on service experience). |
- Sentiment reflects emotion
- Satisfaction reflects service perception
Notes on blanks / nulls in CSV
Some analytics fields are nullable in the schema and may export as blank values in CSV. Common reasons:- The topic was not discussed (e.g., no callback requested)
- The feature was not enabled (e.g., authentication off)
- The transcript did not contain enough signal to extract confidently
How teams use call reporting
Ops / QA
- Filter by
status,type,direction - Track answer outcomes with
call_answered_by - Spot escalation rate using
call_escalatedandcall_transferred
Clinical / Care teams
- Use
short_summaryfor fast triage - Use
summaryfor deeper review - Route calls where
urgent_follow_up_required = trueto human queues
Analytics / BI
- Aggregate by
campaign_id,workflow_id, andcall_purpose - Trend sentiment/satisfaction over time and by workflow
- Measure callback demand and preferred timeframes
Best Practices
- Treat call analytics as decision-support, not clinical judgment
- Use
extensive_call_summaryfor review, not raw transcripts - Always honor
do_not_call_again - Route
urgent_follow_up_requiredsignals to humans promptly - Combine CSV exports with campaign-level analytics for context