Ship Reels and Carousels Through One Instagram Posting API Call

One POST request to the Instagram Posting API publishes a feed image, a 2-10 item carousel, a reel, or an image or video story to a connected business account. Send text, platforms, timezone, your media URLs, and an instagramConfigs.postType of FEED, REEL or STORY.

HTTP request creating an Instagram carousel post with instagramConfigs.postType, next to the per-platform publish result returning platformPostId

Instagram Publishing as a REST Endpoint, Not a Browser Session

POST https://post.adaptlypost.com/post/api/v1/social-posts with a Bearer adaptly_ key. Publish now, pass scheduledAt with an IANA timezone, or save a draft and publish it later. A registered webhook receives every event we emit, post.published, post.scheduled, post.partially_failed, post.failed and account.unauthorized, with no per-event filtering to configure.

Manage

Post to All Your Platforms at Once

Share to Instagram, TikTok, YouTube, X, and more with one click. Each post auto-adapts to fit the platform.

Schedule

Visual Content Calendar

The AdaptlyPost calendar shows every draft, scheduled, and published post by day, so your posting slots stay filled.

Measure

Social Media Analytics in One Place

AdaptlyPost tracks views, likes, shares, and engagement for every connected account in one analytics dashboard.

Integrate

API Access & OpenClaw Skill

Connect via API or let your OpenClaw AI agent manage posts for you. Automate social media with natural language commands.

Generate

AI Image Generator for Social Media

Generate scroll-stopping images in seconds. Just describe your vision and let AI bring it to life.

Create

AI Caption Generator for Every Platform

The AdaptlyPost AI copilot writes captions, rewrites them per platform, and adds hashtags from a single prompt.

Organize

Social Media Content Planner

AdaptlyPost keeps drafts, scheduled posts, and published content in one queue, so you see what goes live and when.

Trusted by Creators and Teams

See how creators, marketers, agencies, and small businesses use AdaptlyPost to stay consistent and save hours every week.

Running 11 accounts across 8 platforms with almost zero friction

I am currently running 11 accounts spread across Facebook, Instagram, Threads, LinkedIn, Bluesky, YouTube, X, and TikTok, all connected and posting daily. Ease of use: 10/10. The learning curve is basically nonexistent. Scheduling posts across multiple platforms takes minutes instead of the hours it used to take me doing it manually. It has replaced at least two other subscriptions for me and I have zero regrets.

jeremy8939jeremy8939

Simple, powerful and amazing support

It's easy to use, and connecting it with Claude lets me organize and distribute videos and images while staying true to my brand's style. What really stands out is the support: I told Taras I needed two new features, the ability to publish Instagram posts mixing images and videos, and to upload PDFs to LinkedIn via MCP, and he had both ready in just 3 hours. Fast, responsive, and truly amazing.

destacadestaca

My Honest Experience Running My Social Media with AdaptlyPost + Claude AI

Then the part that still feels a little crazy: I told Claude to generate the full posts including images and graphics and schedule everything through AdaptlyPost. I went to my content calendar expecting to babysit the process. It was already filled. 30 days of posts, text and visuals, scheduled and ready. The whole thing took about 10 minutes. I used to lose hours every week to this.

basantkumar405basantkumar405

Finally, a tool that fits a terminal-first workflow (and top-tier support!)

I've tried several social media scheduling tools in the past, and none of them quite clicked with my workflow. Adaptly completely changed that.

mayank09mayank09

Responsive developer and a client-friendly connect link that solves a real agency pain point

My favorite feature is the Shareable Connect Link. You can generate a link so a client can connect their own social accounts, with no dashboard access required. Getting non-technical clients to hand over access to their accounts has been a constant pain point for me, and this removes most of that friction. I send a link, they click through and authorize, and I'm done.

automatexyzautomatexyz

Solid multi-account scheduler, we run 3 brands on it daily

We've been using AdaptlyPost to schedule Instagram, Facebook, LinkedIn (and Stories) across three brands. What I like most is that it stays out of the way once posts are queued. We schedule stills, carousels, and Reels/Stories in batches, review the calendar, and let it publish.

DacstyleDacstyle

How It Works

Step 1

Connect a Business or Creator Account, Then Mint a Key

Instagram's Graph API only publishes on behalf of a Business or Creator account, so that is the first thing to settle: a personal profile cannot be linked at all, and the OAuth handshake runs in the dashboard rather than over HTTP. Once the account is linked, Settings > API Tokens issues a key beginning with adaptly_ that rides in the Authorization header as a Bearer credential on every request. GET /social-accounts echoes back the linked Instagram profile along with the id you pass in instagramConnectionIds. When the accounts belong to your own clients, POST /connect-links mints a white-label link they open once to finish the Business login themselves.

Step 2

POST /Social-Posts With instagramConfigs

text (the caption, up to 2200 chars), platforms, and timezone are required on every call; there is no content field. contentType TEXT is rejected for Instagram, so every post needs media. Set contentType IMAGE, VIDEO or CAROUSEL, then instagramConfigs.postType = FEED | REEL | STORY. STORY takes one IMAGE or one VIDEO, and REEL takes only VIDEO. Any other pairing, including a CAROUSEL sent as a STORY, comes back as a 400. Carousels take 2-10 items, images must be jpeg, png or webp within Instagram's 8MB per-file ceiling, video must be mp4 or quicktime and 3 seconds to 15 minutes. The request body is validated synchronously, so a caption past 2200 characters, a carousel outside the 2-10 range, contentType TEXT, or a second Instagram connection in the same call all come straight back as a 400 from this request. One Instagram account per call, so fan out one call per account. The same call can carry other networks alongside Instagram.

Step 3

Read Per-Platform Results and Retry the Instagram Entry

There are two failure modes and they surface in two different places. Anything wrong in the payload is caught while we validate the create call and returns a 400 immediately: caption length, carousel item count, an unsupported contentType, duplicate Instagram connections. No post record exists in that case, so there is nothing to retry, just fix the body and send it again. Files that are not jpeg, png, webp, mp4 or quicktime are refused earlier still, at POST /upload-urls. What GET /social-posts/:id/results reports is what happened after we accepted and dispatched the post: the Instagram Graph API refusing the media during its own ingest, an account switched back to Personal, a token the user revoked, or Instagram's own publishing limits. Each entry carries status, publishedAt, errorMessage and the native platformPostId, never a permalink to the live post, and POST /social-posts/:id/retry re-fires only the failed platformIds.

Simple, Transparent Pricing

Choose the perfect plan for your needs

-17%

Creator

Perfect for individuals and solopreneurs

$19

/month

  • 30 connected social accounts

  • Unlimited scheduled posts

  • Team collaboration

  • 1 workspace

  • 150 AI credits/month

  • AI Captions

  • AI Image Studio

  • API/MCP/CLI

  • Image, video & carousel posts

  • Direct Connector

  • Direct Plugin

  • Browser extensions

Works with

Most Popular

Pro

For professionals and growing teams

$39

/month

  • 60 connected social accounts

  • Unlimited scheduled posts

  • 3 team members

  • 3 workspaces

  • 400 AI credits/month

  • AI Captions

  • AI Image Studio

  • API/MCP/CLI

  • Image, video & carousel posts

  • Direct Connector

  • Direct Plugin

  • Browser extensions

Works with

Enterprise

For agencies and enterprises ready to scale

$89

/month

  • 100 connected social accounts

  • Unlimited scheduled posts

  • 10 team members

  • 10 workspaces

  • 1000 AI credits/month

  • AI Captions

  • AI Image Studio

  • API/MCP/CLI

  • Image, video & carousel posts

  • Direct Connector

  • Direct Plugin

  • Browser extensions

Works with

Custom

Custom limits, white-label and priority support

Custom

  • Unlimited social accounts

  • Unlimited scheduled posts

  • Unlimited team members

  • Unlimited workspaces

  • Unlimited AI credits

  • AI Captions

  • AI Image Studio

  • API/MCP/CLI

  • Image, video & carousel posts

  • Direct Connector

  • Direct Plugin

  • Browser extensions

Works with

All plans include a 7-day free trial

Want to see the full feature comparison? View pricing page

What the API Can Publish to Instagram

Feed Images and 2-10 Item Carousels

contentType IMAGE for a single photo, CAROUSEL for 2 to 10 items in one post. Instagram takes stills as JPEG, PNG or WebP, with 8MB the ceiling on any one file. The caption field is text, capped at 2200 characters. Push files through POST /upload-urls (1-20 presigned URLs per call, each valid an hour) or pass your own hosted URLs.

Reels

contentType VIDEO with instagramConfigs.postType REEL, mp4 or quicktime, 3 seconds to 15 minutes. Instagram deprecated standalone feed video, so a plain VIDEO post lands as a reel regardless and REEL just makes it explicit. There is no cover-image, audio-track or collaborator field.

Image and Video Stories

instagramConfigs.postType STORY with contentType IMAGE or VIDEO publishes one Story. A Story holds a single file, so a CAROUSEL sent as a STORY comes back as a 400. Send one call per Story instead. No stickers, polls, link stickers or mentions are exposed.

Scheduled and Bulk Instagram Posts

Pass scheduledAt plus a timezone such as Europe/Berlin to schedule, or saveAsDraft and later POST /social-posts/:id/publish. POST /social-posts/bulk queues 1-100 posts that share the same Instagram connection, with scheduledAt required on each item. PATCH the post before it fires to swap the caption or the media.

Publish Your First Reel Over HTTP

Connect an Instagram Business or Creator account, generate an adaptly_ key in Settings > API Tokens, and POST to /social-posts. The OpenAPI 3.0.3 spec is public at https://post.adaptlypost.com/post/api/v1/openapi.json and imports straight into Make, n8n, or any OpenAPI client.