Publish feed posts, stories, and reels to Instagram Business or Creator accounts using Meta’s Graph API for Instagram. Carousel and single-media posts are both supported.
Requirements
- An Instagram Business or Creator account — personal accounts are not supported by Meta’s publishing API.
- The Instagram account must be linked to a Facebook Page you administer (Meta’s Graph API requires this link).
- Admin access on the Facebook Page during the OAuth grant.
Spec
Create your Meta app
Postli connects with credentials you generate in Meta for Developers. The same app covers both Instagram (via a linked Facebook Page) and Facebook Page publishing — you only need to build it once.
- Go to developers.facebook.com/apps and click Create app. Sign in with the Facebook account that owns your Business Manager.
- Pick Other as the use case, then Business as the app type. Public apps require business verification.
- Inside the app, add the Facebook Login for Business product. Under that product’s Settings, set the Valid OAuth Redirect URI to:
https://app.usepostli.com/api/integration/meta/callback
- Open App Review → Permissions and Features and request advanced access for:
instagram_basic,instagram_content_publish,instagram_manage_comments,instagram_manage_insights,pages_show_list,pages_read_engagement, andbusiness_management. Submit a short screen-recording of the Postli connect flow as the supporting material — Meta’s reviewers expect it. - Switch the app from Development to Live so non-test users can grant consent.
- In App Settings → Basic, copy the App ID and App Secret.
- In Postli, open Settings → Integrations → Meta, paste both values, and save. The Connect button on the Integrations page will now light up.
/api/integration/instagram/callback.
OAuth setup
Once your credentials are saved, go to Integrations → Instagram → Connect. You’ll be redirected to Facebook’s OAuth dialog. Approve all listed permissions — partial grants will leave Instagram unable to publish.
The scopes Postli requests:
After consent, Postli stores the long-lived token, lists your linked Instagram Business accounts, and asks you to pick which one to connect.
Post types in detail
Feed post
Standard timeline post. One image, one video, or 2–10 items as a carousel. The caption renders below the media. Use the Channel tab on a Postli post to override the master caption with Instagram-specific copy and emoji.
Story
9:16 image or video that disappears after 24 hours. Story-specific stickers (polls, questions, location) are not supported by the Graph API and therefore not by Postli. Use a static link sticker by enabling the swipe-up URL field on the Channel tab — Postli will substitute the short link.
Reel
Vertical short-form video, 3–90 seconds. The cover image field on the Channel tab lets you upload a custom thumbnail; otherwise Instagram auto-selects a frame.
Auto-comments
All three condition types work on Instagram. The most common use is to keep the link out of the caption (where the algorithm de-prioritises it) and post it as the first comment via an Instant auto-comment instead.
Rate limits
Meta’s Graph API allows 25 published posts per Instagram account per 24 hours. Story and reel uploads count towards this. Postli respects the limit and will defer additional posts to the next 24h window with a status of queued.
Gotchas & best practices
- Personal accounts won’t connect. Convert to Business or Creator in the Instagram app first (Settings → Account type and tools).
- Page link is required. If your Instagram is not linked to a Facebook Page, the Graph API will return zero accounts. Link the Page in Meta Business Suite.
- JPEG only for images. PNGs are rejected by the publishing endpoint — convert before uploading.
- Aspect ratio mismatch in carousels is the #1 publish failure. All carousel items must share the same ratio.
- Token re-auth. If the merchant changes their Facebook password, all tokens are invalidated. Postli will surface a re-auth banner under Account health.
Webhooks
Postli does not currently subscribe to Instagram webhooks for inbound events — engagement is polled on a schedule (see How publishing works).