This endpoint allows you to upload a video in a single request. You must provide either a socialId or a groupId to specify the target social media platform(s).
POST /upload/video
| Header | Description |
|---|
x-api-key | Your API key. |
Body (form-data)
| Parameter | Description | Required |
|---|
title | The title of the post. | Yes |
video | The video file. | Yes |
socialId | The ID of the social media account to post to. | One of socialId or groupId is required. |
groupId | The ID of the group to post to. | One of socialId or groupId is required. |
The following options can be provided at the top level of the form-data to customize the post for each platform.
YouTube Options
| Option | Description | Default |
|---|
description | Description of the video. | |
tags[] | An array of tags for YouTube. | |
categoryId | Video category ID. | |
privacyStatus | Privacy setting ("public", "unlisted", "private"). | "public" |
embeddable | true or false. Whether the video is embeddable. | true |
license | Video license ("youtube" or "creativeCommon"). | "youtube" |
publicStatsViewable | true or false. Whether public stats are viewable. | true |
madeForKids | true or false. Whether the video is made for kids. | false |
TikTok Options
| Option | Description | Default |
|---|
privacy_level | TikTok privacy level ("PUBLIC_TO_EVERYONE", "MUTUAL_FOLLOW_FRIENDS", "FOLLOWER_OF_CREATOR", "SELF_ONLY") | "PUBLIC_TO_EVERYONE" |
disable_duet | true or false. | false |
disable_comment | true or false. | false |
disable_stitch | true or false. | false |
cover_timestamp | Timestamp in milliseconds for video cover. | 1000 |
brand_content_toggle | true or false. | false |
brand_organic_toggle | true or false. | false |
is_aigc | true or false. Indicates if content is AI-generated. | false |
Response
| Status | Description |
|---|
200 OK | If the upload was successful. |
400 Bad Request | If the request is invalid. |
401 Unauthorized | If the API key is invalid. |
500 Internal Server Error | If there is an internal server error. |