Skip to main content
DocsWebhooksPayload Examples

Payload Examples

Here are example payloads for all event types. The data field varies by event type.

ticket.created

{
  "id": "wh_a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "event": "ticket.created",
  "timestamp": "2026-02-22T14:30:00.000Z",
  "data": {
    "ticketId": 42,
    "ticketNumber": "TKT-001234",
    "customerName": "Jane Smith",
    "customerEmail": "[email protected]",
    "customerPhone": "+1234567890",
    "issue": "Unable to access my account after password reset",
    "priority": "medium",
    "source": "call"
  }
}

appointment.booked

{
  "id": "wh_b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "event": "appointment.booked",
  "timestamp": "2026-02-22T15:00:00.000Z",
  "data": {
    "appointmentId": 78,
    "appointmentNumber": "APT-005678",
    "date": "2026-03-01",
    "time": "10:00 AM",
    "duration": 30,
    "customerName": "John Doe",
    "customerEmail": "[email protected]",
    "customerPhone": "+1987654321"
  }
}

call.completed

{
  "id": "wh_c3d4e5f6-a7b8-9012-cdef-123456789012",
  "event": "call.completed",
  "timestamp": "2026-02-22T16:00:00.000Z",
  "data": {
    "callId": 156,
    "callerPhone": "+1555123456",
    "duration_seconds": 245,
    "transcript": "ASSISTANT: Thank you for calling...\nUSER: Hi, I need help with...",
    "hangup_cause": "normal_clearing"
  }
}

call.analyzed

{
  "id": "wh_d4e5f6a7-b8c9-0123-defa-234567890123",
  "event": "call.analyzed",
  "timestamp": "2026-02-22T16:05:00.000Z",
  "data": {
    "callId": 156,
    "sentiment": "positive",
    "score": 85,
    "intent": "support_request",
    "outcome": "resolved",
    "topics": ["billing", "account_access"],
    "summary": "Customer called about a billing discrepancy..."
  }
}

maintenance_request.created

{
  "id": "wh_e5f6a7b8-c9d0-1234-efab-345678901234",
  "event": "maintenance_request.created",
  "timestamp": "2026-02-22T17:00:00.000Z",
  "data": {
    "requestId": 23,
    "tenantName": "Sarah Johnson",
    "unit": "Apt 4B",
    "issue": "Kitchen faucet is leaking",
    "priority": "normal",
    "permissionToEnter": true
  }
}

chat.completed

{
  "id": "wh_f6a7b8c9-d0e1-2345-fabc-456789012345",
  "event": "chat.completed",
  "timestamp": "2026-03-01T09:15:00.000Z",
  "data": {
    "conversationId": "conv_abc123",
    "duration_seconds": 180,
    "message_count": 12,
    "total_cost": 0.03,
    "transcript": "USER: Hi, I need help with my order\nASSISTANT: Of course! Can you provide your order number?\n..."
  }
}

call.transferred

{
  "id": "wh_a7b8c9d0-e1f2-3456-abcd-567890123456",
  "event": "call.transferred",
  "timestamp": "2026-03-01T10:30:00.000Z",
  "data": {
    "callId": 203,
    "callerPhone": "+15559876543",
    "reason": "Customer requested to speak with a manager about a billing dispute",
    "transcript": "ASSISTANT: I understand your concern...\nUSER: I'd like to speak with a manager please..."
  }
}

call.recording_available

{
  "id": "wh_b8c9d0e1-f2a3-4567-bcde-678901234567",
  "event": "call.recording_available",
  "timestamp": "2026-03-01T11:00:00.000Z",
  "data": {
    "callId": 156,
    "recording_url": "https://storage.staffifyai.com/recordings/rec_abc123.mp3",
    "duration_seconds": 245
  }
}

contact.collected

{
  "id": "wh_c9d0e1f2-a3b4-5678-cdef-789012345678",
  "event": "contact.collected",
  "timestamp": "2026-03-01T12:00:00.000Z",
  "data": {
    "name": "Emily Davis",
    "email": "[email protected]",
    "phone": "+15551112222",
    "source": "widget"
  }
}

ticket.note_added

{
  "id": "wh_d0e1f2a3-b4c5-6789-defa-890123456789",
  "event": "ticket.note_added",
  "timestamp": "2026-03-01T13:00:00.000Z",
  "data": {
    "ticketId": 42,
    "ticketNumber": "TKT-001234",
    "note": "Customer confirmed the issue started after the latest software update",
    "escalated": false
  }
}

ticket.resolved

{
  "id": "wh_e1f2a3b4-c5d6-7890-efab-901234567890",
  "event": "ticket.resolved",
  "timestamp": "2026-03-01T14:00:00.000Z",
  "data": {
    "ticketId": 42,
    "ticketNumber": "TKT-001234",
    "resolution_summary": "Guided customer through cache clearing which resolved the dashboard export timeout issue"
  }
}

ticket.status_changed

{
  "id": "wh_f2a3b4c5-d6e7-8901-fabc-012345678901",
  "event": "ticket.status_changed",
  "timestamp": "2026-03-01T14:30:00.000Z",
  "data": {
    "ticketId": 42,
    "ticketNumber": "TKT-001234",
    "old_status": "open",
    "new_status": "in_progress"
  }
}

appointment.cancelled

{
  "id": "wh_a3b4c5d6-e7f8-9012-abcd-123456789012",
  "event": "appointment.cancelled",
  "timestamp": "2026-03-01T15:00:00.000Z",
  "data": {
    "appointmentNumber": "APT-005678",
    "cancellation_reason": "Customer has a scheduling conflict and will rebook next week"
  }
}

appointment.rescheduled

{
  "id": "wh_b4c5d6e7-f8a9-0123-bcde-234567890123",
  "event": "appointment.rescheduled",
  "timestamp": "2026-03-01T15:30:00.000Z",
  "data": {
    "appointmentId": 78,
    "appointmentNumber": "APT-005678",
    "old_date": "2026-03-05",
    "new_date": "2026-03-12",
    "new_time": "2:00 PM"
  }
}

maintenance_request.updated

{
  "id": "wh_c5d6e7f8-a9b0-1234-cdef-345678901234",
  "event": "maintenance_request.updated",
  "timestamp": "2026-03-01T16:00:00.000Z",
  "data": {
    "requestId": 23,
    "note": "Plumber dispatched, scheduled for tomorrow morning",
    "new_status": "in_progress"
  }
}

emergency.escalated

{
  "id": "wh_d6e7f8a9-b0c1-2345-defa-456789012345",
  "event": "emergency.escalated",
  "timestamp": "2026-03-01T17:00:00.000Z",
  "data": {
    "emergency_type": "water_leak",
    "unit_number": "Apt 4B",
    "description": "Major water leak from ceiling in bedroom, water actively dripping"
  }
}

tenant.identified

{
  "id": "wh_e7f8a9b0-c1d2-3456-efab-567890123456",
  "event": "tenant.identified",
  "timestamp": "2026-03-01T18:00:00.000Z",
  "data": {
    "tenant_name": "Sarah Johnson",
    "unit_number": "Apt 4B",
    "phone": "+15551234567"
  }
}

test.ping

Sent when you click the "Test" button in the dashboard. Use it to verify your endpoint is reachable.

{
  "id": "wh_f8a9b0c1-d2e3-4567-fabc-678901234567",
  "event": "test.ping",
  "timestamp": "2026-03-01T19:00:00.000Z",
  "data": {
    "message": "Webhook test from Staffify dashboard"
  }
}
Webhook Payload Examples