Upload Video
Upload video to various social media platforms using this endpoint.
Endpoint
POST /api/upload
Headers
Name | Value | Description |
---|---|---|
Authorization | Apikey your-api-key-here | Your API key for authentication |
Common Parameters
Name | Type | Required | Description |
---|---|---|---|
user | String | Yes | User identifier |
platform[] | Array | Yes | Platform(s) to upload to (e.g., "tiktok", "instagram", "linkedin", "youtube", "facebook", "twitter", "threads") |
video | File | Yes | The video file to upload |
title | String | Yes | Title of the video |
Platform-Specific Parameters
TikTok
For more information about Tiktok API parameters, visit the Tiktok API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
privacy_level | String | No | Privacy setting ("PUBLIC_TO_EVERYONE", "MUTUAL_FOLLOW_FRIENDS", "FOLLOWER_OF_CREATOR", "SELF_ONLY") | "PUBLIC_TO_EVERYONE" |
disable_duet | Boolean | No | Disable duet feature | false |
disable_comment | Boolean | No | Disable comments | false |
disable_stitch | Boolean | No | Disable stitch feature | false |
cover_timestamp | Integer | No | Timestamp in milliseconds for video cover | 1000 |
brand_content_toggle | Boolean | No | Enable branded content | false |
brand_organic | Boolean | No | Enable organic branded content | false |
branded_content | Boolean | No | Enable branded content with disclosure | false |
brand_organic_toggle | Boolean | No | Enable organic branded content toggle | false |
is_aigc | Boolean | No | Indicates if content is AI-generated | false |
Instagram
For more information about Instagram API parameters, visit the Instagram Graph API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
media_type | String | No | Type of media ("REELS") | "REELS" |
share_to_feed | Boolean | No | Whether to share to feed | true |
collaborators | String | No | Comma-separated list of collaborator usernames | - |
cover_url | String | No | URL for custom video cover | - |
audio_name | String | No | Name of the audio track | - |
user_tags | String | No | Comma-separated list of user tags | - |
location_id | String | No | Instagram location ID | - |
thumb_offset | String | No | Timestamp offset for video thumbnail | - |
LinkedIn
For more information about LinkedIn API parameters, visit the LinkedIn Marketing API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
description | String | No | The user generated commentary for the post | Title param |
visibility | String | Yes | Visibility setting ("CONNECTIONS", "PUBLIC", "LOGGED_IN", "CONTAINER") | "PUBLIC" |
YouTube
For more information about YouTube API parameters, visit the YouTube Data API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
description | String | No | Description of the video | Title param |
tags | Array | No | Array of tags | [] |
categoryId | String | No | Video category | "22" |
privacyStatus | String | No | Privacy setting ("public", "unlisted", "private") | "public" |
embeddable | Boolean | No | Whether video is embeddable | true |
license | String | No | Video license ("youtube", "creativeCommon") | "youtube" |
publicStatsViewable | Boolean | No | Whether public stats are viewable | true |
madeForKids | Boolean | No | Whether video is made for kids | false |
Facebook
For more information about Facebook API parameters, visit the Facebook Graph API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
description | String | No | Description of the video | Title param |
video_state | String | No | Desired state of the video ("DRAFT", "PUBLISHED", "SCHEDULED") | "PUBLISHED" |
Threads
For more information about Threads API parameters, visit the Threads API documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
description | String | No | The user generated commentary for the post | Title param |
X (Twitter)
For more information about X API parameters, visit the X API Post Creation documentation.
Name | Type | Required | Description | Default |
---|---|---|---|---|
tagged_user_ids | Array | No | Array of user IDs to tag | [] |
reply_settings | String | No | Who can reply ("following", "mentionedUsers", "everyone") | "following" |
nullcast | Boolean | No | Whether to publish without broadcasting | false |
place_id | String | No | Location place ID | - |
poll_duration | Integer | No | Poll duration in minutes | 1440 |
poll_options | Array | No | Array of poll options | [] |
poll_reply_settings | String | No | Who can reply to poll ("following", "mentionedUsers", "everyone") | "following" |
Example Requests
Upload a Video to TikTok
curl \
-H 'Authorization: Apikey your-api-key-here' \
-F 'video=@/path/to/your/video.mp4' \
-F 'title="Your Video Title"' \
-F 'description="Your video description"' \
-F 'user="test"' \
-F 'platform[]=tiktok' \
-F 'tags[]=hashtag1' \
-F 'tags[]=hashtag2' \
-X POST https://api.upload-post.com/api/upload