Webhooks let Sahut send real-time HTTP POST notifications to your server when events occur — such as a new message arriving or a conversation being resolved. Use webhooks to trigger actions in your systems without polling the API.Documentation Index
Fetch the complete documentation index at: https://docs.sahut.id/llms.txt
Use this file to discover all available pages before exploring further.
How webhooks work
- You create a webhook endpoint on your server (a URL that accepts POST requests)
- You register that URL in Sahut
- When an event occurs, Sahut sends a POST request with a JSON payload to your URL
- Your server responds with
200 OKwithin 10 seconds
2xx within 10 seconds, Sahut retries delivery up to 5 times with exponential backoff (5s, 30s, 2m, 10m, 30m).
Registering a webhook
Via the dashboard
- Go to Settings → Integrations → Webhooks
- Click Tambah Webhook (Add Webhook)
- Enter your Endpoint URL
- Select the Events you want to receive
- Click Simpan (Save)
Via the API
Request body
The HTTPS URL to receive webhook events.
List of event types to subscribe to. See event types below.
Example request
Example response
Delete a webhook
Webhook ID to delete.
Event types
| Event | Triggered when |
|---|---|
conversation.created | A new conversation is created |
conversation.updated | A conversation’s status, assignee, or labels change |
conversation.resolved | A conversation is marked as resolved |
message.created | A new message is sent or received in any conversation |
contact.created | A new contact profile is created |
contact.updated | A contact’s details are updated |
Webhook payload format
All webhook events share the same envelope structure:Example: message.created payload
Verifying webhook signatures
Sahut signs every webhook request so you can verify it came from Sahut and wasn’t tampered with. Each request includes aX-Sahut-Signature header containing an HMAC-SHA256 signature of the raw request body, signed with your webhook’s secret.
To verify the signature:
Always verify webhook signatures in production to protect against spoofed requests.