TikTok posting API for UGC videos and slideshows
Send a video or a set of images once and UGC API publishes it to the TikTok accounts you choose, now or on a schedule. You skip building on TikTok's Content Posting API yourself, and you pay $10 per 1,000 posts.
Updated
What you can post to TikTok
- Videos.
format: 'video'with one MP4 URL. It publishes as a normal TikTok video with your caption and hashtags. - Photo posts (slideshows).
format: 'slideshow'with 2 or more image URLs. TikTok's Content Posting API accepts up to 35 images per photo post. You can let TikTok add recommended music withauto_music: true. - Drafts. Set
tiktok.draft: trueand the content lands in the creator's TikTok inbox instead of going live. The creator opens it, adds a trending sound, and posts it by hand. - AI-generated label. Set
tiktok.ai_generated: trueto apply TikTok's AI-generated content label to the post.
How it works
- Create a connect link with
POST /v1/accounts/connectandplatform: 'tiktok'. Send it to the creator. They log in with TikTok and approve posting. - Upload media with
POST /v1/mediaor pass public URLs. We host the files, so you don't need to verify a domain with TikTok. - Call
POST /v1/postswith the account IDs, format, caption and an optionalscheduled_at. - Get a
post.publishedwebhook with the public TikTok URL, orpost.failedwith TikTok's reason.
curl https://ugcapi.dev/v1/posts \
-H "Authorization: Bearer ugc_live_..." \
-H "Content-Type: application/json" \
-d '{
"accounts": ["acc_tt_01"],
"format": "slideshow",
"media": ["https://cdn.example.com/s1.jpg", "https://cdn.example.com/s2.jpg", "https://cdn.example.com/s3.jpg"],
"caption": "3 things I wish I knew before buying #skincare",
"options": { "tiktok": { "auto_music": true, "ai_generated": false } }
}'TikTok rules that shape your posting
TikTok's Content Posting API has rules every integration lives with. Knowing them saves you from confusing failures.
| Rule | What it means for you |
|---|---|
| Posting cap per creator | TikTok limits how many posts a creator account can receive through Direct Post in 24 hours. Its docs describe this cap as typically around 15 per day, shared across all apps. |
| Request rate | TikTok allows 6 publish requests per minute per creator token. We queue and pace requests for you. |
| Privacy options | The allowed privacy levels come from the creator's own settings. A private account cannot publish a public post. |
| Interactions | Comments, Duets and Stitches can be disabled by the creator's settings. Photo posts only support comments. |
| Music | Videos keep the audio they have. Photo posts can get TikTok's recommended music, which the creator can change later. |
The full background is in our TikTok Content Posting API audit guide. For cadence advice per account, read UGC posting cadence.
Many creator accounts, one schedule
UGC rarely means one account. With campaigns you send 100 slideshows and 10 TikTok accounts with a cadence like one post a day each. We schedule them round-robin with staggered minutes, so accounts don't all post at 9:00 sharp. That keeps each account under TikTok's daily cap and looks like normal human posting.
Pricing
One TikTok post to one account is one post credit. You get 50 free posts to test, then packs start at $10 for 1,000 posts. Credits never expire and there are no per-account fees. See pricing.
FAQ
Can I post TikTok photo carousels through the API?
Yes. Use format 'slideshow' with your image URLs. TikTok's API supports photo posts with up to 35 images, and you can turn on auto music so TikTok adds a recommended sound.
Can the creator add a trending sound before it goes live?
Yes. Set tiktok.draft to true. The post goes to the creator's TikTok inbox, where they can pick a sound and publish it themselves.
Why did my TikTok post fail with a posting limit error?
TikTok caps how many API posts one creator account can receive per day, shared across every app the creator uses. Spread posts with a campaign cadence and retry the next day.
Do I need my own TikTok developer app?
No. Creators connect through UGC API's connect link, and we handle tokens, media hosting and the publish flow.