One business or creator account, always with an image, up to a five-photo carousel.
#Overview
An Instagram connection is one professional (business or creator) account, reached through the Facebook Page it is linked to: an account with no linked Page cannot be connected at all. As with Facebook, the first account the grant covers is connected and the rest are listed under it in the dashboard.
Posting to Instagram is free. Each connection counts toward your connection ladder like any other account.
| Limit | Value |
|---|---|
| Caption | 2200 characters (invalid_request) |
| Images per post | 1, or 2 to 5 as a carousel (invalid_request) |
| Text only | Refused (shape_unsupported) |
| Threads | Not supported (shape_unsupported) |
| First comment | Not supported (shape_unsupported) |
| Delete | Not supported (delete_unsupported) |
Instagram posts must carry an image. There is no way to publish words on their own,
so a post with no mediaIds comes back shape_unsupported naming the field, and every
other connection on the same call still goes out. This is checked when the post is
created, not when it is sent: a text-only post scheduled for Instagram is refused by
POST /posts right away, rather than sitting in the queue until it fails.
Two or more images go out as a carousel, in the order you sent them. Instagram crops the whole carousel to the first image's aspect ratio.
Instagram does not delete. Its publishing API has no delete endpoint, so
DELETE /posts/{postId} answers 400 delete_unsupported. Remove the post in the app
itself.
#How images reach Instagram
Instagram does not take an upload. A post names a URL and Meta's own servers fetch the
bytes from it, so an image on its way to Instagram is given a signed link:
GET /media/{mediaId}/raw?exp=...&sig=.... It names one image, it works for an hour, and
it is minted only when a post actually needs it.
#Why it says "coming soon"
Facebook, Instagram and Threads all sit behind one Meta developer app. The posting code above is built and works today against a connected account; it is not offered to customers yet because that Meta app is waiting on Meta's own approval. Once it lands, Instagram shows up in the dashboard's connection picker with no other change to this page.