⚡Quick answer -
Every Webhook v2 delivery contains a 12-field root envelope followed by an event-specific payload object.
• Common envelope fields = event_id, company_id, event_type, event_sequence, event_version, timestamp, channel, direction, session_id, system_identifier, customer_identifier, payload.
• Six Call sub-events and eight WhatsApp sub-events each have their own payload schema (see tables below). For full JSON examples, open the official Postman collections (links below).
When should I use this guide?
Read on when you need to:
• Map Webhook v2 fields into a CRM/warehouse without opening Postman.
• Debug “missing field” queries from Support or customers.
• Explain edge-cases such as system_identifier = null or event_sequence not present.
1. Postman collections (full JSON)
Tip: never paste large payloads in email; send the collection link instead.
2. Root envelope (present in every event)
3. Call-event payload reference (6 sub-events)
4. WhatsApp-event payload reference (8 sub-events)
(direction = "" for conversation events)
5. Complete event_type → UI mapping
6. WhatsApp source field reference
Avoid using myop_ref_id to detect origin—always rely on source.
7. Integration best-practice checklist
- Respond with HTTP 200 immediately; queue heavy work async.
- Deduplicate using event_id.
- Use event_sequence to reorder call events (not present on call.disposition).
- Correlate events with session_id for the full timeline.
- Capture system_identifier from call.initiated (null on call.summary).
- Differentiate WhatsApp origin via source (lc / cmp / api).
- Expect E.164 customer numbers; parse defensively.