Publish videos and photo posts to TikTok with one API call — no chunked upload, no creator_info pre-flight, no privacy or disclosure guesswork. We run the Content Posting API so you ship in hours, not weeks.
✓ 5 minutes to first post ✓ 99.92% uptime ✓ Videos, photo posts & drafts
curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "POV: your API just shipped itself 😅 #devlife",
"accounts": ["tiktok"],
"media": [{ "url": "https://media.outstand.so/clip.mp4", "filename": "clip.mp4" }],
"tiktok": { "postMode": "DIRECT_POST", "privacyLevel": "PUBLIC_TO_EVERYONE" }
}'A video posts directly to TikTok. Send images for a photo post, or MEDIA_UPLOAD to drop it in drafts.
Posting through the TikTok Content Posting API means an audited app before you can publish publicly, a verified media domain for PULL_FROM_URL, a creator_info pre-flight to learn the allowed privacy options, a chunked video upload, and mandatory branded-content and AI-disclosure flags. Outstand turns all of it into a single request.
Every content type and capability available on TikTok via Outstand today.
Plus duet/stitch/comment toggles, branded-content and AI-generated disclosure, and thumbnail control. Reading comments and deleting posts are not offered by TikTok’s API.
The same accounts array also fans out to Instagram, X, YouTube and more — one request, many platforms.
curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Draft for review before it goes live",
"accounts": ["tiktok"],
"media": [{ "url": "https://media.outstand.so/clip.mp4", "filename": "clip.mp4" }],
"tiktok": { "postMode": "MEDIA_UPLOAD" }
}'curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Swipe through the lookbook 👗",
"accounts": ["tiktok"],
"media": [
{ "url": "https://media.outstand.so/1.jpg", "filename": "1.jpg" },
{ "url": "https://media.outstand.so/2.jpg", "filename": "2.jpg" }
],
"tiktok": { "privacyLevel": "PUBLIC_TO_EVERYONE", "autoAddMusic": true }
}'curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Original sound only 🔒",
"accounts": ["tiktok"],
"media": [{ "url": "https://media.outstand.so/clip.mp4", "filename": "clip.mp4" }],
"tiktok": { "privacyLevel": "PUBLIC_TO_EVERYONE", "disableDuet": true, "disableStitch": true, "disableComment": true }
}'curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Paid partnership — made with AI ✨",
"accounts": ["tiktok"],
"media": [{ "url": "https://media.outstand.so/clip.mp4", "filename": "clip.mp4" }],
"tiktok": { "privacyLevel": "PUBLIC_TO_EVERYONE", "brandContentToggle": true, "isAigc": true }
}'curl https://api.outstand.so/v1/posts/ \
-H "Authorization: Bearer $OUTSTAND_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"content": "Drops Friday ⏰",
"accounts": ["tiktok"],
"media": [{ "url": "https://media.outstand.so/teaser.mp4", "filename": "teaser.mp4" }],
"tiktok": { "postMode": "DIRECT_POST", "privacyLevel": "PUBLIC_TO_EVERYONE" },
"scheduledAt": "2026-07-03T16:00:00Z"
}'curl https://api.outstand.so/v1/posts/{id}/analytics \
-H "Authorization: Bearer $OUTSTAND_API_KEY"
# → views, likes, comments, shares, profile_views, reachFrom signup to your first published TikTok in about five minutes.
Your user authorizes via OAuth. We store and refresh the token. Use our audited Managed Keys to post publicly immediately, or bring your own app.
Send a video or images with accounts: ["tiktok"] and a tiktok options block. Add scheduledAt to schedule.
creator_info pre-flight, chunked upload, status polling and disclosure flags — returned as a unified response with the published post ID.
One integration that grows with everything you ship next.
One request publishes to TikTok and 10 more networks. Same JSON shape everywhere — learn one API, ship them all.
Use our TikTok-audited app and verified media domain to publish publicly immediately — or bring your own once TikTok approves it.
Intelligent rate limiting, automatic token refresh, webhook events and media processing.
$19/mo includes 3,000 posts, then from $0.007/post. No seats, no annual lock-in.
Same endpoints, same data shapes — pick what you ship.
Let your users queue and auto-publish TikTok content from your app.
Give Claude or GPT a tool to post to TikTok. MCP server included.
Pull TikTok reach and engagement alongside every other platform.
Run TikTok posting for clients under your own brand and app.
The questions developers ask before they build.
Yes — the TikTok Content Posting API lets approved apps publish videos and photo posts and read analytics. Outstand is a managed layer on top of it, so you skip the audit, domain verification and upload plumbing.
Yes. Send a video to POST /v1/posts/ with accounts: ["tiktok"] and tiktok.postMode: "DIRECT_POST" to publish it, or "MEDIA_UPLOAD" to drop it into the creator’s drafts for editing.
Yes. Send 2 or more images in the media array. You can set tiktok.autoAddMusic to add a soundtrack — a photo-only option that is ignored for videos.
TikTok forces SELF_ONLY (private) publishing for apps that have not passed its content-posting audit, and requires a verified domain for URL-based media. Outstand’s Managed Keys use an audited app and verified domain, so you can publish publicly from day one.
PUBLIC_TO_EVERYONE, MUTUAL_FOLLOW_FRIENDS, FOLLOWER_OF_CREATOR and SELF_ONLY. For a Direct Post the value must be one the creator actually allows — Outstand checks this against creator_info for you.
Yes. Add a scheduledAt ISO-8601 timestamp (up to 30 days ahead) and Outstand publishes it automatically — no cron or queue on your side.
No — TikTok does not offer deleting posts via its API. Outstand will report this clearly per account rather than failing silently.
Grab an API key and publish your first TikTok in the next five minutes. 3,000 posts included, then from $0.005/post.