---
title: "Schedule an uploaded video"
method: POST
path: "/publishing/video/schedule"
tags: ["Platform"]
---

# Schedule an uploaded video

`POST /publishing/video/schedule`

## Request

- Base URL: `https://blitzreels.com/api/v1`
- URL: `https://blitzreels.com/api/v1/publishing/video/schedule`
- Auth: API key in header `Authorization`

Schedule one workspace video asset to YouTube, Instagram, Facebook, TikTok, LinkedIn, or Threads without requiring an existing BlitzReels project. Duration and dimensions must be processed first. Pending metadata returns a retryable conflict with media_asset_id before creating a publishing source or post.

## Request body

- object
  - `media_asset_id` string, required
  - `project_name` string, nullable
  - `caption` string, nullable
  - `contains_synthetic_media` boolean, nullable
  - `scheduled_for` string, required
  - `timezone` string, nullable
  - `include_affiliate_cta` boolean, nullable
  - `affiliate_tracking_url` string, uri, nullable
  - `affiliate_cta_text` string, nullable
  - `targets` union[], required
    - union
      - object
        - `platform` 'linkedin', required
        - `connection_id` string, nullable
      - object
        - `platform` 'threads', required
        - `connection_id` string, nullable
      - object
        - `platform` 'youtube', required
        - `connection_id` string, nullable
        - `title` string, nullable
        - `made_for_kids` boolean, nullable
        - `description` string, nullable
        - `privacy_status` 'private' | 'unlisted' | 'public', nullable
      - object
        - `platform` 'instagram', required
        - `connection_id` string, nullable
        - `trial_reel` boolean, nullable
        - `trial_graduation_strategy` 'MANUAL' | 'SS_PERFORMANCE', nullable
        - `share_to_feed` boolean, nullable
      - object
        - `platform` 'facebook', required
        - `connection_id` string, nullable
        - `title` string, nullable
      - object
        - `platform` 'tiktok', required
        - `connection_id` string, nullable
        - `publish_mode` 'direct_post' | 'draft', nullable
        - `privacy_level` 'PUBLIC_TO_EVERYONE' | 'FOLLOWER_OF_CREATOR' | 'MUTUAL_FOLLOW_FRIENDS' | 'SELF_ONLY', nullable
        - `allow_comment` boolean, nullable
        - `allow_duet` boolean, nullable
        - `allow_stitch` boolean, nullable
        - `cover_timestamp_ms` integer, nullable
        - `commercial_content_enabled` boolean, nullable
        - `brand_organic` boolean, nullable
        - `branded_content` boolean, nullable
        - `is_ai_generated` boolean, nullable
        - `consent_accepted` boolean, nullable

## Response `200`

Successful response

- object
  - `post_id` string, required
  - `status` 'scheduled', required
  - `scheduled_for` string, required
  - `project_id` string, required
  - `export_id` string, required
  - `source` 'media_asset', required
  - `source_media_asset_id` string, required
  - `targets` object[], required
    - `target_id` string, required
    - `connection_id` string, required
    - `platform` 'youtube' | 'instagram' | 'facebook' | 'tiktok' | 'linkedin' | 'threads', required
    - `status` 'scheduled' | 'publishing' | 'processing' | 'published' | 'draft_sent' | 'retrying' | 'failed' | 'cancelled' | 'manual_required', required
  - `next_actions` object[], required
    - `method` 'GET' | 'POST' | 'PATCH' | 'DELETE', required
    - `path` string, required
    - `reason` string, required

## Other responses

- `400`: Invalid input data
- `401`: Authorization not provided
- `403`: Insufficient access
- `500`: Internal server error

---

[API](https://skmtc.dev/blitzreels/apis/blitzreels-api.md) · [All operations](https://skmtc.dev/blitzreels/apis/blitzreels-api/llms.txt) · [OpenAPI document](https://skmtc.dev/blitzreels/apis/blitzreels-api/revisions/35608b12471d?raw)
