Post images, carousels, Reels and stories to Instagram; media requirements, options and credit cost.
Sandbox
In the sandbox these options are validated exactly as in production, but nothing is posted: each target gets a simulated result and a preview page. The outcomes described here (for example Reels, stories and carousels) are production behaviour and apply once live platform access opens.
Use "platform": "instagram".
Instagram requires at least one image or video.How a post is shaped in production:
| Media | Result (production) |
|---|---|
| 1 image | Feed post |
| 2 to 10 images or videos | Carousel |
| 1 video | Reel |
contentType: "story" with exactly 1 image or video | Story |
platformSpecificData| Field | Type | Description |
|---|---|---|
contentType | string | "story" publishes a story (exactly one media item). |
shareToFeed | boolean | For Reels: also show the Reel in the main feed. |
{
"content": "Behind the scenes at the roastery",
"mediaItems": [
{ "type": "image", "url": "https://assets.betterpost.dev/proj_123/2026/10/med_a1-roast.jpg", "altText": "Coffee beans cooling in a tray" },
{ "type": "image", "url": "https://assets.betterpost.dev/proj_123/2026/10/med_b2-cups.jpg", "altText": "Three cups of filter coffee" }
],
"platforms": [{ "platform": "instagram", "accountId": "acc_7i3g9r1a5m2q8w4e6t0y3u1o" }],
"publishNow": true
}Tip: when one post goes to Instagram and a text-only network, attach the media at the top level. Every target
receives the same mediaItems.
1 credit per Instagram target.