Reference · Tools
Facebook Lead Ads Trigger
Starts workflow when a new lead is submitted through a Facebook Lead Ad form
The Facebook Lead Ads Trigger fires instantly when someone submits a Facebook Lead Ad form, delivering structured lead data — form field values, ad details, and page info — directly into your workflow. Use it to build pipelines that push new leads into a CRM, send a follow-up email, or notify your sales team the moment a lead comes in.
- Node type
- Webhook trigger
- Parameters
- 6
- Outputs
- Output
- Credentials
- Facebook Lead Ads OAuth2
Facebook Lead Ads Trigger
Start workflow from Facebook Lead Ad submissions
Overview
Receives real-time webhook events from Facebook when new leads are submitted through Lead Ad forms. Validates incoming payloads using HMAC-SHA256 signature verification with the Facebook App Secret. Handles Facebook URL verification challenges (GET requests with hub.challenge). Filters events by configured Page ID and Form ID, then outputs structured lead data including form field values, ad details, adset details, and page information. Supports simplified output (flattened key-value fields) or full raw output with nested field_data arrays and form questions.
Category: Marketing
Tool Name: facebook_lead_ads_trigger
Version: 1
Appearance: Icon: si-facebook | Color: #1877f2
Node Type
Trigger — webhook (receives incoming HTTP callbacks)
This node is not listed in the node panel — it is placed as part of another node’s pattern.
Input / Output
| Direction | Port(s) |
|---|---|
| Input | None (trigger node) |
| Output | Output |
Credentials
This tool requires Facebook Lead Ads OAuth2 credentials. See the Credentials Guide for setup instructions.
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
| Facebook Account | credential | No | — | Connect your Facebook account via OAuth2. |
| Event | options | Yes | newLead | The event to listen for. |
Options: newLead (New Lead) | ||||
| Page ID | string | Yes | — | The ID of the Facebook Page linked to the lead form. You can find this in your Facebook Page settings. |
| Form ID | string | Yes | — | The ID of the specific Lead Ad form to monitor. You can find this in Facebook Ads Manager under Lead Forms. |
| Options | collection | No | {} | Additional output settings. |
| — Simplify Output | boolean | No | true | Whether to return a simplified version of the lead data (flattened field key-value pairs) instead of the raw nested structure. |
Output Data
One output item is produced per lead submission that matches the configured Page ID and Form ID. Deliveries for other pages or forms are acknowledged without starting the workflow.
Each item carries:
_trigger— alwaysfacebook_lead_ads_webhook_timestamp— ISO 8601 timestamp of when the request arrived_webhookEvent— alwaysleadgenleadgen_id— the ID of the submitted leadform_id— the Lead Ad form the lead came frompage_id— the Facebook Page the form is attached toad_id,adgroup_id— the ad and adset that produced the leadcreated_time— when Facebook recorded the submission
The event carries lead identifiers rather than the answers the person typed. To read the submitted field values, pass leadgen_id to a downstream node that calls the Facebook Graph API.
Reference the payload downstream by expression, e.g. {{ $json.leadgen_id }}.
Usage Examples
- capture new leads from Facebook ad campaigns
- trigger workflow when someone fills out a Facebook Lead Ad form
- receive Facebook lead ad submissions in real time
- collect leads from Facebook advertising forms
Example Configuration
Watch one Lead Ad form on one page:
{
"name": "Facebook Lead Ads Trigger",
"type": "facebook_lead_ads_trigger",
"position": [250, 300],
"parameters": {
"event": "newLead",
"pageId": "123456789012345",
"formId": "987654321098765"
}
}
The same, with output settings spelled out:
{
"name": "Facebook Lead Ads Trigger",
"type": "facebook_lead_ads_trigger",
"position": [250, 300],
"parameters": {
"event": "newLead",
"pageId": "123456789012345",
"formId": "987654321098765",
"options": {
"simplifyOutput": true
}
}
}
Return the raw nested structure instead:
{
"name": "Facebook Lead Ads Trigger",
"type": "facebook_lead_ads_trigger",
"position": [250, 300],
"parameters": {
"event": "newLead",
"pageId": "555666777888999",
"formId": "111222333444555",
"options": {
"simplifyOutput": false
}
}
}
Monitor leads from a real estate page and lead form:
{
"name": "Real Estate Leads",
"type": "facebook_lead_ads_trigger",
"position": [250, 300],
"parameters": {
"event": "newLead",
"pageId": "123456789012345",
"formId": "456789012345678",
"options": {
"simplifyOutput": true
}
}
}
Capture newsletter signups:
{
"name": "Newsletter Signups",
"type": "facebook_lead_ads_trigger",
"position": [250, 300],
"parameters": {
"event": "newLead",
"pageId": "987654321098765",
"formId": "789012345678901",
"options": {
"simplifyOutput": true
}
}
}
Trigger Behavior
- Activation: When the workflow is activated, a webhook endpoint is registered with the service.
- Deactivation: The webhook is automatically unregistered when the workflow is deactivated.
- Payload: The incoming webhook payload is parsed and output as workflow items.
- Verification: Supports signature verification where applicable.
Tips
Entry point that fires when a new lead is submitted through a Facebook Lead Ad form. Validates the webhook signature, filters by page and form, and outputs the lead data including form field values, ad info, and page details.
- Due to Facebook API limitations, you can use just one Facebook Lead Ads trigger for each Facebook App.
Frequently asked questions
How many Facebook Lead Ads triggers can I have per Facebook App?
Only one. Facebook's API restricts each Facebook App to a single webhook endpoint, so you can only run one Facebook Lead Ads Trigger node per Facebook App in BusyBot. If you need to handle leads from multiple pages or forms, configure that filtering within the single trigger rather than creating separate triggers.
What credentials do I need to connect this node?
You need a Facebook Lead Ads OAuth2 credential (credential type: facebookLeadAdsOAuth2). This is specific to Lead Ads and is separate from general Facebook Graph API credentials. Set it up once in BusyBot's credential store and reference it from the trigger node.
How does the node verify that incoming webhook requests are legitimate?
The node validates every incoming payload using HMAC-SHA256 signature verification against your Facebook App Secret. It also handles Facebook's URL verification handshake — the GET request with a hub.challenge parameter that Facebook sends when you first register the webhook.
Can I receive leads from a specific page or form only, rather than all leads across my Facebook App?
Yes. The node filters events by a configured Page ID and Form ID, so you can scope it to exactly the page and lead form you care about. Events that don't match those filters are ignored before any downstream nodes run.
What does the output look like, and what is the difference between simplified and full output?
Simplified output flattens the lead's form responses into straightforward key-value pairs, making field values easy to reference in later nodes. Full output preserves the raw nested structure Facebook sends, including field_data arrays and form questions, which is useful if you need metadata about the form fields themselves or want to handle multi-value fields precisely.
Build with the Facebook Lead Ads Trigger node
Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need Facebook Lead Ads OAuth2 credentials first.
Open BusyBotLast updated . Spotted something wrong? Tell us.