Publish a photo carousel to TikTok
post_photosPublish photo carousels of up to 35 images from public URLs to a connected TikTok account, returning a publish_id to track posting status via get_post_status.
Instructions
Publish a photo carousel of up to 35 images from public URLs. Returns a publish_id; poll get_post_status with it. Same domain-verification and audit rules as post_video.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| title | No | Post title. Up to 90 UTF-16 units, shorter than a video caption. | |
| account | No | Which connected TikTok account to act as, by the name you gave it in TIKTOK_ACCOUNTS. Defaults to the first. Call list_accounts to see them. | |
| confirm | No | Must be true for this to run. A TikTok post is public the moment moderation clears it, and deleting it later does not pull it out of feeds that already have it. | |
| is_aigc | No | ||
| photo_urls | Yes | Public image URLs, in the order they should appear. Their domain must be verified in your TikTok app. | |
| description | No | Post description. Up to 4000 UTF-16 units. | |
| privacy_level | Yes | Must be one of the values get_creator_info returns in privacy_level_options for this account. A private account cannot use PUBLIC_TO_EVERYONE, and passing it fails the call. | |
| auto_add_music | No | Let TikTok pick a soundtrack. The creator can change it later in the app. | |
| disable_comment | No | ||
| photo_cover_index | No | Zero-based index of the image to use as the cover. Default 0. | |
| brand_content_toggle | No | True if this is a paid partnership promoting somebody else's business. Defaults false. | |
| brand_organic_toggle | No | True if this promotes the creator's own business. Defaults false. |