Overview
The Instagram integration allows you to connect your Instagram Business account to Fanfare. This enables:- Viewing your Instagram account information and insights
- Publishing posts directly from Fanfare
- Accessing recent media and engagement metrics
- Managing content for experience marketing
Note: This integration is currently in proof-of-concept (POC) stage. Features are functional but may have limited
production use cases.
Prerequisites
Before setting up the Instagram integration, you need:- A Facebook Business Page
- An Instagram Business or Creator account linked to your Facebook Page
- Admin access to the Facebook Page
Account Requirements
The Instagram account must be:- Business or Creator account - Personal accounts are not supported
- Connected to a Facebook Page - Required for the Instagram Graph API
- Page admin access - You must be an admin of the connected Facebook Page
Setup
Step 1: Start the Connection Flow
- Navigate to Settings > Integrations in Fanfare
- Find Instagram and click to configure
- Click Connect Instagram
Step 2: Authorize with Facebook
- You’ll be redirected to Facebook’s OAuth flow
- Log in to Facebook (if not already logged in)
- Select the Facebook Page with the Instagram account you want to connect
- Review and approve the requested permissions:
pages_show_list- View your Pagespages_read_engagement- Read Page engagement datainstagram_basic- Access Instagram account infoinstagram_manage_insights- View Instagram insightsinstagram_content_publish- Publish content to Instagraminstagram_manage_comments- Manage Instagram commentspages_manage_posts- Manage Page posts
Step 3: Verify Connection
After authorization, you’ll be redirected back to Fanfare with your Instagram account connected. You should see:- Your Instagram username
- Profile picture
- Follower count
- Media count
OAuth Flow
Authentication Flow
Token Lifecycle
- Short-lived token: Initial token valid for ~1 hour
- Long-lived token: Exchanged for 60-day token
- Token refresh: Automatically refreshed before expiration
Token Storage
Tokens are stored securely in organization settings:| Field | Description |
|---|---|
accessToken | Current access token |
tokenExpiresAt | Expiration timestamp |
facebookPageId | Connected Facebook Page ID |
instagramBusinessAccountId | Instagram Business Account ID |
accountUsername | Instagram username |
Features
View Account Information
Retrieve your connected Instagram account details:Get Recent Media
View recent posts from your Instagram account:Get Account Insights
Retrieve engagement metrics for your account:Create a Post
Publish a new image post to Instagram:Image Requirements: - Image must be publicly accessible via URL - Supported formats: JPEG, PNG - Minimum
dimensions: 320x320 pixels - Maximum file size: 8MB
Disconnecting
To disconnect your Instagram account:- Navigate to Settings > Integrations
- Click on the Instagram integration
- Click Disconnect
What Happens When You Disconnect
- Access token is removed
- No further API calls can be made
- Historical data remains in logs
- You can reconnect at any time
API Reference
Get Authorization URL
OAuth Callback
Get Connected Account
null if not connected.
Get Recent Media
Get Account Insights
Create Post
Disconnect Account
Token Refresh
Automatic Refresh
Tokens are automatically refreshed when:- An API call is made
- Token is expiring within 5 days
- Refresh happens transparently
Manual Token Check
Token expiration is checked on each account access. If the token is expiring soon, a refresh is attempted automatically.Troubleshooting
Common Issues
“No Instagram business account found” Your Facebook Page doesn’t have a connected Instagram Business account.- Go to your Facebook Page settings
- Connect an Instagram Business or Creator account
- Ensure you’re selecting the correct Facebook Page
- Ensure you’re logged into the correct Facebook account
- Check that you have admin access to the Facebook Page
- Try clearing browser cache and cookies
- Token may have been revoked
- Disconnect and reconnect the integration
- Check that the Facebook App is still authorized
- Verify image URL is publicly accessible
- Check image format and size requirements
- Ensure
instagram_content_publishpermission was granted
Checking Connection Status
Verify your connection by calling the account endpoint:null.
Security
Data Handling
- Access tokens encrypted at rest
- Tokens never exposed in client-side code
- Facebook Page access limited to authorized users
Permission Scopes
The integration requests minimal permissions needed:| Scope | Purpose |
|---|---|
pages_show_list | List available Pages |
pages_read_engagement | Read engagement data |
instagram_basic | Basic account info |
instagram_manage_insights | View analytics |
instagram_content_publish | Post content |
instagram_manage_comments | Manage comments |
pages_manage_posts | Manage Page posts |
Token Security
- Long-lived tokens (60 days) used for extended access
- Tokens refreshed automatically
- Tokens revocable from Facebook Settings
Limitations
| Limitation | Description |
|---|---|
| Image posts only | Video and carousel posts not supported |
| Single account | One Instagram account per organization |
| Business accounts | Personal accounts not supported |
| Public images | Image URLs must be publicly accessible |
| POC status | Feature set may be limited |
Future Enhancements
Roadmap: The following features are planned for future releases: - Video and carousel post support - Post
scheduling - Story publishing - Comment management - Hashtag analytics