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

# Publish & schedule

> Compose a post, tailor it per channel, translate it, validate before sending, schedule on the calendar, bulk-upload a plan, and retry a failed network.

## Compose a post

<Steps>
  <Step title="Open the composer">
    Click **New post**. Write your caption.
  </Step>

  <Step title="Add media">
    Upload a file (up to 500MB), pull one in from a public URL (up to 100MB; jpeg, png, webp, mp4 or mov), or generate an image from a text prompt. Instagram, TikTok and Pinterest require media; TikTok requires a video.
  </Step>

  <Step title="Pick your channels">
    Select accounts one by one, or pick an account group. Each channel gets its own character counter against that platform's real limit.
  </Step>

  <Step title="Publish or schedule">
    Send now, or pick a future time.
  </Step>
</Steps>

## Tailor the caption per channel

Every channel inherits the main caption until you edit it. Shorten it for X's 280 characters and keep the full write-up for LinkedIn; one post, several native versions.

## Post in multiple languages

In **Customize & translate per account**, each account has a language dropdown and a **Translate** button. Write once, pick a language per account, translate, and edit the result if you like. @mentions, #hashtags, URLs and emoji are kept intact and the translation is fitted to the platform's limit. To reach the same platform in two languages, connect one account per language.

## Carousels and Reels

Attach 2 to 10 images and Instagram publishes a carousel; LinkedIn takes up to 9, X, Bluesky, Mastodon and Discord up to 4 (see [Supported platforms](/guides/platforms)). A video to Instagram publishes as a Reel, and the composer lets you choose its cover frame. An agent can also render branded text slides with [`generate_carousel`](/agents/tools-reference#generate_carousel).

## Validate before you send

The composer flags a caption that's too long, missing required media, or aimed at an account that needs reconnecting before you publish, per channel. An agent gets the same check from [`validate_post`](/agents/tools-reference#validate_post).

## Publish now vs. schedule

<CardGroup cols={2}>
  <Card title="Publish now" icon="paper-plane">
    Sends immediately to every selected channel.
  </Card>

  <Card title="Schedule" icon="calendar">
    Queues the post. Scheduled posts publish on their own; you don't need to be online.
  </Card>
</CardGroup>

## The calendar and posting times

**Calendar** shows everything queued across the week; drag a post to a new slot to reschedule it. Draft and scheduled posts can be edited (caption or time) until they publish. Once a post is out the platforms already have it, so it can't be edited; repost a new version instead.

Under **Settings → Posting times** you can define your regular slots (weekdays, times, timezone). Bulk upload and the agent's [`get_next_slot`](/agents/tools-reference#get_next_slot) spread posts across those slots.

## Bulk upload

**Bulk upload** takes up to 50 videos or images at once. Pick the channels once, drop the files in, and each file becomes its own post with its own caption and a time spread across your posting schedule. It's the human counterpart of the agent's [`bulk_schedule`](/agents/tools-reference#bulk_schedule).

## Per-network results and retry

Each post fans out to one job per network, so a failure on one network never blocks the others. Open a published post to see, per network, the live URL of the published copy or the exact error, and a **Retry** button for the network that failed.

## Your links

With revenue attribution off (the default), links go out exactly as written. With it on, each link is replaced by a tracked link, or has a `cp_tid` parameter appended to your own URL, depending on the link mode you choose. See [Turn on revenue attribution](/guides/turn-on-revenue-attribution).

## Driving it from an agent

* [`schedule_post`](/agents/tools-reference#schedule_post): publish or schedule, with per-account captions and media.
* [`validate_post`](/agents/tools-reference#validate_post): dry-run before sending.
* [`bulk_schedule`](/agents/tools-reference#bulk_schedule): a whole calendar in one call.
* [`get_next_slot`](/agents/tools-reference#get_next_slot): the next free slot from your posting times.
* [`update_post`](/agents/tools-reference#update_post) / [`cancel_post`](/agents/tools-reference#cancel_post): edit or pull a scheduled post.

<Card title="Read the results" icon="chart-simple" href="/guides/engagement">
  Which platforms report likes, comments, shares and views back.
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.