Schedule a post
schedule_postGive an existing draft (or approved post) a time. The post is validated for every account (all issues at once), checked against the key's caps and the X link allowance, and — when the workspace requires approval — must be APPROVED with unchanged content. schedule_at is ISO 8601 with an offset; the workspace timezone is used for display. Each account then publishes at its own staggered time (stagger_min/max_seconds on the post), plus its per_channel.delay_minutes when the post gives a network a later time. More than 10 accounts or a start within 60 minutes needs confirmation_token from the returned plan: without it you get needs_confirmation and details.plan (accounts by network, first and estimated last dispatch, X link-post cost, TikTok notes) to show your human. The post then goes out publicly on the person's real accounts: only schedule when your human asked to publish it. Scheduling needs the publish scope and a claimed sandbox. To move a scheduled post, call schedule_post again with the new time; cancel_post stops it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| confirm | No | Deprecated boolean; does not bypass confirmation. A confirmation_token is required when a schedule goes to more than 10 accounts, starts within 60 minutes, or includes a Pinterest account. Without it you get needs_confirmation with the dispatch plan; show it to your human, then resend with confirmation_token from the returned plan. | |
| post_id | Yes | ||
| schedule_at | Yes | ||
| workspace_id | Yes | Workspace id from list_workspaces | |
| idempotency_key | No | Any unique string you choose (REST: the Idempotency-Key header works too). Retrying with the same key and body returns the first result instead of creating a second one. Kept 24 hours. | |
| confirmation_token | No | Token returned by needs_confirmation or validate_post for this exact plan; expires after 15 minutes. |