Skip to content

PostEveryPlatform guide

Instagram scheduling limits

Instagram captions in PostEveryPlatform take up to 2200 characters, counted as Unicode characters. Attach an image or a video, then choose a feed post, Reel or Story.

Limits checked against our code on . These are checks in PostEveryPlatform, with our active posting partner.

Threads

No; parts join into one post. Check the joined text against the destination limit before scheduling.

A thread starts with the main post text. You add the later parts under it in the composer (agents send them as options.thread.parts). Check the final text for each destination: an override changes that account's text, while destinations without threads receive the parts joined together.

Images and video

The format controls the files you can attach. A video goes alone rather than alongside images or other videos. A PDF document also goes alone. Counts and sizes below are the composer's checks, rather than a promise about every file the network accepts. Aspect ratios mean width divided by height. Size and duration checks run when those measurements are known; unknown measurements are skipped.

FormatChecks
Feed postFiles: 10
Images: 10
Video: yes
Image MB: 8
Image width / height: 0.8 to 1.91
Video width / height: 0.01 to 10
Video seconds: 3 to 900
ReelFiles: 1
Images: 0
Video: yes
Video width / height: 0.01 to 10
Video seconds: 3 to 900
StoryFiles: 1
Images: 1
Video: yes
Image MB: 8
Video MB: 100
Image width / height: 0.01 to 1.6666666666666667
Video width / height: 0.01 to 1.6666666666666667
Video seconds: 3 to 60

Alt text

Image: delivery: up to 1000 UTF-16 code units (emoji and some symbols count as 2); feed posts only; not for Stories
Video: not available

Alt text is set per uploaded media ID in options.alt. It is trimmed, repeated whitespace is collapsed and the saved text is capped before the destination checks. Support depends on the file kind and the posting partner, so attaching a description to a file does not mean that every destination receives it.

First comment

Validation: 2200 Unicode characters; delivery: up to 2200 UTF-16 code units (emoji and some symbols count as 2). Before validation, first_comment is trimmed and truncated to 2200 UTF-16 code units. The posting adapter also truncates at 2200 UTF-16 code units.

A first comment and a delayed follow-up are separate settings. A follow-up uses options.follow_up and the account's own capabilities; do not use the first-comment ceiling to size a delayed reply.

Inbox and post analytics

Read and reply to imported comments. Hide: available where the comment permits it. Like: not available.

Post analytics reads: views, likes, comments, shares. Needs our posting partner's analytics access and a post reference; data may be unavailable.

Missing analytics should be treated as unavailable data. It does not establish that a post has no views or engagement. The inbox imports comments on your posts; it is not a general feed of everything said on the network.

Before you schedule

  • Attach a video for a Reel; a feed post and Story have different file checks.
  • Keep collaborators to 3 usernames and leave them off Stories.
  • Use trial reels only with Reel format and without collaborators.
  • Check image fit before scheduling; feed images can be padded or cropped when fit is set.

Title: Not available. Special option keys from the composer: collaborators, trial.

Preview the post after changing files, text or destination options. The composer checks the final account text and the selected format. Fix errors before scheduling; warnings explain changes or limitations that need a closer look.

Other text and cover checks

The shared text field is truncated to 63206 UTF-16 code units before platform validation. An emoji can use more than one unit. Video cover choices: image, offset. Cover images: up to 8 MB.

Known gaps

  • A Story takes no follow-up comments or collaborators.
  • Trial reels cannot include collaborators.
  • Video alt text is not available through the posting partner.

Ask an agent to prepare a post

Start with an account connected by the owner and an agent sign-in with read and draft permissions. This prompt asks for a draft you can inspect:

Use get_workspace and list_accounts. For my Instagram account, call get_account_options. Help me draft a behind-the-scenes post. Ask me for any required media or account choices. Run preview_post, explain every problem, then use create_post with when: "draft". Return the review_url. Do not schedule it.

The REST example saves a draft. Replace media IDs with files you uploaded and account choices with values from your account's capabilities and lists. For Reddit, replace the subreddit placeholder. To check the same body without saving, send it to /api/v1/posts/preview.

curl -s -X POST https://posteveryplatform.com/api/v1/posts \
  -H "Authorization: Bearer $PEP_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "text": "A look behind the scenes.",
  "platforms": [
    "instagram"
  ],
  "when": "draft",
  "media_ids": [
    "med_replace_with_uploaded_file"
  ],
  "options": {
    "targets": {
      "instagram": {
        "format": "post",
        "fit": "pad"
      }
    }
  }
}'

Scheduling uses when: schedule with scheduled_at, or when: queue for the next posting slot. The schedule permission is required. Scheduled agent posts wait for approval by default; the response tells you whether it is waiting and gives a review_url. With no plan or trial the workspace is read-only and writing answers plan_required. Find setup steps for your agent.

Questions about Instagram

How is caption length counted?

PostEveryPlatform counts Unicode characters, rather than bytes. The default limit here is 2200 characters; preview uses the connected account's limit.

What happens if a file has no measured dimensions?

Checks that need missing measurements are skipped. The preview still checks the measurements it has and the file kinds and counts.

Does an agent need my approval?

Scheduled and post-now agent posts wait for the owner by default. The response says whether approval is required and includes a review_url. A draft saves without scheduling.

Can I check a post without saving it?

Yes. Use preview_post over MCP or the REST preview endpoint. Read problems and warnings before asking to create or schedule it.

Is writing available without a plan?

A workspace with no plan or trial is read-only. Writing answers plan_required; reading, exporting and deleting remain available.

Compare every platform's checks · Full API reference