TikTok inbox upload vs Direct Post: which API for an AI video?

Inbox upload makes a draft the creator finishes in TikTok; Direct Post publishes with title, privacy and consent set in your app. Compare scope and audit.

5 min readSume
All posts

Use the inbox upload when a person will review each AI-generated clip and finish the post inside TikTok. Use Direct Post when your app collects the title, privacy level, interaction settings and consent itself and publishes straight away. Direct Post carries more UX duties and an audit; the inbox upload is lighter but ends with a draft.

Sume sits upstream of both: it produces the video file, and your app calls TikTok.

How do the two flows differ?

Everything below is from TikTok's upload guide, Direct Post reference and Content Sharing Guidelines.

Inbox upload vs Direct Post (read 2026-10-02)
QuestionInbox uploadDirect Post
ResultA draft the user reviews in TikTokA post made from your app
Who finishesThe user, after clicking the inbox notificationYour app, after the user's choices
Scope or setupvideo.upload scopeContent Posting API product with Direct Post
Metadata in your appNot required for the draftTitle, privacy (no default), interaction settings, disclosure
Unaudited clientsNot stated on the page I readPosts restricted to private viewing

Which one fits an AI-video team?

If you produce clips in bulk and a human approves each one, the draft flow matches your process, since the creator sees the video in TikTok before it goes out. It also leaves the AI-generated label decision with the person looking at the final result. Direct Post has an is_aigc field that, when true, shows the AI-generated tag, so a Direct Post integration can set it for the creator once they confirm.

Be careful with the claim about who sets labels in the inbox flow: the upload page I read does not describe label handling, so check the draft editor before you promise anything to your users.

What are the shared steps?

Both begin with a finished file. Generate with Sume, then read the result through jobs and results. Both need MP4 with H.264 for a FILE_UPLOAD and both track progress through the status endpoint, which returns a publish_id you should store. The status path in the upload guide is /v2/post/publish/status/fetch/; the video inbox init is /v2/post/publish/inbox/video/init/.

Photos are a separate init (/v2/post/publish/content/init/) and are URL-based only.

What does Sume not do?

Sume does not register your TikTok app, hold a creator token, or choose a flow for you. It will not tell you whether your audit passes. What it gives you is a file that already meets common limits when you size it deliberately; see our post on video size.

Decision rules

A quick way to choose:

  • A person approves every clip: start with the inbox upload.
  • Your app serves creators who want one-click publishing: Direct Post, with the UX duties and audit.
  • Unsure about audit timing: plan for private-only Direct Post until it clears.
  • Either way, store the publish_id with the Sume job id.

Sources

Related posts

More in Integrations

All Integrations posts

Written by Sume