Webhooks reference
Receive HTTP POST notifications when events happen.
Setting up webhooks
Configure webhooks in Settings → Integrations (or via API).
Provide:
- Endpoint URL — must be HTTPS
- Events — which events to receive
- Secret — for signature verification
Available events
| Event | Fires when |
|---|---|
| draft.created | New draft generated |
| draft.approved | Draft approved |
| draft.sent | Email sent |
| lead.created | Lead added |
| lead.updated | Lead modified |
| email.opened | Recipient opened email |
| email.clicked | Recipient clicked link |
| email.replied | Recipient replied |
| email.bounced | Email bounced |
| pain_card.created | Pain card detected |
Payload format
{
"event": "email.replied",
"timestamp": "2026-02-25T12:00:00Z",
"organization_id": "uuid",
"data": {
"lead_id": "uuid",
"draft_id": "uuid",
"subject": "Re: Quick question"
}
}
Signature verification
Webhook requests include a signature header:
X-Webhook-Signature: sha256=...
Verify by computing HMAC-SHA256 of the raw request body using your webhook secret.
Retry policy
Failed deliveries (non-2xx response) are retried:
- 3 attempts
- Exponential backoff: 1 min, 5 min, 30 min
- After 3 failures, webhook is paused
Re-enable paused webhooks in Settings.