Webhook Events
The 41 LeadPattern webhook events (messages, conversations, contacts, notes, flows, calls and WooCommerce) and the envelope every delivery uses.
When you create or edit a webhook, the Select Triggers step lists the events it can receive,
grouped below. The event name in code is the value of event in the payload and of the
X-Webhook-Event header.
The delivery envelope
Every delivery is a JSON POST with the same four fields:
id: unique per event and identical across retries (also sent asX-Webhook-Id). Use it to skip duplicates.event: the event name.timestamp: when the event happened (ISO 8601, UTC).data: the event details. Its shape depends on the event. The developer API docs include a full example for every event.
Events
| Event | Label |
|---|---|
message_received | Message Received |
message_status_update | Message Status Update |
first_message | First Message |
template_updated | Template Updated |
raw_whatsapp | Raw WhatsApp Payload |
Test events
Send test delivers a sample payload whose event is test. Make sure your server answers it
with a 2xx status, even though it isn't one of the events above.
What's next
Was this article helpful?
Your feedback helps us continuously improve our documentation.
Related Articles
Webhooks Overview
LeadPattern webhooks send real-time events, such as new messages, chat assignments and calls, to your own server as signed HTTPS POST requests.
Create a Webhook
Register a webhook endpoint in LeadPattern, choose the events it receives, sign deliveries with a secret, and send a test before saving.
Verify Webhook Signatures
Why you should sign LeadPattern webhook deliveries, how to turn signing on, and how to verify the HMAC-SHA256 X-Webhook-Signature headers, with Node.js and Python examples that handle secret rotation.
Manage Webhooks
Edit LeadPattern webhooks, rotate or replace signing secrets with a 24-hour grace period, pause and resume deliveries, and understand each status badge.

