Create a Webhook
- Go to Settings → APIs & Webhooks → Webhooks
- Click + Create webhook
- Enter your webhook URL (must be publicly accessible)
- Click Save
Manage Webhooks
Edit: Click the webhook → Update URL → Save Delete: Click the webhook → Delete → ConfirmEvents
Twenty sends webhooks for these event types:
All event types are sent to your webhook URL. Event filtering may be added in future releases.
Payload Format
Each webhook sends an HTTP POST with a JSON body:Respond with a 2xx HTTP status (200-299) to acknowledge receipt. Non-2xx responses are logged as delivery failures.
Webhook Validation
Twenty signs each webhook request for security. Validate signatures to ensure requests are authentic.Headers
Validation Steps
- Get the timestamp from
X-Twenty-Webhook-Timestamp - Create the string:
{timestamp}:{JSON payload} - Compute HMAC SHA256 using your webhook secret
- Compare with
X-Twenty-Webhook-Signature
Example (Node.js)
Webhooks vs Workflows
For receiving external data, see Set Up a Webhook Trigger.