Schedule a post
schedule_postCreate a post for one or more connected accounts and schedule it, or save it as a draft. Instagram, TikTok, YouTube and Pinterest REQUIRE media; X, LinkedIn, Facebook, Threads, Bluesky and Google Business accept text alone. Media is passed as a public https link that the platform fetches when the post publishes — so it must still work then, not just now. The caption is checked against each platform's limit and refused if too long, never cut short. Posting to TikTok also needs tiktokPrivacy, chosen by the person — ask them; TikTok does not allow a default. Use check_draft first to test the caption against the account's hook rules. Afterwards, get_post confirms what was saved, update_post changes it and cancel_post removes it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| caption | No | The caption as it should appear. Optional when media is supplied. Limits: X 280, Bluesky 300, Threads 500, Pinterest 500, Google Business 1,500, Instagram 2,200, TikTok 2,200, LinkedIn 3,000, YouTube 5,000, Facebook 63,206. | |
| mediaUrls | No | Public https links to the images or video to attach. Required for Instagram, TikTok, YouTube and Pinterest. Kind comes from the file extension; append #video or #image to a link without one. A file attached to the chat is not a link and cannot be used. | |
| accountIds | Yes | One or more account ids from list_connections, e.g. ["3f2a9c..."]. The post goes to every account listed. | |
| tiktokPrivacy | No | Required when any target is TikTok: who can see the post — public, friends, or private (only the account owner). Ask the person; TikTok requires them to choose and allows no default. Only public posts can be measured, so performance and hook tests need public. | |
| scheduledAtUtc | No | When to publish, as an ISO-8601 UTC timestamp such as 2026-10-20T17:00:00Z — convert from the person's time zone first. Must be in the future. Omit to save a draft for the person to review. |