Webhooks
Subscribe to chatbot events and integrate with external systems
Webhooks
Receive real-time notifications when events happen in your chatbots. Use webhooks to integrate with Zapier, Make, your CRM, or any external system.
Available Events
Currently delivered events:
| Event | Fires When |
|---|---|
session.created | New conversation starts |
lead.captured | User submits email/name via chatbot |
* | All events (wildcard) |
More event types are defined and will start delivering as they are wired up:
session.resolved, message.received, message.sent, ticket.created,
ticket.updated, handoff.escalated, handoff.assigned,
handoff.returned. You can already subscribe to them — they simply won't
fire yet.
Creating a Webhook
Webhooks are managed in Dashboard → Settings → Webhooks, or via the dashboard API (authenticated by your dashboard session):
POST /api/webhooks-config
Content-Type: application/json
{
"url": "https://your-server.com/webhook",
"events": ["lead.captured", "session.created"],
"chatbotId": "optional_specific_chatbot_id"
}The response includes a signing secret (whsec_...) — save it, it's only shown once.
Payload Format
{
"event": "lead.captured",
"chatbotId": "cmf9n7u1c...",
"timestamp": "2026-03-26T15:30:00.000Z",
"data": {
"leadId": "clx...",
"name": "John Doe",
"email": "john@example.com",
"source": "lead-tool",
"sessionId": "rkt_abc123..."
}
}Verifying Signatures
Every webhook includes an X-RKT-Signature header with an HMAC-SHA256 signature (and an X-RKT-Webhook-Id header identifying the endpoint):
const crypto = require('crypto');
function verifyWebhook(body, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(body)
.digest('hex');
return signature === expected;
}Reliability
- Timeout: 10 seconds per delivery
- Auto-disable: After 10 consecutive failures, the endpoint is deactivated
- Reset: Successful delivery resets the fail counter
- Re-enable: Toggle the endpoint back on from the dashboard after fixing issues
Managing Endpoints
| Method | Endpoint | Action |
|---|---|---|
GET | /api/webhooks-config | List all endpoints |
POST | /api/webhooks-config | Create new endpoint |
PATCH | /api/webhooks-config | Toggle active/inactive |
DELETE | /api/webhooks-config | Remove endpoint |
Last updated on