Loading...
Receive real-time event notifications from WRRK via webhooks.
Webhooks let WRRK send real-time notifications to your application when events occur. Instead of polling the API, your server receives an HTTP POST request whenever something happens.
Contact Events:
contact.created — A new contact is added.contact.updated — A contact's fields change.contact.deleted — A contact is removed.Deal Events:
deal.created — A new deal is created.deal.updated — Deal fields or stage change.deal.closed — A deal is closed (won or lost).Message Events:
email.received — An email is received.email.sent — An email is sent from WRRK.whatsapp.received — A WhatsApp message is received.whatsapp.sent — A WhatsApp message is sent.Workflow Events:
workflow.executed — A workflow completed execution.workflow.failed — A workflow execution failed.Each webhook delivers a JSON payload:
{
"event": "contact.created",
"timestamp": "2026-03-15T10:30:00Z",
"data": {
"id": "cnt_abc123",
"name": "Jane Smith",
"email": "jane@example.com"
},
"org_id": "org_xyz"
}To ensure a webhook came from WRRK, verify the X-Wrrk-Signature header:
const crypto = require('crypto');
const signature = crypto
.createHmac('sha256', webhookSecret)
.update(requestBody)
.digest('hex');
if (signature === request.headers['x-wrrk-signature']) {
// Webhook is authentic
}If your endpoint returns a non-2xx status code, WRRK retries the webhook:
After 5 failed attempts, the webhook is marked as failed and you receive an email notification.
Click Send Test Event on any webhook configuration to send a sample payload to your endpoint. Use this during development to verify your handler works correctly.
Tags