Webhook Events Reference
All webhook event types with example payloads.
Event Categories
Ticket Events
ticket.created- New ticket createdticket.updated- Ticket fields changedticket.closed- Ticket resolved or closed
Customer Events
customer.created- New customer addedcustomer.updated- Customer fields changed
Article Events
article.created- New article createdarticle.updated- Article fields changedarticle.published- Article published to KB
Gamification Events
boss.spawned- Boss battle startedboss.defeated- Boss was defeatedplayer.level_up- Player leveled upachievement.unlocked- Achievement earned
CSAT Events
survey.submitted- Customer submitted feedback
Ticket Events
ticket.created
Fired when a new ticket is created.
{
"id": "evt_abc123",
"type": "ticket.created",
"created_at": "2025-12-14T10:30:00Z",
"team_id": "team-uuid",
"data": {
"ticket": {
"id": "ticket-uuid",
"title": "Cannot access dashboard",
"status": "new",
"priority": "high",
"customerId": "customer-uuid",
"customerName": "Jane Doe",
"tags": ["login", "urgent"],
"createdAt": "2025-12-14T10:30:00Z"
},
"customer": {
"id": "customer-uuid",
"name": "Jane Doe",
"email": "jane@example.com"
}
},
"ticket_id": "ticket-uuid",
"ticket_title": "Cannot access dashboard",
"ticket_priority": "high",
"customer_name": "Jane Doe",
"customer_email": "jane@example.com"
}
ticket.updated
Fired when ticket fields change (status, priority, assignment).
{
"id": "evt_def456",
"type": "ticket.updated",
"created_at": "2025-12-14T11:00:00Z",
"team_id": "team-uuid",
"data": {
"ticket": { ... },
"changes": {
"status": { "from": "new", "to": "open" },
"assignedTo": { "from": null, "to": "agent-uuid" }
}
}
}
ticket.closed
Fired when a ticket is resolved or closed.
{
"id": "evt_ghi789",
"type": "ticket.closed",
"created_at": "2025-12-14T12:00:00Z",
"team_id": "team-uuid",
"data": {
"ticket": { ... },
"resolution": {
"closedAt": "2025-12-14T12:00:00Z",
"closedBy": "agent-uuid",
"resolutionTime": 5400000
}
}
}
Gamification Events
boss.spawned
Fired when a boss appears for the team.
{
"id": "evt_boss1",
"type": "boss.spawned",
"created_at": "2025-12-14T10:00:00Z",
"team_id": "team-uuid",
"data": {
"boss": {
"id": "boss-uuid",
"name": "The Ticket Titan",
"tier": "epic",
"maxHp": 500,
"currentHp": 500,
"ticketsRequired": 15,
"spawnedAt": "2025-12-14T10:00:00Z"
}
}
}
boss.defeated
Fired when the team defeats a boss.
{
"id": "evt_boss2",
"type": "boss.defeated",
"created_at": "2025-12-14T14:00:00Z",
"team_id": "team-uuid",
"data": {
"boss": {
"id": "boss-uuid",
"name": "The Ticket Titan",
"tier": "epic"
},
"finalBlow": {
"userId": "agent-uuid",
"userName": "John Smith"
},
"participants": [
{ "userId": "agent1-uuid", "damage": 150 },
{ "userId": "agent2-uuid", "damage": 200 }
],
"rewards": {
"xp": 500,
"gold": 250
}
}
}
player.level_up
Fired when a player levels up.
{
"id": "evt_lvl1",
"type": "player.level_up",
"created_at": "2025-12-14T15:00:00Z",
"team_id": "team-uuid",
"data": {
"player": {
"userId": "agent-uuid",
"userName": "John Smith",
"oldLevel": 4,
"newLevel": 5,
"totalXp": 2500
}
}
}
Flat Payload Format
When "Flat payload" is enabled, key fields are duplicated at the root level for easier access in visual automation builders:
{
"id": "evt_abc123",
"type": "ticket.created",
"ticket_id": "ticket-uuid",
"ticket_title": "Cannot access dashboard",
"ticket_priority": "high",
"customer_name": "Jane Doe",
"customer_email": "jane@example.com",
"data": { ... }
}