No buying or selling engagement
Meta's Developer Policies (2.7) forbid taking part in any programme that buys, sells or exchanges likes, followers or similar metrics. Growth or "engagement" tools built on the API risk app removal. [9]
Guides · social · Verification-gated
Publish media, manage comments and messages and read insights for Instagram professional (business or creator) accounts. Free to call, but serving accounts you do not own needs Advanced Access, which needs App Review and Business Verification.
Researched · not yet run liveLast researched 25 October 2026 · Meta · provider site
A Meta developer account creates a Business-type app, connected to a Business Portfolio that has passed Business Verification. Each Instagram account the app serves must be a professional (business or creator) account. With the Facebook Login setup, that Instagram account is also linked to a Facebook Page the user can administer.
Two setups. Instagram Login (graph.instagram.com, instagram_business_* scopes) needs no Page but has no hashtag search, product tagging, ads or tagging. Facebook Login (graph.facebook.com, instagram_* plus pages_* scopes) needs a Page-linked account. An app uses one or the other, not both. Meta recommends Unified Login for new integrations.
Standard Access (default) works only for accounts with a role on the app, i.e. your own accounts. Serving other people's accounts needs Advanced Access per permission.
Steps marked “human step” are ones only you can do: verapli never signs in, submits, pays or accepts terms for you.
The account you will publish or read for must be an Instagram business or creator account. For testing it must also be public. You switch this in the Instagram app settings yourself.
Pick one. Instagram Login needs no Facebook Page and covers publishing, comments, messages and insights. Pick Facebook Login if you need hashtag search, product tagging or Page-linked features, and link the Instagram account to a Facebook Page you administer. You cannot use both in one app.
In the App Dashboard create an app, connect your business portfolio, choose use case Other and app type Business, enter a name and contact email, then press Set up on the Instagram product. There is no official API to create apps.
Where: https://developers.facebook.com/apps/
Add the privacy policy URL, a 1024x1024 icon, an app category and a business email. Copy the App ID; the App Secret stays secret.
Where: https://developers.facebook.com/apps/
Under Instagram > API setup, assign your public professional account. The account holder accepts the tester invite and logs in; a token is generated for testing API calls and webhooks. This token works without App Review for accounts with a role on the app (Standard Access).
verapli captures INSTAGRAM_ACCESS_TOKEN here by plain code: encrypted in your browser, never shown to AI.
Where: https://developers.facebook.com/apps/
Add your OAuth redirect URL plus deauthorize callback and data deletion request URL in the business login settings. Optionally configure webhooks with a callback URL and verify token.
Needed before you can publish the app and for Advanced Access. Follow the meta/business-verification entry. Only needed if you will serve Instagram accounts that do not have a role on your app.
Only for apps that serve other businesses' accounts. For each permission (for example instagram_business_basic, instagram_business_content_publish), make at least one successful API call, describe the use case step by step, upload a screencast and give test credentials. Request only permissions the app visibly uses.
Where: https://developers.facebook.com/apps/
After approval, publish the app. In production, exchange each authorization code (valid 1 hour) for a short-lived token (1 hour), then a long-lived token (60 days), stored server-side and refreshed before expiry.
Plain-English summary, not legal advice. Each card links its source.
Meta's Developer Policies (2.7) forbid taking part in any programme that buys, sells or exchanges likes, followers or similar metrics. Growth or "engagement" tools built on the API risk app removal. [9]
You must get people's consent before publishing or taking any other action on their behalf (1.7), and must not contact people in Instagram Messaging without legally sufficient consent (5.2(a)). [9]
The Platform Terms ban selling, licensing or buying Platform Data (3.a.iv) and require you to protect and never transfer, share or solicit access tokens or app secrets (6.a.iv). Meta may suspend or permanently remove apps and accounts, with or without notice (7.e). Plain-English summary, not legal advice. [10]
Apps with Advanced Access must complete Data Use Checkup every year; apps that miss the deadline lose access to the relevant features and may need App Review again. [8]
An account can publish at most 50 containers via the API per rolling 24 hours (current value; Meta may change it). [6]
Developers report Instagram App Review taking from several days to around three weeks in 2026, with resubmissions restarting the clock. Plan launch dates with slack. Community reports, not Meta figures. [12]
| Env var | Secret | Format | What it is |
|---|---|---|---|
INSTAGRAM_APP_ID | not secret | 1234567890123456 | Instagram app ID shown under the Instagram product API setup (Instagram Login), or the Meta App ID for the Facebook Login setup |
INSTAGRAM_APP_SECRET | secret | 32 hex characters | Instagram app secret (server-side only) |
INSTAGRAM_ACCESS_TOKEN | secret | IG… | Instagram User access token (long-lived, 60 days, refreshable) for your own professional account |
INSTAGRAM_USER_ID | not secret | 17841400000000000 | Id of the Instagram professional account (IG User id) used in API paths |
Source [1]
The same entry as JSON: /api/v1/entries/meta/instagram-graph · requirements /api/v1/requirements/meta/instagram-graph · terms /api/v1/terms/meta/instagram-graph.
claude mcp add --transport http verapli https://verapli.com/mcp
> "What do I need for Instagram Platform API (Graph API for professional accounts), and how long will it take?"
→ tools/call requirements { "provider_id": "meta/instagram-graph" }Provider rules change. This page is generated from verapli registry version 2026.1025.316; spotted something out of date? Tell us. Meta is not affiliated with verapli.