Webhooks
Receive a client's chat and call events on your own endpoint, signed and verifiable
Receive real-time chat and call events on your own server — Happ POSTs JSON when something happens, so you can drive Slack alerts, CRM lookups, analytics, or custom workflows.
Connect
- Open the Integrations catalog and click Connect on Chat webhook or Call webhook.
- In the modal, enter your Webhook URL — the HTTPS endpoint that receives events.
- Optionally set a Webhook secret for request verification.
- Click Connect.
There's no separate webhooks page, no event-subscription toggles, and no in-app deliveries log — the modal is just URL + optional secret.
Events sent
| Webhook | Fires on |
|---|---|
| Chat | New message from customer, message sent by assistant, conversation started, AI control toggled |
| Call | Call started, call ended (duration + metadata), call recording available |
Verifying requests
Each request carries an HMAC-SHA256 signature computed from your webhook secret. On your server: extract the signature from the headers, compute HMAC-SHA256 of the raw body with your secret, and process the request only if they match. Same mechanism as assistant tools.
Use HTTPS only, respond 200 fast (process async), and handle duplicate deliveries idempotently.
Webhooks vs tool webhooks
| Integration webhooks | Tool webhooks | |
|---|---|---|
| Trigger | Automatic on events | Called by AI during conversation |
| Direction | Happ → your server | Happ → your server → response → AI |
| Response | HTTP 200 ack | JSON used by the assistant |
| Use case | Monitoring, logging, alerting | Dynamic lookups, actions |
For webhooks the AI calls mid-conversation, see Tools.
Next
- Tools — AI-called webhooks
- Notifications — built-in alerting
- Integrations — the full catalog