Reference
Set up Instagram OAuth for business account data and media management
Overview
Section titled “Overview”Connect your users to Instagram for business account data, media publishing, comment management, and insights — via the Meta Graph API.
| Property | Value |
|---|---|
| Provider ID | instagram |
| Category | Social |
| PKCE | Supported |
| Token refresh | Automatic |
| Redirect URI | Shown in Developer Portal |
Step 1: Create an Instagram OAuth App
Section titled “Step 1: Create an Instagram OAuth App”Go to the Meta for Developers portal
Navigate to developers.facebook.com/apps and sign in. Instagram OAuth requires a Meta (Facebook) app.
Create a new app
Click Create App, enter the app name and contact email, then add the Manage messaging & content on Instagram use case (it provisions the Instagram permissions and the Page permissions they depend on).
Configure OAuth redirect URIs
In the app’s left menu open Facebook Login for Business (or Facebook Login) > Settings. Under Client OAuth settings, add the Alter callback URL from the Developer Portal to Valid OAuth Redirect URIs and save.
Get credentials
Go to App settings > Basic and copy the App ID (Client ID) and App Secret (Client Secret).
Step 2: Add to Alter Vault
Section titled “Step 2: Add to Alter Vault”Open the Developer Portal
Go to portal.alterauth.com and navigate to the application.
Add Instagram provider
Go to OAuth Providers > Add Provider > Instagram.
Enter credentials
- Client ID: Paste your Meta App ID
- Client Secret: Paste your Meta App Secret
Select scopes
Choose the scopes the application needs.
Save
Click Save. The provider is now active.
Available Scopes
Section titled “Available Scopes”| Scope | Description |
|---|---|
instagram_basic | View the user’s Instagram account profile and media |
instagram_content_publish | Publish media to the user’s Instagram account |
instagram_manage_comments | Read and manage comments on the user’s Instagram media |
instagram_manage_insights | View analytics and insights for the user’s Instagram account |
instagram_manage_messages | Read and send Instagram Direct messages for the professional account |
pages_show_list | View the list of Pages the user manages (required for Instagram) |
pages_read_engagement | View engagement data on the user’s Pages |
- Instagram and Facebook share the same Meta OAuth endpoints and App ID/Secret. If you configure both providers, they must use the same Meta app credentials.
- Instagram OAuth requires the user’s Instagram account to be connected to a Facebook Page.
- Some permissions require App Review before use in production.
- See the Instagram API with Facebook Login documentation for more details.
Policy-cataloged operations
Section titled “Policy-cataloged operations”Alter policy rules can target these attested operations and families for operation-level and parameter-aware controls.
| Operation ID | Families | Method | Provider path |
|---|---|---|---|
ig-media/comments/create | send | POST | /{ig-media-id}/comments |
ig-comment/replies/create | send | POST | /{ig-comment-id}/replies |
ig-user/media-publish | send | POST | /{ig-user-id}/media_publish |
ig-user/media/create | write | POST | /{ig-user-id}/media |
ig-comment/delete | delete | DELETE | /{ig-comment-id} |
ig-media/comments/list | read | GET | /{ig-media-id}/comments |
ig-comment/replies/list | read | GET | /{ig-comment-id}/replies |
ig-hashtag-search | read | GET | /ig_hashtag_search |
ig-user/content-publishing-limit | read | GET | /{ig-user-id}/content_publishing_limit |
ig-user/media/list | read | GET | /{ig-user-id}/media |
ig-user/stories | read | GET | /{ig-user-id}/stories |
ig-user/tags | read | GET | /{ig-user-id}/tags |
me/accounts | read | GET | /me/accounts |
me/get | read | GET | /me |