Zernio
APIFor you
Zernio
APIFor you
Platforms

Instagram

Overview

Publish

Posts, Stories & ReelsPlatform fieldsMedia requirements

Engage

AnalyticsInbox

Reference

Limits & errors
Dashboard
OverviewPlatformsAPI ReferenceResources
All platforms

Instagram

Social Posting

Publish feed posts, carousels, Stories and Reels to Instagram with the Zernio API, with collaborators, user tags, catalog audio, paid partnership labels and location tags.

Authentication details

Connecting accounts guide
OAuth 2.0

Connect endpoints

  • GET /v1/connect/instagram/select-accountList Pages with a linked Instagram account
  • POST /v1/connect/instagram/select-accountSelect the Page whose Instagram account to connect
Read the full connect steps in the guide

Permissions10 scopes

Always requested
Posting
Analytics
Comments
Messaging

Pass scopes=posting,analytics to the connect endpoint to ask only for those areas. The first row comes with every connection.

Publish feed posts, carousels, Stories and Reels to Instagram with POST /v1/posts and platform: "instagram". The same account also serves analytics, DMs, comments and comment-to-DM automations.

Quick reference

PropertyValue
Character limit2,200 (caption)
Images per post1 (feed), 10 (carousel)
Videos per post1
Image formatsJPEG, PNG
Image max size8 MB (auto-compressed)
Video formatsMP4, MOV
Video max size300 MB (Reels and carousel videos), 100 MB (Stories)
Video max duration15 minutes (Reels), 60 seconds (Story)
Post typesFeed, Carousel, Story, Reel
SchedulingYes
Inbox (DMs)Yes
Inbox (comments)Yes
Comment-to-DM automationsYes
Story-reply automationsYes
Story-mention and live-comment automationsYes
AnalyticsYes

Before you start

Instagram requires a Business or Creator account. Personal accounts cannot post through the API.

Every post needs media, so there are no text-only posts.

An account can publish 100 posts per rolling 24 hours, all content types combined. Read what is left of that window with Get Instagram publishing limit. Compare against the returned quotaTotal rather than hardcoding the cap.

The first 125 characters of a caption show before the "more" fold.

Connect

Call GET /v1/connect/instagram with profileId and, optionally, loginMethod (connecting accounts guide).

Publishing, analytics, comments and the inbox work the same with either login method. Facebook Login is required for ads scopes, catalog audio and the paid partnership label.

Login methods

Instagram Login (loginMethod=instagram_login, the default): the user authorizes their Instagram professional account directly, with no Facebook Page involved.

Ads permissions exist only on Facebook Login, so this method never requests them. To run ads against such an account, connect a Facebook account in the same profile and use its token (Meta Ads).

Facebook Login (loginMethod=facebook_login): the user authorizes a Facebook Page that has a linked Instagram professional account. Every API call for that account runs through the Page.

Use it when the customer manages Instagram through a Page and expects the Facebook consent screen.

Picking the Page is a second step after OAuth, in standard or headless mode (platforms requiring secondary selection).

The Facebook Login dialog also requests ads_management, ads_read, pages_manage_ads and leads_retrieval (the ads area), so the same account can drive Meta Ads. Call Connect ads with platform=instagram to create the ads account.

Pass scopes to ask for fewer areas.

In this section

Posts, Stories & Reels

Publish a feed post, a carousel, a Story or a Reel to Instagram, including Reels that use catalog audio.

Platform fields

Every platformSpecificData field for Instagram, with the paid partnership label and location tags.

Media requirements

Image and video requirements for Instagram posts, and the rules for media URLs.

Analytics

Which analytics metrics Instagram returns for posts and for Stories.

Inbox

Instagram direct messages, ice breakers, the persistent menu, comments and inbox webhooks.

Limits & errors

What Instagram's API does not expose and the common errors when publishing.

Related

  • Connecting accounts: the OAuth flow for Instagram Login and Facebook Login.
  • Create post: every field of the request.
  • Media uploads: upload images and videos instead of hosting them.
  • Messages and Comments: the inbox API.
  • Account settings: ice breakers and the persistent menu.
  • ManyChat-style automations: ref links, comment to DM, story mentions and handover.

Instagram

33
  • GET
  • GET
  • GET
  • GET
  • GET
  • POST
  • GET
  • DELETE
  • GET
  • GET
  • GET
  • POST

Publishing

24· Unified API, shared with other platforms
  • POST
  • POST
  • POST
  • POST
  • GET
  • POST
  • GET
  • PUT
  • DELETE
  • POST
  • POST
  • POST

Analytics

8· Unified API, shared with other platforms
  • GET
  • GET
  • GET
  • GET
  • GET
  • GET
  • GET
  • GET

Direct messages

24· Unified API, shared with other platforms
  • GET
  • POST
  • GET
  • GET
  • PUT
  • DELETE
  • GET
  • POST
  • PATCH
  • DELETE
  • POST
  • POST

Comments

15· Unified API, shared with other platforms
  • GET
  • GET
  • POST
  • DELETE
  • PATCH
  • POST
  • POST
  • DELETE
  • POST
  • DELETE
  • POST
  • DELETE

Instagram

6

Publishing

15· Unified API, shared with other platforms

Analytics

1· Unified API, shared with other platforms
Was this page helpful?

Limits & errors

Every platformSpecificData field for X, what X's API does not expose, and the errors you will see with their fixes.

Posts, Stories & Reels

Publish a feed post, a carousel, a Story or a Reel to Instagram, including Reels that use catalog audio.

On this page

Quick referenceBefore you startConnectLogin methodsIn this sectionRelated