Skip to content

PostEveryPlatform guide

Pinterest scheduling limits

Pinterest captions in PostEveryPlatform take up to 500 characters, counted as Unicode characters. An image is required, and the pin title and destination link are separate fields.

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
PostFiles: 1
Images: 1
Video: no
Image MB: 5

Alt text

Image: validation: 500 Unicode characters; delivery: up to 500 UTF-16 code units (emoji and some symbols count as 2)
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

Not available. Leave first_comment out for this destination.

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

Pinterest comments are not available. Hide: not available. 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

  • Set a pin title up to 100 characters, or check the title derived from the first text line with words.
  • Pick a board from the connected account's list; if none is set, the first board is used.
  • Use options.targets.pinterest.link for the destination URL.

Title: 100 (Pin title). Special option keys from the composer: title, link.

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.

Known gaps

  • Pinterest comments are not available in the inbox.
  • First comments and threads are not available.
  • Video-only posts cannot pass the current product checks: an image is required, and images cannot be mixed with video.

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 Pinterest 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": [
    "pinterest"
  ],
  "when": "draft",
  "media_ids": [
    "med_replace_with_uploaded_file"
  ],
  "options": {
    "targets": {
      "pinterest": {
        "title": "Behind the scenes",
        "link": "https://example.com/story"
      }
    }
  }
}'

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 Pinterest

How is caption length counted?

PostEveryPlatform counts Unicode characters, rather than bytes. The default limit here is 500 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