Instagram BulkPublish

Instagram API

Publish, schedule and manage Instagram from your own code. One REST API and one key cover Instagram and every other network you connect, so you write the integration once.

Instagram integration for BulkPublish

What the Instagram API covers

Everything below is part of the published API and works with Instagram today.

CapabilityEndpoint
Create, schedule, update and publish posts POST /api/posts
Upload images and video POST /api/media
Find the next free slot in your queue GET /api/posts/queue-slot
Create repeating schedules POST /api/schedules
Publish new items from an RSS feed POST /api/rss-feeds
Post a first comment automatically platformSpecific._firstComment
Publish a post as a Story POST /api/posts/{id}/story
Read per-post metrics GET /api/posts/{id}/metrics
Read and reply to comments on published posts GET /api/posts/{id}/engagement, POST /api/posts/{id}/comments/reply
Read and answer direct messages GET /api/inbox/conversations, POST /api/inbox/conversations/{id}/messages
Check that the connection is healthy GET /api/channels/{id}/health
Check your plan usage GET /api/quotas/usage

Post types you can publish to Instagram

Choose the type with postTypeOverrides. A type Instagram does not offer is rejected before anything is queued.

Post typeMedia
feed_photo Feed Photo Required: 1 image
feed_video Feed Video Required: 1 video
reel Reel Required: 1 video
story Story Required: 1 image or video
carousel Carousel Required: 2 to 10 images or videos

Schedule Instagram posts with curl

Three requests: find your channel, upload the file if the post has one, then create the post. Replace the key with one from Settings, then API keys, and 12 with your own channel id.

1. List your channels and note the id of your Instagram account.

curl https://app.bulkpublish.com/api/channels \
  -H "Authorization: Bearer bp_your_key_here"

2. Upload the file. The response gives you the media id used as mediaFiles below.

curl -X POST https://app.bulkpublish.com/api/media \
  -H "Authorization: Bearer bp_your_key_here" \
  -F "file=@clip.mp4"

3. Create the post.

curl -X POST https://app.bulkpublish.com/api/posts \
  -H "Authorization: Bearer bp_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
  "content": "Behind the scenes of launch day",
  "channels": [{ "channelId": 12 }],
  "status": "scheduled",
  "scheduledAt": "2026-12-01T09:00:00Z",
  "mediaFiles": [101],
  "postTypeOverrides": {
    "instagram": "reel"
  },
  "platformSpecific": {
    "instagram": {
      "collaborators": "bulkpublish",
      "thumbnailTimestamp": 2
    }
  }
}'

The response is the created post, with its id and status. Fetch it later with GET /api/posts/{id} to see how it went.

Instagram options

Send these inside platformSpecific, under the key for Instagram.

OptionWhat it doesAccepts
collaborators Usernames to tag as co-authors text
shareToStory Also share to a Story true or false
trialReel Publish as a trial Reel true or false
graduationStrategy How a trial Reel becomes a normal one manualauto
thumbnailTimestamp Cover frame, in seconds from the start a number
coverUrl Cover image, from a public URL text

Instagram analytics through the API

These metrics come back for each Instagram post on GET /api/posts/{id}/metrics, with snapshots over time.

  • Impressions
  • Reach
  • Likes
  • Comments
  • Shares
  • Saves
  • Engagement rate

Comments and messages

Through the API you can read and reply to comments on published posts and read and answer direct messages.

Replies on Instagram are accepted within 24 hours of the person's last message.

Reading comments works on every plan. Replying to comments needs a paid plan, and the inbox is part of Pro and Business. Until a feature is switched on for your account the API answers 403 with a code you can check for.

API access on every plan

Every plan includes API keys, the Free plan included. Here is what each one allows.

PlanAPI keysRequests per day
Free 1 30
Pro 5 5,000
Business 10 50,000

Build on Instagram directly, or use BulkPublish

Going direct is a fair choice, especially if you need something BulkPublish does not expose. This is what Instagram Platform API asks of you, checked against its documentation in October 2026.

  • Publishing requires a professional account.
  • Documented limit: 100 API-published posts in 24 hours.
  • Media is fetched from a public URL that you have to host.
  • A post with media takes several calls: upload or create, wait for processing, then publish.
  • Access tokens last about 60 days, so you need your own way to refresh or reconnect before they lapse.

BulkPublish keeps the connection for you: it refreshes tokens, checks each post against Instagram's rules before it is queued, and reports a failed destination on the post, so your code makes one request.

Prefer to ask an assistant?

Claude, ChatGPT and Cursor can do the same through the Instagram MCP server, with prompts instead of code.

Prefer a calendar to code?

The same Instagram account can be scheduled from the app, with a content calendar and bulk upload.

Frequently asked questions

Common questions about the Instagram API.

Is there a ready-made API for Instagram, so I do not have to build the integration myself?

Yes. BulkPublish exposes Instagram through its REST API. Connect your Instagram account once, then publish, schedule and manage it with a key. The same key works for every other network you connect.

What can I publish to Instagram through the API?

The post types are Feed Photo, Feed Video, Reel, Story, and Carousel. Each is checked against Instagram's media rules before anything is queued, so a request Instagram would reject fails straight away with a clear error.

Can I schedule Instagram posts through the API?

Yes. Send status "scheduled" with a scheduledAt time and a timezone, or ask for the next free slot in your queue first. Repeating schedules and RSS feeds are available too.

Can I read Instagram analytics through the API?

Yes. Per-post metrics include Impressions, Reach, Likes, Comments, Shares, Saves, and Engagement rate, with snapshots over time.

Can I read and answer Instagram comments or messages through the API?

Yes. You can read and reply to comments on published posts and read and answer direct messages. Replying to comments needs a paid plan, and the inbox is part of Pro and Business.

Does the Instagram API cost extra?

No. API access is on every plan. Free includes 1 key and 30 requests a day, Pro 5 keys and 5,000 a day, Business 10 keys and 50,000 a day.

Do I need a Instagram developer account or an app review?

Not to use BulkPublish. You connect your Instagram account on the Channels page and publish with a BulkPublish key. If you build on Instagram's own API instead, the section above lists what it asks of you.

Can an AI assistant do this too?

Yes. The Instagram MCP server page shows how to connect Claude, ChatGPT or Cursor and what to ask for.

The same key and the same request shape work for 15 networks.

Start publishing to Instagram from code

Create a free account, connect Instagram and generate a key. No card needed.