Instagram Scheduler

Instagram scheduler for SaaS products and multi-account teams

Reels, Stories, and carousels for unlimited connected Instagram accounts, on one calendar with your other 14 channels.

Run Instagram for every account your product or your team publishes for, with Reels, Stories, and carousels in one calendar and Meta permission state tracked per account instead of per login.

Last updated: July 2026

One API key. No per-account fees. 15 platforms.

API key authScheduled publishing15 platforms
Quick start
API request
1await fetch("https://api.bundle.social/api/v1/post", {2  method: "POST",3  headers: {4    "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY,5    "Content-Type": "application/json"6  },7  body: JSON.stringify({8    teamId: "team_123",9    title: "Instagram campaign",10    postDate: "2026-05-14T10:00:00.000Z",11    status: "SCHEDULED",12    socialAccountTypes: ["INSTAGRAM"],13    data: {14      INSTAGRAM: { text: "Scheduled from bundle.social." }15    }16  })17});
Official APIs500k+ connected accountsDirect engineer support

What native Instagram publishing leaves to your team

Instagram looks simple until Reels, Stories, carousels, media rules, and Meta permissions hit your roadmap.

What bundle.social handles

Plan Instagram campaigns in the same workspace as TikTok, LinkedIn, Facebook, X, and the rest of your launch calendar.

Keep Instagram in the same workflow as every other channel

Your designer shouldn't be logging into Meta Business Suite every time the campaign brief changes. Handle Reels, Stories, and carousels without bouncing between five different tabs.

Workflow

How it works

Connect accounts once, then create and schedule posts with channel-specific fields from one API.

01

Create an API key

Generate an organization API key in the dashboard and use it with the x-api-key header.

02

Connect accounts

Connect each social account once. bundle.social keeps the account mapping ready for future posts.

03

We run the container flow for you

Instagram needs a media container, a processing poll, and a separate publish call. You send one request; bundle.social creates the container, polls until the media finishes processing, publishes it, and surfaces a single failure reason if any stage rejects the post.

Product architecture

Build social media workflows without rebuilding every platform

Instagram scheduler for Reels, Stories, carousels, and feed posts

SaaS products, technical teams, and the agencies and brands they publish for are the heaviest users of an Instagram scheduler, and rarely for one feed. The work is Reels, Stories, carousels, captions, visual assets, collaborators, and campaign timing spread across several connected accounts, each carrying its own chain of Facebook Page, linked Professional account, granted permissions, and token.

bundle.social puts Instagram planning and publishing in one workspace, tracked per account. Draft content, attach media from the library, schedule per account, review before anything goes live, and follow post status without opening the Instagram app or building an API workflow first.

Visual content needs review before it needs automation

Instagram is where creative approval genuinely matters. Reels, Stories, and carousels each have their own framing, aspect ratios, and asset requirements, and a campaign usually involves a designer, a copywriter, and someone who signs off. A scheduler that only stores a publish date leaves that coordination in chat threads.

Drafts, assets, notes, and scheduled timing live together in bundle.social, so client campaigns are reviewed and approved in the same place they are planned. Instagram-specific fields stay available for the teams that need them while approvals and calendar visibility stay shared with every other channel.

The same shoot feeds Instagram, TikTok, and Pinterest

Instagram is rarely planned in isolation. The same shoot becomes a Reel, a TikTok video, a Pinterest Pin, and a Facebook post, and after publishing the team needs engagement data, audience context, and the comments that arrived underneath.

Instagram scheduling, post status, analytics, audience demographics, and comment workflows sit in one workspace, with the developer API available when the same content has to be automated. Instagram publishing still depends on Meta permissions and account eligibility, so those constraints stay visible in the calendar.

Let your own users connect their Instagram accounts

Instagram is the connection that fails most often, so the portal exposes the three settings that decide whether a non-technical user finishes on the first try: whether they connect through Facebook or directly through Instagram, whether browser login is forced to route around the Instagram iOS app deep-link bug, and whether the Facebook business scope modal is skipped.

You generate a hosted portal link, your user connects their own Instagram account through it, and bundle.social stores and refreshes the token. The link carries your branding, expires on a window you set between 5 minutes and 48 hours, and means you never implement Instagram Graph API OAuth yourself. Publishing from your own code instead of the dashboard uses the same connected accounts.

Capabilities

Instagram scheduling with the workflows your team already uses

Instagram fits into the same scheduling, media, and status workflow as every other channel.

Instagram in your cross-platform calendar

Plan and schedule Instagram content alongside Instagram, LinkedIn, X, TikTok, and every other channel without switching between native dashboards.

Channel-specific field control

Instagram content still uses the options and fields the platform supports. No generic template that loses native capabilities.

Team review and approvals

Marketing teams can draft, review, and approve Instagram content in the shared calendar before anything publishes.

Media library for campaigns

Upload visuals, videos, and documents once and attach them to Instagram posts using upload IDs across your content plan.

Post status tracking

See whether each Instagram post is scheduled, processing, posted, or failed without checking the native platform dashboard.

Analytics where available

Pull Instagram performance data and import post history for connected accounts where the platform API and permissions allow it.

Planner-first Instagram workflow

Use the calendar to coordinate Reels, Stories, feed posts, and carousel ideas before the content moves into API-level publishing details.

Review across every connected account

Draft and approve Instagram content for client campaigns while keeping visual assets, notes, and scheduled timing in one workspace.

Developer example

Schedule Instagram content

Examples use bundle.social's public API shape: API key authentication, a post date, selected social account types, and platform-specific data.

TypeScript
API request
1await fetch("https://api.bundle.social/api/v1/post", {2  method: "POST",3  headers: {4    "x-api-key": process.env.BUNDLE_SOCIAL_API_KEY,5    "Content-Type": "application/json"6  },7  body: JSON.stringify({8    teamId: "team_123",9    title: "Instagram campaign",10    postDate: "2026-05-14T10:00:00.000Z",11    status: "SCHEDULED",12    socialAccountTypes: ["INSTAGRAM"],13    data: {14      INSTAGRAM: { text: "Scheduled from bundle.social." }15    }16  })17});

Supported content

Feed postsReelsStoriesCarouselsImagesVideosTags

Honest limitations

  • Instagram publishing still depends on Meta permissions and account eligibility.

Guarantees

Developer-first infrastructure

Visible post status

Track scheduled, processing, posted, retrying, and error states per post.

Verbose errors

When native APIs fail, we return human-readable error messages and actionable recovery steps.

Flat pricing

No per-post counting. Predictable pricing for teams managing many users, workspaces, and connected accounts.

Same-day support

Direct access to the engineers building the API. We respond to technical issues the same day, sometimes the same hour.

FAQ

Questions developers ask before building

Why did one Instagram account stop publishing while the rest kept working?

Almost always a broken link in that account's own chain: the Facebook Page, the Instagram Professional account attached to it, the granted permissions, or the token behind them. Each connected account carries that chain independently, so one client changing a Page role breaks exactly one account. bundle.social reports connection state per account, so you know which one to reconnect instead of seeing a generic publishing error.

Can I schedule a Reel and a carousel in the same post?

No, because Instagram treats them as different media rules: a feed carousel accepts up to 10 items, a Reel exactly one video, a Story exactly one item. A carousel scheduled as a Reel is rejected. bundle.social validates the item count against the post type before publish, so the mismatch surfaces in the composer instead of hours later.

Do we pay per connected Instagram account?

No. Pricing is per organization, not per profile or channel, so connecting a client's account costs nothing extra. Pro includes unlimited connected accounts and 10,000 posts a month, which is why connecting dormant and small accounts costs nothing extra.

Why use bundle.social for Instagram instead of Meta's own tools?

Because Meta's tools assume one brand logging in, and the work that actually costs you is per account: the Facebook Page, the linked Instagram Professional account, the granted permissions, and a token any client can invalidate without telling you. bundle.social runs the container flow, tracks that chain per account, and tells you which specific account needs a reconnect. Instagram is then one channel in the same calendar as everything else rather than a separate login.

Can our own users connect their own Instagram accounts?

Yes. You generate a hosted portal link carrying your own branding, and bundle.social stores and refreshes the Instagram token, so a reconnect is something your user can do without a support ticket.

Can Instagram run in the same calendar as our other channels?

Yes, and the per-platform differences stay per platform. One scheduled post can target several channels at once, with a INSTAGRAM object carrying only the fields Instagram needs.