TikTok for Developers is not one API. It is ten separate products sitting behind one documentation site, each with its own scopes, its own approval process and its own reasons to reject your application. Most people who get stuck are not stuck on code. They are reading the wrong product’s documentation for the thing they want to build.
Quick answer: Go to developers.tiktok.com, decide first whether you need public embedding (no account needed), a user’s own data (Login Kit plus Display API), publishing (Content Posting API), or bulk public data for study (Research API, academics only). Register an app, add the products you need, request only the scopes you can justify, and expect a review before production access.
Here is how the documentation is laid out and how to find the page you actually want. Everything below refers to the English documentation at developers.tiktok.com.
The ten products, and who each one is for
| Product | What it does | Needs approval? |
|---|---|---|
| Embed Videos | Put a public video on a web page, with a free oEmbed endpoint | No |
| Login Kit | Sign in with TikTok, and the token every other product depends on | Yes |
| Display API | Read the signed in user’s own profile and video list | Yes |
| Content Posting API | Publish videos and photos to a user’s account | Yes, with an audited flow |
| Share Kit | Hand media from your mobile app into the TikTok editor | Yes |
| Green Screen Kit | Send an image or video into the Green Screen effect | Yes |
| Research API | Query public videos, comments and accounts in bulk | Yes, academic and non commercial |
| Commercial Content API | Access the advertising and paid content library | Yes |
| Data Portability API | Let a user move their own data elsewhere, a regulatory obligation | Yes |
| Webhooks | Receive events instead of polling | Configured per app |
Two observations save a lot of time. Embedding is the only thing you can do with no account at all, and Login Kit is a dependency of nearly everything else, so if a product page seems to assume you already have an access token, that is why.
Reading the documentation efficiently
Start with the changelog, not the guide
This is the habit that separates people who ship from people who file support tickets. The changelog is the only page that tells you what moved recently, and TikTok updates its products at a steady clip. Recent entries illustrate the range: in August 2026 the Data Portability API documentation was expanded to explain its dependency on Login Kit, in May 2026 the Research API began returning additional fields including favourite counts and display names, and in February 2026 the research data pipeline was changed to cover all public video content. TikTok keeps the running list on its changelog page.
If a field appeared in your response that your parser does not expect, or an endpoint started requiring something new, the changelog usually explains it in one line.
Tip: Every product page has a language selector in the URL path. If a page looks thin, check whether you landed on a localised version that lags the English one. The /docs/en/ path is the canonical set.
The registration path in order
Do these in sequence. Skipping ahead is why applications get rejected.
1. Create a developer account and an app. You need a TikTok account first. Business verification is required for some products and asked for later rather than at sign up.
2. Add products to the app. Each product is added individually. Adding one you do not need slows the review down and invites questions you cannot answer well.
3. Configure redirect URIs exactly. They must match character for character, including the trailing slash and the scheme. This is the single most common cause of a failed OAuth handshake.
4. Build against the sandbox. Sandbox access lets you develop with a limited set of test users before your app is public.
5. Submit for review. Provide a working demonstration and a plain description of what your app does with the data. Vague submissions get rejected, and the feedback you receive is often terse.
Warning: The Research API is restricted to non commercial academic research and requires an institutional affiliation. Applying with a commercial project because you want bulk public data is a guaranteed rejection, and there is no paid tier that opens the same door.
What the documentation does not spell out
Scopes are granted per product, not per app. Approval for one product tells you nothing about how the next review will go.
Tokens expire and refresh tokens rotate. Build refresh handling on day one rather than discovering it when the first user’s session dies a fortnight after launch.
Rate limits exist and are documented per endpoint. Check the specific endpoint page rather than assuming a global number, and design for backoff regardless.
Sandbox behaviour is not production behaviour. Data volumes, latency and some error conditions differ. Test the unhappy paths again after you go live.
oEmbed sits outside all of this. If your requirement is just showing a public video on a page, you never need an app at all, which we cover in detail in our guide to embedding TikTok videos on a website.
A minimal Login Kit flow, end to end
Nearly every product depends on this handshake, so it is worth having the shape in your head before you read any product page. It is ordinary OAuth 2 with one TikTok specific detail: the client key is called a client key, not a client id, which breaks copied boilerplate from other providers.
# 1. send the user to the authorisation screen https://www.tiktok.com/v2/auth/authorize/ ?client_key=YOUR_CLIENT_KEY &scope=user.info.basic,video.list &response_type=code &redirect_uri=https%3A%2F%2Fexample.com%2Fcallback &state=RANDOM_CSRF_TOKEN # 2. exchange the returned code for tokens, server side only POST https://open.tiktokapis.com/v2/oauth/token/ Content-Type: application/x-www-form-urlencoded client_key=...&client_secret=...&code=... &grant_type=authorization_code&redirect_uri=... # 3. call a product endpoint with the access token GET https://open.tiktokapis.com/v2/user/info/?fields=open_id,display_name Authorization: Bearer ACCESS_TOKEN
Three rules save you a rewrite later. Keep the client secret on the server and never in a mobile binary or a browser bundle. Store the refresh token, not just the access token, and refresh before expiry rather than after a failure. Treat open_id as the user identifier, since it is scoped to your app and is the only stable key you get.
Scopes, and asking for fewer of them
Reviews go faster when the scope list is short and obviously matches what the app does. A gallery that displays a creator’s own videos needs user.info.basic and video.list and nothing else. Adding publishing scopes because you might want them later turns a simple review into a difficult one, and you can always add a product and request more scopes once the app is live.
Troubleshooting the common failures
redirect_uri mismatch. Compare the registered value and the one you send byte for byte. Trailing slashes and http against https are the usual culprits.
Scope not authorised. The product is added but the scope was not approved, or the user declined it during the consent screen. Handle partial consent gracefully.
Empty video list from the Display API. The user genuinely has no public videos, or the account is private. This is not an error.
Publishing fails silently. The Content Posting API has content and account eligibility rules that reject uploads the endpoint accepts. Read the status callbacks rather than trusting the initial response.
Everything worked yesterday. Check the changelog first. It costs thirty seconds and frequently ends the investigation.
Note: Scraping tiktok.com instead of using the APIs breaks the terms of service, and the unofficial endpoints people share change without notice. If a tutorial tells you to reverse engineer the web app, it is describing something that will stop working and may cost you the account.
Frequently asked questions
Is the TikTok API free to use?
The developer platform itself has no fee. What limits you is approval, not price. Embedding and oEmbed are open to anyone, while user data and publishing require an approved app, and the Research API additionally requires academic credentials.
Do I need an app to embed a TikTok video?
No. Embedding uses public markup and a public oEmbed endpoint. No developer account, no key, no review. That is the one part of the platform with no gate in front of it.
How long does app review take?
TikTok does not publish a service level for review times, and reports from developers vary widely depending on the products requested. Submit with a working demonstration and a precise description to avoid a round trip.
Can I get another creator’s analytics through the API?
No. The Display API returns data for the user who authorised your app and nobody else. Aggregate public data for research goes through the Research API under its own restrictions. If your goal is marketing measurement rather than raw data, the TikTok Pixel is the tool you want.
Which product do I need to schedule posts?
The Content Posting API, together with Login Kit for authorisation. Note that it has stricter review than the read only products, and that account eligibility rules can block publishing even after approval. Our guide to running a TikTok challenge covers the campaign side once publishing works.
The bottom line
Treat developers.tiktok.com as ten manuals in a trench coat. Identify your product first, read its scopes and its review requirements before writing any code, keep the changelog open in a tab, and remember that the most common integration of all, putting a video on a page, needs none of it. If you are still learning the platform itself, start with our beginner guide to TikTok.

