Post to a farm profile
Authentication
Request
The farm profile to post from. Must belong to your team. Posting is only permitted when status is ready.
video for a single MP4; slideshow for a .zip of JPGs.
Publicly retrievable HTTPS URL of the media. For video, an MP4 (H.264, ≤ 60s, 9:16 recommended). For slideshow, a .zip whose entries are named slide-1.jpg, slide-2.jpg, … (JPG only; PNG/AVIF not supported). Signed URLs are fine as long as they’re reachable from the public internet.
HTTPS URL we’ll POST {event: 'post.published', phone_id, post_url} to once the post goes live on TikTok, where post_url is the live TikTok URL. Fire-and-forget; no retries.
Title shown on the post. Applies to slideshow posts only; ignored for video posts.
Caption text. Note: @ and # characters are stripped server-side — TikTok’s automation flow can’t reliably enter them. Native hashtag/mention support is on the roadmap.
Optional scheduled post time as a Unix epoch in milliseconds. Must be in the future. Omit to publish immediately.
true publishes the post live to TikTok immediately. false (default) saves it as a draft on the device for review. Not a livestream toggle.
true (default) plays the linked sound_id as the post’s audio at full volume. false uses the video’s own original audio while still tagging the linked sound_id as the official sound, so the two coexist. Applies to video posts only; ignored for slideshows.
Response
Opaque ID for the post, stable for its lifetime. Poll GET /v1/posts/{post_id} with it to track status and, once live, retrieve the TikTok post ID and URL.