Skip to content

Webhook Event Types

This page documents all webhook events available in Voxifi.

Call Events

call.started

Fired when a call begins.

json
{
  "event_type": "call.started",
  "event_id": "evt_abc123",
  "timestamp": "2024-01-15T10:30:00Z",
  "organization_id": "org_xyz",
  "data": {
    "call_id": "call_abc123",
    "assistant_id": "asst_xyz789",
    "customer_number": "+15551234567",
    "start_time": "2024-01-15T10:30:00Z"
  }
}

call.ended

Fired when a call ends. Contains basic completion info. For full details including transcript and cost, subscribe to call.completed.

json
{
  "event_type": "call.ended",
  "event_id": "evt_abc124",
  "timestamp": "2024-01-15T10:35:00Z",
  "organization_id": "org_xyz",
  "data": {
    "call_id": "call_abc123",
    "end_time": "2024-01-15T10:35:00Z",
    "duration_seconds": 305
  }
}

call.completed

Fired when a call ends with full details available — transcript, cost, and sentiment analysis.

json
{
  "event_type": "call.completed",
  "event_id": "evt_abc125",
  "timestamp": "2024-01-15T10:35:00Z",
  "organization_id": "org_xyz",
  "data": {
    "call_id": "call_abc123",
    "assistant_id": "asst_xyz789",
    "customer_number": "+15551234567",
    "start_time": "2024-01-15T10:30:00Z",
    "end_time": "2024-01-15T10:35:00Z",
    "duration_seconds": 305,
    "transcript": "...",
    "cost": 0.85,
    "currency": "USD",
    "status": "completed",
    "sentiment": "positive"
  }
}

call.failed

Fired when a call fails to connect.

json
{
  "event_type": "call.failed",
  "event_id": "evt_abc126",
  "timestamp": "2024-01-15T10:30:05Z",
  "organization_id": "org_xyz",
  "data": {
    "call_id": "call_abc123",
    "failure_reason": "Call was not answered",
    "error_code": "no_answer"
  }
}

Common Payload Fields

All events include:

FieldTypeDescription
event_typestringEvent type identifier
event_idstringUnique event ID for idempotency
timestampstringISO 8601 timestamp
organization_idstringYour organization ID
dataobjectEvent-specific payload

Request Headers

Each delivery also includes these headers:

HeaderDescription
X-Webhook-SignatureHMAC-SHA256 signature (sha256=<hex>)
X-Webhook-TimestampUnix timestamp (seconds)
X-Webhook-Event-TypeEvent type (e.g., call.completed)
X-Webhook-Event-IdUnique event identifier
X-Webhook-Delivery-IdUnique delivery identifier
X-Webhook-AttemptAttempt number (1-indexed)

Event Filtering

Subscribe to only the events you need:

call.completed  - Most useful; includes full transcript and cost
call.failed     - For error monitoring and retry logic
call.started    - High volume; use only when you need real-time start notification
call.ended      - Lightweight end signal without full details

Next Steps

Voxifi - AI-Powered Voice Assistant Platform