Skip to main content

Overview

Our platform uses a series of events to convey real-time updates about call statuses, transcripts, variable resolution, tool usage, and more. Each event has a consistent JSON structure and includes:
  • A type field, e.g., event_call_status_updated
  • A timestamp (Unix time)
  • A unique call_id to identify the call
  • Event-specific attributes
Below is a breakdown of each event type, detailing its attributes and when it’s fired. Click an event name to jump directly to its details.

Event List

  1. event_call_status_updated
  2. event_call_answer_type_updated
  3. event_transcript
  4. event_tool
  5. event_task_transition
  6. event_variable_value_updated
  7. event_all_variables_resolved
  8. event_recording_status_updated
  9. event_post_call

A. event_call_status_updated

Description Emitted whenever a call’s status changes, from initial reception/dialing up to completion or redirection. Attributes Final Call Status Details The following statuses indicate the final state of a call:
  • completed: Call was answered and ended normally.
  • redirection_completed: Call was redirected to another number and completed successfully.
  • busy: Destination returned a busy signal.
  • no_answer: Call rang, but no one answered (or the call was declined) before timeout.
  • failed: Call could not be routed (invalid number, unreachable, or network error).
  • canceled: Call was canceled while still queued or ringing.

B. event_call_answer_type_updated

Description Emitted when the system (e.g. via Twilio’s Answering Machine Detection) identifies what answered an outbound call (human, machine, voicemail, etc.). Used to drive call-handling logic and analytics. Attributes

C. event_transcript

Description Captures real-time transcripts of spoken audio or messages during an active call or session. It can fire multiple times as the conversation progresses, allowing continuous tracking of the dialogue. Attributes

D. event_tool

Description Emitted whenever a tool is called within a session. This includes actions like API calls, database queries, or any action performed by an integrated tool during the call/session. Attributes

E. event_task_transition

Description Fired whenever the system transitions from one “task” (or conversational state) to another, including references to the models used and how long the previous task lasted. Attributes

F. event_variable_value_updated

Description Emitted whenever a variable’s value is updated during a call/session. This enables tracking changes in real-time to important metrics or states. Attributes

G. event_all_variables_resolved

Description Indicates that all call/session variables (e.g., extracted data) have been finalized or saved. Typically fired when the system finishes collecting or confirming needed information. Attributes

H. event_recording_status_updated

Description Emitted when the status of a call recording changes, such as when recording is completed or fails. This event provides information about the recording’s availability and a presigned URL to access it when available. Attributes

I. event_post_call

Description Emitted after a call is completed and post-processing is complete, providing comprehensive call data and details. This event contains the complete information about the call, including all of its metadata, transcripts, variable values, and other relevant information. Attributes

Additional Notes

  • Optional Fields: If a field is not relevant or was not captured in a particular scenario (e.g., redirect_duration when no redirect occurred), it may be omitted from the payload.

Getting Started with Webhooks

  1. Set up your webhook endpoint in your agent’s dashboard.
  2. Receive and parse events from our platform using the details above.
  3. Respond with a 2xx status code to confirm receipt.
If you have any questions or need help integrating these events into your workflow, feel free to reach out to our support team for additional guidance.