Schedule posts
batch_schedule_postsSchedules multiple draft video posts in a single call. Equivalent to calling schedule_post for each post but batched — use this when scheduling more than one post. Pass scheduled_for (every post gets that time) or use_next_slot: true (each upload takes the next free saved posting time, in the order given, and all of an upload's platforms share it, like the app's bulk scheduling). Pass recurrence to repeat each upload on a cadence ("Repeat this post", same shape as the public API). Returns per-post results so you can see which succeeded and which failed.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| recurrence | No | "Repeat this post": publish the same post again on a cadence, like the app's Repeat option. scheduled_for is occurrence 1. Max 12 occurrences in total; each occurrence counts as one upload credit. | |
| scheduled_for | No | ISO 8601 timestamp for when all posts should publish. Max 1 year out. Times in the past are nudged to now + 30 seconds. Required unless use_next_slot is true. | |
| use_next_slot | No | Give each upload the next free saved posting time (see get_posting_slots) instead of one shared scheduled_for. | |
| video_post_ids | Yes | Array of video_posts.id values to schedule (max 50). Typically obtained from create_post_draft or create_post_drafts. | |
| idempotency_key | No | Optional client-generated key (e.g., a UUID) to make retries safe. Identical calls with the same key within 10 minutes return the original result instead of running the write twice. | |
| notify_on_success | No | Email the user when each post successfully publishes. Defaults to false. |