channels:read. Everything else needs channels:write.
Connect with Facebook Login
1
Read the settings
GET /api/v1/partner/tenants/{external_ref}/channels/meta/pages/ returns app_id, config_id, graph_version,
scopes and server_ready. Use them to open Facebook Login in your own page. If server_ready is false, Messenger
sign-in is not set up on this server. The answer also lists the connected pages and the candidates of a login.2
Send the login result
POST the same path with { "code": "..." }, or { "access_token": "..." }.page. If it manages more than one, the answer holds candidates.3
Pick a Page
When the answer lists
candidates, call POST .../channels/meta/pages/pick/ with { "page_id": "..." }. If the offer
is gone, the call answers 409, and the person logs in again.page_id with the login result in step 2 to choose the Page at once.
Connect with the business’s own Meta app
A business that runs its own Meta app can sendpage_id, page_access_token, app_id and app_secret in one POST to
the same path. All four are required. The answer holds page and subscribed. If the webhook is not subscribed, the
business sets the webhook_url and verify_token from the settings answer in its own app.
The Page object
Switch on, check, change, disconnect
Settings:
typing_indicator, mark_seen, rich_blocks, reply_wait_seconds, agent_allowlist_mode, agent_allowlist
and agent_rollout_percent. Send only the fields that change. Both calls answer with all of them.