Back to Blog
tiktokapiautomationscheduling

How to Post to TikTok With the Content Posting API (2026): The Full Reality

M
Mel Owen
4 min read

TikTok does have an official Content Posting API, so yes, you can publish to TikTok from code. But TikTok wraps its API in a review-and-audit process that catches almost everyone off guard, and until you clear it, your posts are effectively invisible. Here is the complete picture.

What you need first

  • A TikTok for Developers account at developers.tiktok.com.
  • A registered app with the Content Posting API added.
  • A TikTok account you control to test with.
  • A verified domain or URL prefix if you plan to publish media from your own URLs.
  • Compliance with TikTok's UX and content guidelines, which they check during review.

The setup, step by step

1. Register the app and request Content Posting

Create your app in the developer portal and add the Content Posting API product. You then request scopes:

video.upload    # push a video into the user's drafts
video.publish   # direct-post a video to the account

video.publish is the one that posts directly. video.upload only drops the video into the user's TikTok drafts for them to finish manually.

2. OAuth and content upload

You authorize the user, then either send a hosted video URL or upload the file in chunks. TikTok processes the video asynchronously, so you poll for status rather than getting an instant success.

3. Verify your domain

If you publish media by URL, TikTok requires you to verify ownership of the domain those URLs live on. Unverified domains are rejected, so you cannot just point at any file host.

Want to put this into practice? Try TimeToPost free and start scheduling smarter today.

The part that stops almost everyone: the audit

This is the TikTok-specific wall. Until your app passes TikTok's audit and approval, the Content Posting API is in a restricted mode:

  • Posts your app creates are forced to private / self-only visibility. Real people cannot see them.
  • You cannot go public with the feature for real users.

To lift that, you submit your app for review, demonstrate that your integration follows TikTok's UX guidelines exactly (specific consent screens, disclosure of TikTok posting, correct handling of the draft vs direct-post choice), and wait. Get any of the UX requirements wrong and you are rejected and back in the queue.

An unaudited TikTok integration looks like it works in testing, because your own private posts publish fine. Then you ship, and every user's post is stuck at self-only. The audit is not optional for a real product.

Timeline and effort

| Step | Time | Blocking risk | |---|---|---| | App registration + OAuth | 1 to 2 days | Low | | Domain / URL-prefix verification | Hours | Medium | | Chunked upload + async status handling | 1 to 2 days | Medium | | App audit and approval | Days to weeks | High | | UX-guideline rejections and resubmits | Adds days each | High |

The honest math

The TikTok API is genuinely capable, but the audit turns a coding task into a compliance project. You have to build your consent and disclosure UX to TikTok's exact spec, submit, likely get bounced once or twice, and only then can your users post publicly. That is before you factor in maintaining it as TikTok changes requirements.

TimeToPost is already an audited, approved TikTok integration. You connect and schedule public TikTok posts immediately, with the disclosure and consent handled correctly, and none of the audit cycle to grind through.

FAQ

Can I direct-post publicly to TikTok without approval? No. Until your app is audited, posts are forced to private / self-only visibility.

What is the difference between video.upload and video.publish? video.upload puts the video in the user's drafts to finish by hand. video.publish posts it directly, and it is the one gated behind the audit.

Do I need to verify a domain? If you publish media from your own URLs, yes. TikTok rejects unverified domains.

Why did my test posts work but my users' posts are hidden? Because unaudited apps can only produce private posts. Your own tests looked fine, but public posting needs the completed audit.

If grinding through TikTok's audit is not your idea of a good week, TimeToPost already cleared it for you.

Related posts

Put these strategies into action

TimeToPost helps you schedule content, track performance, and grow your audience โ€” all in one place.