Skip to main content
Individual Call Reporting provides a structured record for each call handled by an Althea Voice Agent (inbound, outbound, test, campaign). You can export call records as a CSV for reporting, QA, compliance, and analytics workflows. This page explains:
  • 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
These records are visible in the UI under Call History and can be exported as CSV for external analysis.

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.
The export is designed to support:
  • 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

FieldTypeEnum (all options)Description
call_idstringUnique identifier for the call record (primary key). Example: call-uva-a75a7b1f.
org_idstringOrganization ID (tenant identifier).
org_namestringOrganization display name. Example: Althea Health.
patient_idstringPatient identifier in your tenant (may be internal or external).
patient_namestringPatient display name captured at export time.
patient_dobstring (date)Patient date of birth in YYYY-MM-DD format.
campaign_idstringCampaign identifier when the call is campaign-driven; may also represent an inbound routing or channel identifier depending on your setup.
campaign_namestringCampaign display name. For test calls, may reflect “Test Call”.
workflow_idstringWorkflow identifier used to run the call flow.
workflow_namestringWorkflow display name.
statusstringcompleted, initiated, ringing, in-progress, failed, no_answer, n/aCall status in the reporting layer. (Shown in the Call History UI.)
typestringtest, campaign, singleCall type category. (Matches Call History tabs.)
directionstringinbound, outboundWhether the call was inbound (patient called in) or outbound (agent placed the call).
duration_secondsnumberCall duration in seconds (from call start to end).
created_atstring (datetime)When the call record was created in the system (ISO 8601).
updated_atstring (datetime)When the call record was last updated (ISO 8601).

Summary & transcript fields

FieldTypeEnum (all options)Description
summarystringLong-form call summary (typically 3–5 paragraphs). This corresponds to the extensive call summary concept in the analytics schema.
short_summarystringOne-sentence summary for tables and quick review (15–25 words). This corresponds to the brief call summary concept in the analytics schema.
transcriptstringFull 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

FieldTypeEnum (all options)Description
call_answered_bystringhuman, voicemail, answering_machine, unclearWho/what answered the call, inferred from transcript patterns (interactive conversation vs voicemail greeting vs generic automated response).
call_purposestringpost_discharge_followup, medication_reminder, appointment_reminder, health_check_in, symptom_monitoring, patient_education, satisfaction_survey, care_coordination, test_results_discussion, general_inquiry, complaint_resolution, otherPrimary purpose classification for the call based on content.
call_authenticatedbooleanWhether the caller was successfully authenticated/verified as the patient. Nullable in schema; may appear blank when not applicable or not performed.
call_transferredbooleanWhether the call was transferred/forwarded to a human agent or another destination. Nullable in schema.
call_escalatedbooleanWhether the caller requested escalation to a human agent. Nullable in schema.
urgent_follow_up_requiredbooleanWhether the call suggests urgent follow-up within 24–48 hours (clinical concern, worsening symptoms, critical issue). Nullable in schema.
do_not_call_againbooleanWhether the caller explicitly requests no future contact. Nullable in schema.

Callback and scheduling analytics

FieldTypeEnum (all options)Description
call_back_requestedbooleanWhether the caller asked for a callback (explicitly). Nullable in schema.
preferred_callback_datestring (date)Specific requested callback date in YYYY-MM-DD, if specified. Nullable in schema.
preferred_callback_timestring (time)Specific requested callback time in HH:MM (24-hour), if specified. Nullable in schema.
callback_timeframestringtoday, tomorrow, this_week, next_week, this_month, next_month, in_2_weeks, in_3_weeks, specific_date, unspecifiedGeneralized 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

FieldTypeEnum (all options)Description
sentimentstringvery_positive, positive, neutral, negative, very_negative, mixedOverall emotional sentiment of the caller during the interaction.
caller_satisfactionstringvery_satisfied, satisfied, neutral, dissatisfied, very_dissatisfied, unclearSatisfaction with the interaction/outcome (distinct from sentiment; focuses on service experience).
Why these differ
  • 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_escalated and call_transferred

Clinical / Care teams

  • Use short_summary for fast triage
  • Use summary for deeper review
  • Route calls where urgent_follow_up_required = true to human queues

Analytics / BI

  • Aggregate by campaign_id, workflow_id, and call_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_summary for review, not raw transcripts
  • Always honor do_not_call_again
  • Route urgent_follow_up_required signals to humans promptly
  • Combine CSV exports with campaign-level analytics for context