Error reference

Instagram API errors and troubleshooting

Understand Instagram Graph API errors around Meta sessions, business account eligibility, media containers, captions, product tags, publishing limits, and account restrictions. Use this page to choose between reconnecting Meta, rebuilding media containers, editing content, or waiting out a platform limit.

Last updated: May 2026

31 documented error patterns across 9 categories

Clear guidance on reconnecting, retrying, replacing media, or changing content

Official platform references plus bundle.social production troubleshooting notes

Error categories

Find the failure type first

31 documented errors

All error codes

Codes, causes, and fixes

Authentication

5 mapped cases

Authentication
REVOKED_ACCESS_TOKENReconnect

Instagram access token was revoked or disconnected from the Meta account.

Reconnect Instagram through Meta and approve all required permissions again. This often happens after removing app access, changing security settings, or switching business assets.

refresh-token
session has been invalidatedReconnect

The Meta session behind the Instagram token is no longer valid.

Ask the user to log into Facebook or Instagram, clear any security checkpoint, then reconnect the account to create a fresh token.

refresh-token
user is not a confirmed userReconnect

Meta cannot validate the connected user because the account is not confirmed.

Open Facebook or Instagram directly and complete pending email, phone, identity, or security confirmation steps before reconnecting.

refresh-token
the user is not an instagram businessFix input

The selected Instagram account is not eligible for the Instagram Graph API.

Switch the account to a Business or Creator account, connect it to a Facebook Page when required, then reconnect it in bundle.social.

user-error
Not enough permissions to postFix input

The token is valid, but it does not include the permissions required to publish content.

Reconnect the account and grant publishing permissions such as instagram_basic and instagram_content_publish. Check app review when this only fails for live users.

user-error

Account Status

1 mapped case

Account Status
2207050Fix input

Instagram restricted the account or blocked publishing for account-quality reasons.

Open Instagram and Meta Account Quality as the user. Resolve warnings, identity checks, spam restrictions, or policy appeals before retrying.

user-error

Media Upload

6 mapped cases

Media Upload
2207003Fix input

Instagram timed out while downloading media from the provided URL.

Use a public HTTPS media URL that responds quickly, avoids login pages, returns the right content type, and stays available during container creation.

user-error
2207052Fix input

Instagram could not fetch the image or video file.

Check redirects, signed URL expiry, bot protection, file permissions, and content-type headers. Generate a new media URL and retry.

user-error
2207020Fix input

The media container expired before it was published.

Create a fresh media container and publish it quickly. Do not reuse old creation IDs from previous attempts.

user-error
2207006Fix input

The media container or uploaded media reference was not found.

Start the upload flow again. Treat this as stale state, not as a post that should be retried with the same container ID.

user-error
2207032Retry later

Instagram failed to create the media container.

Retry once with a fresh container. If it repeats, validate the media file against Instagram size, codec, duration, and aspect-ratio rules.

retry
2207053Retry later

Instagram returned an unknown upload failure.

Retry after a short delay. If only one asset fails, re-export that asset and upload it again to rule out file corruption.

retry

Media Format

8 mapped cases

Media Format
2207004Fix input

The image file is too large for Instagram publishing.

Compress or resize the image before upload. Keep the file within Instagram image limits and preserve a supported format.

user-error
2207005Fix input

Instagram does not support the image format.

Convert the image to JPG or PNG and upload a clean version. Avoid HEIC, WebP, animated image formats, and mislabeled content types.

user-error
2207009Fix input

The media aspect ratio is outside Instagram publishing limits.

Crop or resize the image or video into an accepted Instagram ratio. Common safe choices are square, portrait 4:5, and landscape 1.91:1.

user-error
36003Fix input

The image crop or aspect ratio is invalid for the target Instagram surface.

Regenerate the asset for the selected post type. Check that feed, carousel, Reel, and Story assets use compatible dimensions.

user-error
36001Fix input

The image resolution is invalid for Instagram publishing.

Resize the image to a supported resolution and upload a new file. Avoid extremely small, extremely large, or incorrectly rotated images.

user-error
2207026Fix input

The video file format or codec is unsupported.

Export the video as MP4 with a supported video and audio codec. Replace the uploaded media instead of retrying the same file.

user-error
2207057Fix input

The requested video thumbnail offset is invalid.

Use a thumbnail offset that exists inside the video duration, or remove the custom offset and let Instagram choose the thumbnail.

user-error
2207023Fix input

Instagram could not determine the media type.

Send the correct media type for the endpoint and make sure the URL points directly to the final image or video file.

user-error

Content

3 mapped cases

Content
2207010Fix input

The Instagram caption is too long.

Shorten the caption before publishing. Keep captions under Instagram limits and avoid hidden extra characters from templates.

user-error
2207001Fix input

Instagram detected the post as spam or unsafe content.

Change the caption, hashtags, links, or posting pattern. Ask the user to review account status if similar content keeps failing.

user-error
2207051Fix input

Instagram blocked the request.

Wait before retrying, reduce repeated content, and check whether the account has a temporary restriction or suspicious activity prompt.

user-error

Product Tagging

4 mapped cases

Product Tagging
2207035Fix input

Product tag positions are not supported for videos.

Remove positioned product tags from video posts. Use product tags only where Instagram supports them for the selected media type.

user-error
2207036Fix input

Product tag positions are required for photo posts.

Send x and y product tag coordinates for each tagged product. Validate coordinates before submitting the post.

user-error
2207037Fix input

One or more product tags failed Instagram validation.

Verify product IDs, catalog access, shop eligibility, and tag positions. Remove invalid tags before retrying.

user-error
2207040Fix input

The post has too many product tags.

Reduce the number of tagged products and retry with a smaller set that matches Instagram product-tag limits.

user-error

Rate Limiting

2 mapped cases

Rate Limiting
Page request limit reachedFix input

Instagram limited page or account publishing for the current window.

Wait for the limit window to reset. Spread scheduled posts over time instead of retrying all failed jobs immediately.

user-error
2207042Fix input

The Instagram account reached its daily publishing limit.

Delay remaining posts until the next allowed window and throttle future schedules for that account.

user-error

Server

1 mapped case

Server
An unknown error occurredRetry later

Instagram returned a temporary or unspecified platform failure.

Retry with backoff and keep the raw Meta response for support. If it persists, check Meta platform status and retry later.

retry

Meta token or session expired

Instagram publishing uses Meta authorization. Password changes, revoked permissions, checkpoint prompts, or expired sessions can trigger token validation errors.

Media container failed or expired

Instagram publishing depends on media containers. If a container expires, fails processing, or was created for the wrong media type, retrying the final publish call will not help. Create a fresh container instead.

Most Instagram failures happen before the final publish step

Instagram Graph API publishing usually fails during Meta authorization, media container creation, media processing, or container publishing. If the media URL cannot be fetched or the container expires, retrying the final publish call will not help.

Media URLs must work for Meta, not just for your browser

A media URL can open correctly in a browser and still fail for Instagram if Meta cannot fetch it. Check signed URL expiry, redirects, bot protection, content-type headers, file permissions, and whether the URL points directly to the final image or video file.

How bundle.social helps

bundle.social separates Instagram failures by the stage where they happen: Meta authorization, media fetch, container creation, media processing, final publish, and rate limits. This helps support teams avoid useless reconnect requests when the real issue is an expired media URL, blocked crawler access, invalid aspect ratio, or stale container.

Retry safety

Retry only temporary platform failures, processing delays, timeouts, 5xx responses, and rate-limit errors after the platform allows it. Do not retry the same request when the failure is caused by expired tokens, missing permissions, unsupported media, invalid captions, duplicate content, account restrictions, or policy blocks. The same payload will usually fail again until the account, media, content, or platform-specific setting is fixed.

Official references

Platform APIs change. Use these links to confirm current error behavior and field support.

FAQ

Can Instagram API error messages change over time?

Instagram errors often combine Meta Graph codes, Instagram subcodes, and plain text messages. Exact wording can change, so confirm the failing stage first: authorization, container creation, media processing, or publish.

Should users reconnect the account for every failed post?

No. Reconnect Instagram when Meta tokens, scopes, page links, or account eligibility are failing. Do not reconnect for expired containers, unsupported media, caption limits, product tags, or temporary rate limits until that specific issue is fixed.

Does bundle.social hide the native platform error?

bundle.social keeps the Meta error details visible for debugging and turns common Instagram failures into clearer user actions for auth, containers, media, content, and account-quality problems.

Build with less platform drag

Use one API for social publishing workflows

Create account