Skip to main content

Webhook Events

Complete reference for all webhook event types and their payloads.

Lead Events

lead.created

Triggered when a new lead is captured by a chatbot.

{
"id": "evt_abc123",
"type": "lead.created",
"created_at": "2024-01-15T10:30:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "lead_def456",
"chatbot_id": "chatbot_abc123",
"conversation_id": "conv_ghi789",
"contact": {
"name": "Sarah Johnson",
"email": "sarah@acme.com",
"phone": "+1-555-0123",
"company": "Acme Corp"
},
"qualification": {
"score": 85,
"qualified": true,
"recommendation": "High-priority lead",
"budget": "50,000-100,000 EUR",
"authority": "Decision maker",
"need": "Customer support automation",
"timeline": "Q1 2025"
},
"status": "new",
"created_at": "2024-01-15T10:30:00Z"
}
}

lead.qualified

Triggered when a lead's qualification status changes to qualified.

{
"id": "evt_abc124",
"type": "lead.qualified",
"created_at": "2024-01-15T11:00:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "lead_def456",
"chatbot_id": "chatbot_abc123",
"qualification": {
"score": 90,
"qualified": true,
"previous_score": 70
},
"status": "qualified",
"updated_at": "2024-01-15T11:00:00Z"
}
}

lead.updated

Triggered when any lead field is updated.

{
"id": "evt_abc125",
"type": "lead.updated",
"created_at": "2024-01-15T12:00:00Z",
"organization_id": "org_xyz789",
"data": {
"id": "lead_def456",
"status": "contacted",
"notes": "Scheduled follow-up call",
"updated_at": "2024-01-15T12:00:00Z"
}
}

lead.converted

Triggered when a lead is marked as converted.

lead.score_changed

Triggered when a lead's qualification score changes.


Conversation Events

conversation.started

Triggered when a new conversation begins.

{
"id": "evt_conv001",
"type": "conversation.started",
"created_at": "2024-01-15T09:00:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "conv_ghi789",
"chatbot_id": "chatbot_abc123",
"visitor_id": "visitor_jkl012",
"status": "active",
"created_at": "2024-01-15T09:00:00Z"
}
}

conversation.ended

Triggered when a conversation ends.

{
"id": "evt_conv002",
"type": "conversation.ended",
"created_at": "2024-01-15T09:30:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "conv_ghi789",
"chatbot_id": "chatbot_abc123",
"status": "ended",
"message_count": 12,
"created_at": "2024-01-15T09:00:00Z",
"ended_at": "2024-01-15T09:30:00Z"
}
}

conversation.message_received

Triggered when a new message is received from a visitor.

{
"id": "evt_msg001",
"type": "conversation.message_received",
"created_at": "2024-01-15T09:15:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"conversation_id": "conv_ghi789",
"message": {
"id": "msg_mno345",
"role": "user",
"content": "I need help with pricing",
"created_at": "2024-01-15T09:15:00Z"
}
}
}

conversation.sentiment_negative

Triggered when negative sentiment is detected.

conversation.sentiment_positive

Triggered when positive sentiment is detected.


Ticket Events

ticket.created

Triggered when a support ticket is created.

{
"id": "evt_tkt001",
"type": "ticket.created",
"created_at": "2024-01-15T14:22:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "ticket_pqr678",
"chatbot_id": "chatbot_abc123",
"conversation_id": "conv_stu901",
"title": "Cannot access account",
"description": "Customer cannot log in after password reset",
"category": "account_access",
"priority": "high",
"status": "open",
"customer": {
"name": "Michael Chen",
"email": "michael@example.com"
},
"created_at": "2024-01-15T14:22:00Z"
}
}

ticket.updated

Triggered when a ticket is updated.

{
"id": "evt_tkt002",
"type": "ticket.updated",
"created_at": "2024-01-15T15:00:00Z",
"organization_id": "org_xyz789",
"data": {
"id": "ticket_pqr678",
"status": "in_progress",
"assigned_to": "support@leezy.ai",
"updated_at": "2024-01-15T15:00:00Z"
}
}

ticket.resolved

Triggered when a ticket is resolved.

{
"id": "evt_tkt003",
"type": "ticket.resolved",
"created_at": "2024-01-15T16:30:00Z",
"organization_id": "org_xyz789",
"data": {
"id": "ticket_pqr678",
"status": "resolved",
"resolution_notes": "Password reset link resent successfully",
"resolved_at": "2024-01-15T16:30:00Z"
}
}

Meeting Events

meeting.scheduled

Triggered when a meeting is scheduled.

{
"id": "evt_mtg001",
"type": "meeting.scheduled",
"created_at": "2024-01-15T10:45:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"id": "meeting_vwx234",
"chatbot_id": "chatbot_abc123",
"conversation_id": "conv_yza567",
"title": "Product Demo",
"description": "Enterprise features demonstration",
"start_time": "2024-01-20T15:00:00Z",
"end_time": "2024-01-20T15:30:00Z",
"timezone": "Europe/Berlin",
"attendee": {
"name": "Lisa Thompson",
"email": "lisa@acme.com",
"phone": "+1-555-0199"
},
"status": "scheduled",
"meeting_url": "https://meet.google.com/abc-defg-hij",
"meeting_provider": "google_meet",
"created_at": "2024-01-15T10:45:00Z"
}
}

meeting.cancelled

Triggered when a meeting is cancelled.

{
"id": "evt_mtg002",
"type": "meeting.cancelled",
"created_at": "2024-01-18T09:00:00Z",
"organization_id": "org_xyz789",
"data": {
"id": "meeting_vwx234",
"status": "cancelled",
"cancelled_at": "2024-01-18T09:00:00Z",
"cancelled_reason": "Scheduling conflict"
}
}

meeting.completed

Triggered when a meeting is marked as completed.

meeting.reminder

Triggered when a meeting reminder is sent (24 hours before).


Message Events

message.feedback_negative

Triggered when a user provides negative feedback on a message.

{
"id": "evt_fb001",
"type": "message.feedback_negative",
"created_at": "2024-01-15T10:35:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"message_id": "msg_bcd890",
"conversation_id": "conv_ghi789",
"feedback_type": "thumbs_down",
"created_at": "2024-01-15T10:35:00Z"
}
}

message.feedback_positive

Triggered when a user provides positive feedback on a message.


Agent Events

agent.tool_executed

Triggered when an AI action is successfully executed.

{
"id": "evt_agent001",
"type": "agent.tool_executed",
"created_at": "2024-01-15T10:32:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"tool_name": "collect_contact_info",
"conversation_id": "conv_ghi789",
"execution_time_ms": 245,
"success": true
}
}

agent.tool_failed

Triggered when an AI action fails.

{
"id": "evt_agent002",
"type": "agent.tool_failed",
"created_at": "2024-01-15T10:33:00Z",
"organization_id": "org_xyz789",
"chatbot_id": "chatbot_abc123",
"data": {
"tool_name": "schedule_meeting",
"conversation_id": "conv_ghi789",
"error": "Calendar API unavailable",
"success": false
}
}

Usage Events

usage.threshold_reached

Triggered when usage reaches configured threshold (e.g., 80% of quota).

{
"id": "evt_usage001",
"type": "usage.threshold_reached",
"created_at": "2024-01-15T00:00:00Z",
"organization_id": "org_xyz789",
"data": {
"resource": "messages",
"current_usage": 8000,
"limit": 10000,
"percentage": 80,
"period_end": "2024-01-31T23:59:59Z"
}
}

Event Type Summary

CategoryEvents
Leadlead.created, lead.updated, lead.qualified, lead.converted, lead.score_changed
Conversationconversation.started, conversation.ended, conversation.message_received, conversation.sentiment_negative, conversation.sentiment_positive
Ticketticket.created, ticket.updated, ticket.resolved
Meetingmeeting.scheduled, meeting.cancelled, meeting.completed, meeting.reminder
Messagemessage.feedback_negative, message.feedback_positive
Agentagent.tool_executed, agent.tool_failed
Usageusage.threshold_reached

Next Steps