Configure a video slot
Configures one slot as a video, carousel, or story, and schedules it. A story (TikTok/Instagram only) is a single video OR a single image (provide exactly one of video_url or story_image_url), has no description, and is verified by an account-manager screenshot. Platform-specific fields are only stored on their own platform: tiktok_sound_url on TikTok, every instagram_* field on Instagram, every youtube_* field on YouTube. A field belonging to another platform is accepted and not stored, but it is no longer discarded in silence: the response lists those names in ignored_fields, next to platform, with an ignored_fields_note explaining why. Check ignored_fields on every 200 — an empty or absent list is the only proof that everything you sent landed. Some options are paid and charged the first time they are set, never refunded: story_repost_url, instant_repost_as_story, and setting either volume field. Scheduling: target_publish_date is the FIRST day of a 2-day publishing window, never a fixed date — the end day is derived as that day + 1 and cannot be chosen, so target_publish_end_date is refused here with a hint pointing at PATCH. The window that was actually stored comes back as target_publish_start_date / target_publish_end_date. auto_publish is per-video HERE and top-level-only on the batch endpoint. Requires active TokPortal Coverage on the resolved saved account, or permanent grandfathering: a due period renews automatically at the account's stored rate immediately before execution, and nothing starts if it cannot renew. See getAccountManagedSubscription.
Request
- Base URL: https://app.tokportal.com/api/ext
- URL: https://app.tokportal.com/api/ext/bundles/{id}/videos/{position}
- Auth: API key in header X-API-Key
Path parameters
Bundle ID.
1-based video slot position.
Headers
Send true (or 1/yes) to SIMULATE this call instead of executing it. A dry run performs the full validation and pricing path of the real operation and stops before the first write: no credits are debited, no rows are created, no webhooks fire, and no operator ever sees it. The response has the same shape and status as the real call and adds dry_run: true, dry_run_notice, and — on credit-spending operations — credits_would_charge carrying the real price. Errors are identical to the real call, which is the point: this is how you learn what an operation will do before paying for it. Rate limits are consumed normally, a supplied Idempotency-Key is ignored rather than burned, and identifiers returned by a dry run are synthetic (see DRY_RUN_ID_IN_LIVE_REQUEST).
Request body
Response
Configured video slot.
Changes
No recorded changes to this operation across all 1 revision of this API.