Back to Blog
6 min read

Instagram AI Label: Meta's API vs Our Documented Fields

Meta documents an AI disclosure flag for Instagram publishing. Here is what changed—and what Status 200 Uploads documents today.

Instagram AI Label: Meta's API vs Our Documented Fields

Short answer: Meta's Instagram API can apply the AI info label when creating a media container, according to its June 22, 2026 changelog. Meta documents is_ai_generated for creating an Instagram media container. Do not assume that sending the same field through a different publishing API applies the label: Status 200 Uploads' public API documentation checked on November 7 does not list that Instagram option.

Key Takeaways

Point Details
What changed Meta's dated changelog describes self-disclosure of AI-generated content at publish time.
Where the field belongs Meta's Instagram media-container creation request; for a carousel, its parent container only.
Product boundary A Meta parameter is not automatically a supported Status 200 Uploads option.
What to do now Check the publishing tool's documented fields before relying on automated disclosure.

What Meta announced—and when

The primary source is the Instagram Platform changelog entry dated June 22, 2026, under AI Info Label. Meta says the Content Publishing API supports self-disclosure at publish time. Its instruction is to set is_ai_generated to true when creating a media container to apply the AI info label.

The entry says the change applies to all versions and is available with both Facebook Login and Instagram Login. It also names a readback field on IG Media. Those are statements about Meta's API, not a release announcement for Status 200 Uploads.

This is an existing platform change worth checking against your workflow, not a claim that Instagram launched something today. The distinction matters: a reader should not mistake a November explanation for the June announcement date.

Two APIs, two contracts

Question Meta's Instagram API Status 200 Uploads public docs checked November 7
Where is the request sent? POST /{ig_user_id}/media for container creation POST /api/v2/posts for a post
How is AI disclosure described? is_ai_generated=true applies the AI info label No Instagram disclosure parameter listed in the public request documentation checked
What about a carousel? Flag goes on the carousel container only Do not translate that instruction into an undocumented product field
What can be read back? Meta names GET /{ig_media_id}?fields=is_ai_generated A product post status is not proof of this Meta field's value

If an integration wraps another service, the wrapper defines the fields it accepts and uses. Copying a field from a platform changelog into a wrapper's JSON is not evidence that it reaches the platform. Treat the two request shapes separately rather than guessing a camelCase conversion.

For the full supported request shape, use our API reference. For media constraints, read file size limits. The older Instagram originality explanation covers a different subject; this article should not be read as an update to originality or distribution rules.

A documented API example, without an invented disclosure option

Our API reference shows an Instagram Reel request with accountId, platform, content.text, content.mediaID, instagram.postType, and instagram.shareToFeed. It also documents dryRun: true next to post: validation runs without sending a post.

This example combines those documented fields. It is illustrative, not an executed publish test. Replace the profile and media ID with your own values for a ready file on your account.

curl -X POST 'https://status200uploads.com/api/v2/posts' \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer rl_your_api_key' \
  -d '{
    "dryRun": true,
    "post": {
      "accountId": "@myprofile",
      "platform": "instagram",
      "content": {
        "text": "Review this Reel before publishing.",
        "mediaID": ["a1b2c3d4-e5f6-7890-abcd-ef1234567890"]
      },
      "instagram": {
        "postType": "reel",
        "shareToFeed": true
      }
    }
  }'

There is deliberately no is_ai_generated field in this example. It does not apply an AI info label and must not be presented as a disclosure workflow. A successful dry run would establish only what the validation response actually says, not that an undocumented platform feature worked.

The API documentation also warns that fields not used can appear in a successful response's warnings. A request being accepted is therefore not enough to conclude that every option took effect. Read the warnings as well as the status.

A review checklist for your next cross-post

The following is editorial workflow advice, not an additional platform requirement.

First, separate the content decision from the transport decision. Record whether your team intends to disclose AI generation. Then record which publishing path is supposed to carry that disclosure. Do not leave the second answer as “the scheduler probably handles it.”

Second, write down the source of each field in your request. If the only source for an Instagram field is Meta's documentation, but your request goes to a wrapper, pause until the wrapper documents it too. Keep your production payload limited to fields that your actual publishing service describes.

Third, make the review outcome explicit. “The Reel was accepted” and “the label is confirmed” are different statements. Put them in separate checklist items so that the first does not silently stand in for the second.

Fourth, if a disclosure feature is required for your intended post and the chosen publishing path does not document it, hold that post on that path. Ask for confirmation rather than publishing first and assuming a repair will be possible later. This article does not verify any after-publication method for changing the label.

Finally, keep the date of your documentation check. A future product update could change the answer. The narrow conclusion here is about the public documentation checked on November 7, not a permanent claim about what the product can never support.

Before handing the workflow to someone else, leave a short review note with three things: the public documentation URL, the exact payload your team intends to use, and what remains unconfirmed. That note makes an assumption visible before it becomes a production habit. If a teammate cannot point to documentation for the disclosure field on the service actually receiving the request, keep the disclosure step marked unresolved rather than treating a successful upload as evidence.

What this does not prove about reach

The cited June changelog explains a parameter and its label. It does not establish that cross-posting AI content reduces reach, that labels improve reach, or that using a scheduler changes recommendation eligibility. None of those conclusions follows from a field being available.

That is why this is a compatibility note rather than a ranking guide. This update explains an API disclosure option, not a universal verdict about cross-posting performance. Avoid turning a useful technical change into an unsupported algorithm headline.

FAQ

Did Instagram add this feature today?

No. The cited changelog entry is dated June 22, 2026. This draft reviews its implications against product documentation checked November 7.

What does is_ai_generated=true do in Meta's API?

Meta says it applies the AI info label when creating a media container.

Where does the flag go for a carousel?

Meta says to set it on the carousel container only.

Can I add the same flag to a Status 200 Uploads request?

Do not rely on that. The public Instagram options checked for this draft do not document it. No runtime support test was performed.

Does a dry run confirm the AI label?

No. The example contains no disclosure field. It validates a documented Reel request without sending it.


Sourced