Meta Lead Ads

Usage Instructions

Read leads from Meta lead ads (instant forms on Facebook and Instagram). Get a lead with its answers as a flat object, list the leads on a form within a time range, list the forms on a Page, and read a form with its questions. The New Lead trigger runs a workflow as soon as Meta delivers a lead, so you can call, message, or route it within seconds.

Actions

Meta Lead Ads Get Form

Get a Meta lead form with its status and questions, including each question key, label, type, and answer options.

Input

ParameterTypeRequiredDescription
pageAccessTokenstringYesLong-lived Page access token from someone who can advertise on the Page, with leads_retrieval, pages_show_list, pages_read_engagement, pages_manage_metadata, and ads_management
formIdstringYesLead form ID

Output

ParameterTypeDescription
questionsarrayForm questions. The key is the field ID used in lead answers; custom questions carry a label and options.
↳ keystringField ID the answer is stored under
↳ labelstringQuestion text (custom questions)
↳ typestringQuestion type, e.g. EMAIL, PHONE, CUSTOM
↳ optionsarrayAnswer options of a multiple-choice question
↳ keystringOption key
↳ valuestringOption text

Meta Lead Ads Get Lead

Get a Facebook or Instagram lead form submission by lead ID, with the person's answers as a flat object plus the ad, campaign, and form it came from.

Input

ParameterTypeRequiredDescription
pageAccessTokenstringYesLong-lived Page access token from someone who can advertise on the Page, with leads_retrieval, pages_show_list, pages_read_engagement, pages_manage_metadata, and ads_management
leadIdstringYesLead ID (the leadgen_id from the New Lead trigger)

Output

ParameterTypeDescription
idstringLead or form ID
createdTimestringWhen the lead was submitted
adIdstringAd the lead came from
formIdstringLead form ID
campaignIdstringCampaign the lead came from
fieldsjsonLead answers keyed by form field ID, e.g. { "email": "...", "full_name": "..." }
fieldDatajsonRaw field_data entries (name, values)
customDisclaimerResponsesjsonCustom disclaimer checkbox responses (checkboxKey, isChecked)
leadsjsonLeads on this page (id, createdTime, adId, formId, campaignId, fields)
formsjsonLead forms on this page (id, name, status, locale)
namestringForm name
statusstringForm status, e.g. ACTIVE or ARCHIVED
localestringForm locale
questionsjsonForm questions (key, label, type, options)
nextCursorstringCursor for the next page
hasMorebooleanWhether another page is available

Meta Lead Ads List Form Leads

List the leads submitted to a Meta lead form, newest first, optionally only those submitted within a time range. Use the cursor to page through more.

Input

ParameterTypeRequiredDescription
pageAccessTokenstringYesLong-lived Page access token from someone who can advertise on the Page, with leads_retrieval, pages_show_list, pages_read_engagement, pages_manage_metadata, and ads_management
formIdstringYesLead form ID
sincestringNoOnly leads submitted at or after this time (ISO 8601 such as 2026-10-01T00:00:00Z, or a Unix timestamp)
untilstringNoOnly leads submitted before this time (ISO 8601 or a Unix timestamp)
limitnumberNoMaximum leads to return (1-100; Meta defaults to 25)
afterstringNoCursor from a previous call (nextCursor) to fetch the next page

Output

ParameterTypeDescription
leadsarrayLeads on this page
nextCursorstringPass as After to fetch the next page; null on the last page
hasMorebooleanWhether another page is available

Meta Lead Ads List Page Forms

List the lead forms (instant forms) on a Facebook Page with their ID, name, status, and locale.

Input

ParameterTypeRequiredDescription
pageAccessTokenstringYesLong-lived Page access token from someone who can advertise on the Page, with leads_retrieval, pages_show_list, pages_read_engagement, pages_manage_metadata, and ads_management
pageIdstringYesFacebook Page ID
limitnumberNoMaximum forms to return (1-100; Meta defaults to 25)
afterstringNoCursor from a previous call (nextCursor) to fetch the next page

Output

ParameterTypeDescription
formsarrayLead forms on this page
nextCursorstringPass as After to fetch the next page; null on the last page
hasMorebooleanWhether another page is available

Triggers

A Trigger is a block that starts a workflow when an event happens in this service.

Meta Lead Ads New Lead

Trigger workflow the moment someone submits a Facebook or Instagram lead form, with the lead IDs and, when a Page access token is set, their answers

Configuration

ParameterTypeRequiredDescription
metaVerifyTokenstringYesEnter the same string in the Verify Token field of the Page webhook in the Meta App Dashboard.
metaAppSecretstringYesUsed to check the X-Hub-Signature-256 header Meta signs every delivery with. Deliveries that do not match are rejected.
metaPageAccessTokenstringNoWhen set, the trigger fetches each new lead's answers with this long-lived Page access token (needs leads_retrieval). When empty, the trigger outputs IDs only.
metaPageIdsstringNoPage IDs
metaFormIdsstringNoForm IDs

Output

ParameterTypeDescription
leadgenIdstringLead ID; pass it to Get Lead to read the answers
formIdstringLead form ID
pageIdstringFacebook Page ID the lead belongs to
adIdstringAd ID (empty for organic leads)
adgroupIdstringAd group ID from the webhook
createdTimestringWhen the lead was created (ISO 8601, from the webhook created_time)
fieldsjsonAnswers keyed by form field ID, e.g. { "full_name": "...", "email": "...", "phone_number": "..." }. Empty unless a Page Access Token is set.
campaignIdstringCampaign ID, when the answers were fetched and the token can see it
fieldsFetchedbooleanWhether the answers were fetched with the Page Access Token
fetchErrorstringWhy fetching the answers failed, if it did
leadsjsonEvery lead in this delivery (Meta can batch several), each with leadgenId, formId, pageId, adId, adgroupId, createdTime, fields, campaignId, fieldsFetched, and fetchError
leadCountnumberNumber of leads in this delivery
rawjsonThe webhook payload exactly as Meta sent it