Connecting a Facebook Page
A person connects, not a Page
Facebook Login always authenticates a human. A Page cannot log in; it is acted on by someone who administers it. So the connect flow has three screens and the first one is about you, not the Page:
- Continue as
<your name>— this is the basic profile, granted automatically. The modest wording ("name and profile picture") is not the whole grant, it is just this screen. - Which Pages — tick the Page. This is the step people skip.
- What is allowed — leave the messaging permission on.
Skipping step 2 completes the flow and yields nothing. There is no Page token without a ticked Page, so the connection reports that no Pages came back rather than storing something that would fail later.
The Page must grant messaging
Being a Page admin is not sufficient on its own. The connecting person needs the messaging task on that Page. A Page returned without it is not stored: it could be neither read nor replied to, so an account asset for it would exist only to produce a confusing error the first time anyone used it.
If every Page comes back without messaging, the connection says so and names how many were seen. Reconnect, or ask a Page admin to grant messaging access.
One Page, one asset
Each connected Page becomes its own account asset holding that Page's own access token. Connect three Pages and you get three assets, each addressable in a different scene if you want them separated.
Reconnecting is how you change anything
There is no permissions editor, because an OAuth grant lives with the provider rather than with us. Every change is a round trip through Facebook's own consent screen. Running the connect flow again is how you:
- add a Page that was not ticked the first time
- pick up a permission that was added to the app after you connected
- replace a token after access was revoked
Reconnecting is safe. Each Page is stored under its own identity, so re-authorizing updates the existing asset in place rather than creating a duplicate. Nothing is lost, and the token is refreshed.
Access levels, and why a colleague's Page may refuse
Meta gates permissions by access level, and this decides who can connect:
| Level | Who can connect |
|---|---|
| Standard | only people with a role on the app: admin, developer, or tester |
| Advanced | anyone, after Meta's App Review |
Under Standard Access it is the person who needs the app role, not the Page. Someone with a role can connect any Page they administer. Someone without one gets a permission error no matter how well they administer the Page.
That is the usual explanation when a connection works for one person and fails for their colleague on the same Page.
Token lifetime
Page tokens are minted from a long-lived user token, so they do not carry an expiry of their own and there is no refresh cycle to worry about. A token that stops working means access was revoked or the person lost their role, and the only cure is reconnecting.