Platform Guide
Instagram is media-first. The main implementation question is not whether you can send a caption, but whether the media combination, count, and publish surface are valid for the connected business or creator account.
Overview
Use Instagram when you are publishing images, reels, or carousel content. Text-only posts are not supported. Mixed media is allowed only in carousel-style flows, not in simple single-asset posts.
Supported capabilities
| Capability | Supported | Notes |
|---|---|---|
| Text-only posts | X | Instagram is media-first |
| Single image | ✓ | Supported |
| Single video | ✓ | Published as Reels/video |
| Carousel | ✓ | 2-10 items, image and video mix allowed |
| Threads | X | Not a Twitter-style thread platform |
| First comment | ✓ | Supported |
Requirements
| Field | Required | Limits | Notes |
|---|---|---|---|
| media_urls | Required | 1 image, 1 video, or 2-10 carousel items | Media is required |
| caption | Optional | 2,200 chars | Commonly sent with media |
| first_comment | Optional | text | Supported after publish |
| mixed media | Allowed only in carousel | 2-10 items | Single posts should not mix image and video |
Example requests
The examples below are intentionally small and copyable. They show the request body only, assuming a standard POST /v1/social-posts call with Bearer auth.
Single image
{
"caption": "Sunset 🌅",
"account_ids": ["sa_instagram_1"],
"media_urls": ["https://cdn.example.com/sunset.jpg"]
}Reels / single video
{
"caption": "30-second intro 🎬",
"account_ids": ["sa_instagram_1"],
"media_urls": ["https://cdn.example.com/intro.mp4"]
}Carousel
{
"caption": "Product walkthrough",
"account_ids": ["sa_instagram_1"],
"media_urls": [
"https://cdn.example.com/cover.jpg",
"https://cdn.example.com/detail.jpg",
"https://cdn.example.com/clip.mp4"
]
}Common validation errors
| Code | What it means |
|---|---|
| media_required | Instagram requires media |
| too_many_media | More than 10 carousel items supplied |
| mixed_media_unsupported | Mixed media outside a carousel container |
Related reference
Once you know the correct request shape for this platform, move to the API reference for the full endpoint contract, response schema, and validation payload shape.