leads_retrieval and pages_manage_ads. See Meta Ads.
Order
get_connections_status, thenget_ad_accounts.get_pageslists Facebook pages the connected user can manage. It does not take an ad account id.get_lead_formslists forms for onepage_id.get_meta_lead_form_questionsreads the questions on oneform_id.get_lead_form_leadsreads submissions for oneform_id.get_meta_lead_quality_reportsummarizes those submissions. It needsform_id.limitdefaults to 100.
email or work_email) nor a phone field (phone_number or phone). A repeated contact counts as a duplicate. quality_score is the share of leads that are neither missing nor duplicate, from 0 to 100. Risks are duplicate_contacts and missing_contact. The report does not delete leads or change the form.
Create a form
create_meta_lead_form is a write. Required arguments are page_id, name, a non-empty questions array, and a privacy_policy object. Optional arguments are locale, follow_up_action_url, and thank_you_page.
execution_mode is paused or approval_required. If you omit it, the write is treated as paused. Any other value is rejected. The call waits in Approvals. If the approval queue is not available, the call returns approval_queue_required and does not create the form.
A campaign that should use the form is still create_campaign, create_ad_set, and create_ad, each left PAUSED. Enabling spend is enable_campaign and is a separate approval.