Connect Meta
A Meta connection lets Marketing post to a brand's Facebook Page and the Instagram account linked to it, read their numbers, and read or manage the brand's Meta ads. Threads is a separate connection: see Connect Threads. A Meta connection is your org's or a brand's. See Connections for how connecting works in general.
Ways to connect
- Connect, through GreenMind's app, where it is open to your org.
- Use your own app: a Meta app that you make. Start at Meta's app creation page; Meta's guide to creating an app explains the rest.
- Add a key: the token of a Business Manager system user, which can be made so that it never expires. Make a system user on Business settings, System users.
- Post by hand instead, at the foot of the Use your own app dialog: you give the account's name, GreenMind prepares each post and opens Meta's composer for you to finish it, and nothing is held for the account.
Making your own app
Meta makes apps from use cases rather than from an app type, and its names for the screens and use cases change from time to time. Follow the dialog and Meta's documentation where this page and Meta's screens differ.
- Open the Use your own app dialog for Meta on the Connections page, and keep it open.
- In Meta for Developers, create an app with a name and a contact email.
- Choose the use cases you need: one to manage your Page, one for content on Instagram (the API setup with Facebook login), and one to create and manage ads with the Marketing API, if you will use ads. Meta greys out use cases that cannot share one app; if you need one that is greyed out, make a second app for it with the same steps.
- Connect the app to the business portfolio that owns your Pages and ad accounts.
- Add the permissions. For each use case, open it from the app dashboard, choose Customize, and add the permissions listed under Permissions.
- Add the redirect URL. In Facebook Login for Business > Settings, add the redirect URL from the dialog to the valid OAuth redirect URIs, copied exactly.
- In App settings > Basic, fill in the app icon, privacy policy URL, terms URL and the data deletion instructions URL, and choose a category. Copy the App ID and App secret into the dialog and press Connect.
- In App roles > Roles, give a role (Administrator or Developer) to everyone who will connect an account through the app.
- Mark each use case Ready to test, and publish the app so it is in Live mode.
Permissions
What is asked for depends on what the connection is used for:
| Use | Permissions |
|---|---|
| Post | pages_show_list, pages_read_engagement, pages_manage_posts, instagram_basic, instagram_content_publish, instagram_manage_contents |
| Read post insights | pages_show_list, pages_read_engagement, read_insights, instagram_basic, instagram_manage_insights |
| Read ads | ads_read |
| Manage ads | pages_show_list, pages_read_engagement, ads_read, ads_management |
All of them together:
pages_show_list pages_read_engagement pages_manage_posts read_insights instagram_basic instagram_content_publish instagram_manage_contents instagram_manage_insights ads_read ads_management
Add all of them to the app. The Use your own app dialog lists only the permissions for posting, and those for the numbers if you tick Also read the numbers of what is posted. Reconnect asks for all of them, which is how a connection gains the ads permissions later. A connection can only be given what the app has.
App Review
Meta lets people with a role on your app use its permissions at Standard Access without a review, so an app used by your own team to reach your own Pages, Instagram accounts and ad accounts needs none. Anybody without a role on the app needs Advanced Access, which Meta grants permission by permission through App Review, with Business Verification. Meta's permissions reference has the details.
After connecting
On the brand's Connections page, under Posting, choose Use a connection, pick the Meta connection and give the Facebook Page ID it posts as. A Meta ad campaign runs as that Page, so ads need it too. Meta names an ad account act_ followed by its number, and the brand's ad accounts are listed on Ads.
Webhooks
Optional. Meta keeps one callback address per type of object for each app, so every connection made through your app shares one address, and the connection's row shows it as the Webhook address, with a Verify token. In the app dashboard, open Webhooks, choose Page and then Instagram, enter that address and verify token, and subscribe to the fields you want. GreenMind checks each delivery with your app secret, then hands it to the connection that posts as the Page or Instagram account it is about. Meta confirms the address only once an account has been connected through the app.
If it goes wrong
- The connection stops after about two months. A sign-in through OAuth gives a token that lasts about 60 days, and Meta has no refresh. Reconnect, or connect with a system user's token, which can be made never to expire.
- Meta does not know the app. The App ID or App secret is mistyped. GreenMind checks them before sending you to Meta.
- The permission is not available, or the sign-in dialog does not offer it. It is not added to the app's use case, or the person signing in has no role on the app and it has not passed App Review.
- The Page does not appear. The person signing in must have a role on the Page, and must allow the Pages in Meta's dialog.
- Instagram will not post. The account must be a professional account linked to the Page. Instagram allows 50 posts a day per account.
- Instagram says to choose the account linked to the Page. Posting to Instagram needs that account chosen for the brand, and Posting asks only for the Facebook Page ID today. Ask GreenMind to set it up.