> ## Documentation Index
> Fetch the complete documentation index at: https://docs.letmepost.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# instagram.media.required

> Instagram has no text-only post surface. Every IG post needs at least one media item.

## What it checks

`media.length >= 1` on Instagram posts. The caption (`text` field) is optional, but media is mandatory.

## Why

Instagram's Graph API has no "text-only feed post" endpoint. Every IG publish goes through the create-container flow, and the container requires either an `image_url` or a `video_url`. Without one, there's no API to call.

## Failure response

```json theme={"system"}
{
  "error": {
    "code": "preflight_failed",
    "rule": "instagram.media.required",
    "platform": "instagram",
    "message": "Instagram does not support text-only posts. Attach at least one image or video via `media: [...]`.",
    "remediation": "Provide a media item — Instagram's API has no text-only feed surface."
  }
}
```

## Remediation

Add at least one image or video. If you want a text-first post, [Threads](/platforms/threads) is where it goes; the same content with a Threads `accountId` on the target will publish text-only.

## Related

* [`instagram.media.mime_allowed`](/preflight/instagram-media-mime_allowed) — JPEG-only on the photo path.
* [`threads.text.required`](/preflight/threads-text-required) — Threads's mirror constraint.
