{
"id": "9f1c4b6e-3a2d-4f8b-9c1e-2a7d5e8b0c31",
"event": "lead.created",
"occurred_at": "2026-07-14T09:30:00+00:00",
"workspace_id": 42,
"data": {
"contact": {
"id": "contact_demo",
"name": "Jordan Lee",
"email": "jordan.lee@example.com",
"phone": "+15550142299",
"platform": "whatsapp"
},
"lead": {
"id": "lead_demo",
"leadgen_id": "1234567890123456",
"form_id": "987654321098765",
"form_name": "Spring promo",
"ad_id": "120214731400140001",
"page_id": "110022003300440",
"submitted_at": "2026-06-13T10:00:00+00:00",
"new_contact": true,
"answers": {
"full_name": "Jane Doe",
"email": "jane@example.com",
"phone_number": "+15550142299",
"what_service_do_you_want?": "Braids"
}
}
}
}Facebook lead form submitted
Sent to your endpoint when Facebook lead form submitted occurs (lead.created).
Fires once per Facebook lead form submission, after it is saved as a contact. data.lead.answers keeps Meta’s own question keys. data.lead.new_contact is true when the lead created the contact, false when it matched someone already in the workspace.
Signed as X-Dmly-Signature: sha256=<hmac> when the endpoint has a secret. Return any 2xx within 8 seconds to acknowledge.
WEBHOOK
lead.created
{
"id": "9f1c4b6e-3a2d-4f8b-9c1e-2a7d5e8b0c31",
"event": "lead.created",
"occurred_at": "2026-07-14T09:30:00+00:00",
"workspace_id": 42,
"data": {
"contact": {
"id": "contact_demo",
"name": "Jordan Lee",
"email": "jordan.lee@example.com",
"phone": "+15550142299",
"platform": "whatsapp"
},
"lead": {
"id": "lead_demo",
"leadgen_id": "1234567890123456",
"form_id": "987654321098765",
"form_name": "Spring promo",
"ad_id": "120214731400140001",
"page_id": "110022003300440",
"submitted_at": "2026-06-13T10:00:00+00:00",
"new_contact": true,
"answers": {
"full_name": "Jane Doe",
"email": "jane@example.com",
"phone_number": "+15550142299",
"what_service_do_you_want?": "Braids"
}
}
}
}Was this page helpful?

