Skip to content

Webhooks API

Register HTTPS endpoints to receive real-time events when conversations, messages, or assistant config changes occur.

MethodPathDescription
GET/api/v1/webhooksList webhook endpoints
POST/api/v1/webhooksCreate endpoint
GET/api/v1/webhooks/{id}Get endpoint
PATCH/api/v1/webhooks/{id}Update URL, events, or secret
DELETE/api/v1/webhooks/{id}Delete endpoint
POST/api/v1/webhooks/{id}/testSend test event

Requires API key or session auth.

POST /api/v1/webhooks
Authorization: Bearer ch_live_xxx
Content-Type: application/json
{
"url": "https://hooks.yourbusiness.com/chatevo",
"events": [
"conversation.created",
"message.created",
"assistant.updated"
],
"description": "CRM sync"
}

Response includes a signing_secret — store it immediately; it is shown only once.

{
"id": "wh_6tU9vW2x",
"url": "https://hooks.yourbusiness.com/chatevo",
"events": ["conversation.created", "message.created", "assistant.updated"],
"signing_secret": "whsec_abc123…",
"status": "active"
}
EventWhen fired
conversation.createdNew conversation started
conversation.updatedMetadata or status changed
conversation.closedConversation archived
message.createdUser or assistant message added
assistant.updatedAssistant config changed
knowledge_base.indexedKB finished indexing
tool.execution_failedTool call failed at runtime

Each delivery is an HTTP POST to your URL with JSON body:

{
"id": "evt_1yZ3aB5c",
"type": "message.created",
"created_at": "2026-07-16T10:20:00Z",
"data": {
"id": "msg_4pQ8rS2t",
"conversation_id": "conv_8mN4pQ1r",
"role": "user",
"content": "Do you ship to Canada?"
}
}
HeaderDescription
X-Chatevo-SignatureHMAC-SHA256 of raw body
X-Chatevo-TimestampUnix timestamp of delivery
X-Chatevo-EventEvent type string

Verify every payload — see Webhook HMAC.

Failed deliveries (non-2xx or timeout > 5s) retry with exponential backoff for up to 72 hours. Subject to webhook rate limits.

POST /api/v1/webhooks/wh_6tU9vW2x/test

Sends a ping event to verify URL reachability and signature validation on your side.