Instagram

Instagram posting API. Post images, carousels and Reels from your own backend.

Images, mixed-media carousels and videos that publish as Reels, on connected professional accounts. You create a publish job and poll it until it reaches published.

POST /publishing/jobs          -> pending

GET  /publishing/jobs/{id}     -> processing
GET  /publishing/jobs/{id}     -> submitted
GET  /publishing/jobs/{id}     -> published

// requestedPublishAt schedules the job.
// clientRequestId makes a retry safe.

Images, carousels and Reels.

One image, a carousel that mixes images and video, or a video that publishes as a Reel.

Professional accounts.

Instagram Business and Creator accounts, connected through the platform OAuth flow.

Create a job, poll it.

Publishing is asynchronous. The job moves through states from pending to published.

100 posts per account.

Each connected account publishes 100 posts per billing period, and a limits endpoint reports live usage.

// endpoints

  • POST /publishing/jobs
  • GET /publishing/jobs
  • GET /publishing/jobs/{id}
  • POST /publishing/jobs/{id}/cancel
  • POST /publishing/jobs/{id}/retry

// Instagram rules, validated before anything is sent

  • ● Professional accounts only: Business or Creator.
  • ● Images, mixed-media carousels, and videos. A video publishes as a Reel.
  • ● Media is passed as public URLs in the job. There is no upload endpoint.
  • ● 100 posts per connected account per billing period.
  • ● Insights need the insights scopes. A publishing-only connection adds them with a reconnect.
Instagram FAQ

Things developers ask first.

What can I publish to an Instagram account?

Images, carousels that mix images and video, and videos. A video publishes as a Reel. Media is passed as public URLs in the job, so you host the file and we fetch it.

Do I need an Instagram Business account?

You need a professional account, which means Business or Creator. Personal accounts cannot publish through the platform API. The account is connected once through OAuth and belongs to your organization.

How do I know when the post is live?

Poll the job until it reaches published. One job can target several connected accounts, and each target gets its own delivery outcome. Every failure carries a category, a code, and what to do next.

How many posts can each account publish?

Each connected account publishes 100 posts per billing period. The limits endpoint shows the configured limit, current usage and remaining allowance, so your code can check before it publishes.

Can I read Instagram insights too?

Yes, on professional accounts. Insights live in the dashboard and as an MCP tool rather than as a key scope. A connection made for publishing only is upgraded with a one-click reconnect.

How do I post to Instagram through the API?

Connect the Instagram professional account once in the dashboard, then send one publishing job with the target account, the caption and public media URLs. The job returns right away. Poll it until it reaches published, or read the failure category if it does not.

Can I schedule Instagram posts through the API?

Yes. Set requestedPublishAt when you create the job and it publishes at that time. A scheduled job can be canceled before it is dispatched, which is where a review step fits.

Can I automate Instagram posts with the API?

Yes, through the official Instagram API, not by logging in as the user. Your code or your agent creates the jobs, and clientRequestId makes a retried request safe, so a timeout never becomes a double post.

Can I post Instagram Stories?

Not today. The API publishes images, carousels that mix images and video, and videos that publish as Reels.

Make your next tool real.

Try it free for 7 days. Instagram and X APIs, with MCP included.

Or talk to a human. support@invisibleapi.ai