How Webhooks Work
1
Register a webhook
Provide a URL and select the events you want to receive.
2
Events occur
When a subscribed event happens in IllumiChat, a payload is sent to your URL.
3
Your server processes the event
Your endpoint receives the POST request, verifies it, and takes action.
Setting Up a Webhook
Via the Dashboard
- Go to Settings > Webhooks in your workspace
- Click Create Webhook
- Enter your endpoint URL (must be HTTPS)
- Select the events you want to subscribe to
- Save
Via the API
Event Types
Payload Format
Every webhook delivery includes a JSON payload with a consistent structure:Handling Webhooks
Basic Express Server
Next.js API Route
Best Practices
Respond quickly
Respond quickly
Return a
200 response as soon as possible. Process the event asynchronously if your logic takes more than a few seconds. IllumiChat may time out and retry if your endpoint does not respond promptly.Handle duplicates
Handle duplicates
Webhook deliveries can occasionally be duplicated. Use the event
timestamp and resource id to deduplicate on your end.Use HTTPS
Use HTTPS
Webhook URLs must use HTTPS. For local development, use a tunneling service like ngrok to expose your local server.
Log payloads during development
Log payloads during development
Log the full payload while building your integration so you can inspect the exact structure of each event type.
Retry Policy
If your endpoint returns a non-2xx status code or times out, IllumiChat retries the delivery with exponential backoff:
After 3 failed retries, the delivery is marked as failed. You can view failed deliveries in your webhook settings and manually trigger a re-delivery.