Configuring Webhook Subscriptions
Webhook URLs are configured inside each playbook’s settings:- Open the Mav dashboard and navigate to your Playbook.
- Go to Settings → Activity Subscriptions.
- Add your HTTPS endpoint URL.
- Select the specific events and/or outcomes you want to receive.
- Save your changes — subscriptions take effect immediately for new activity.
Subscriptions are per-playbook. If you run multiple playbooks, configure webhook URLs in each one separately.
Payload Structure
Both event and outcome activities POST the same set of parameters to your endpoint. Theactivity_type field tells you whether the payload represents an event or an outcome, and activity_label tells you exactly which one fired.
Top-Level Fields
string
required
Whether this payload represents an
event or an outcome.string
required
string
required
Mav’s unique identifier for this specific play (a single lead’s journey through a playbook). Use this to correlate multiple activities belonging to the same play.
string
A human-readable summary of what happened. Useful for logging and support triage.
string (ISO 8601)
The UTC timestamp of when the activity occurred, in ISO 8601 format (e.g.,
2024-01-15T14:30:00Z).Lead Fields
string
required
Mav’s unique identifier for the lead.
string
The lead’s first name as submitted to Mav.
string
The lead’s last name as submitted to Mav.
string
The lead’s email address.
boolean
true if the lead has opted out of messaging (e.g., sent STOP). Always check this field before attempting any further outreach through your own systems.string (ISO 8601)
The UTC timestamp of when the lead was first created in Mav.
array
An array of key-value objects containing playbook-specific data collected on the lead. The keys correspond to your playbook’s custom fields.
array
An array of originator objects that identify where the lead came from. This is the same data you passed on the inbound Marketing Source call — use it to match the activity back to the lead record in your CRM or marketing platform.
Example Payload
The following is a complete example of anevent payload for a lead that has qualified:
Matching Leads Back to Your CRM
Thelead_originators array is the bridge between Mav and your external systems. When you submit a lead via a Marketing Source, you can include your own internal ID for that lead. Mav echoes it back in every webhook payload for that lead.
For example, if you submit a lead with "crm_id": "crm-lead-id-456" as a custom field, or pass it as part of a named originator, you can use the matching key value in every webhook to instantly look up and update the corresponding record in your system — no fuzzy matching on name or email required.
Best Practices
Use HTTPS
Your webhook endpoint must be served over HTTPS. Mav will not deliver payloads to plain HTTP URLs. Use a valid TLS certificate from a trusted CA.Respond Quickly with 200
Mav expects your endpoint to return an HTTP200 status code promptly. Acknowledge the receipt of the payload first, then process it asynchronously. If your endpoint takes too long to respond or returns a non-2xx status, Mav will treat the delivery as failed.
Design for Idempotency
Network conditions can occasionally cause a payload to be delivered more than once. Design your handler to be idempotent — useactivity_play_id combined with activity_label as a deduplication key so that processing the same payload twice doesn’t create duplicate records or trigger duplicate actions.
Validate the Payload Shape
Always validate that required fields (activity_type, activity_label, lead_id) are present before processing. Unknown or new activity types in the future should be handled gracefully rather than causing errors.
Log Raw Payloads
Store the raw incoming payload before processing it. This gives you a reliable audit trail and makes debugging much easier if something goes wrong downstream.Related Pages
- Event Activities — Full reference of every event
activity_labelMav can fire. - Outcome Activities — Full reference of every outcome
activity_labelMav can fire. - Marketing Sources API — How to submit leads to Mav in the first place.