Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions api-reference/endpoint/tiktok/get-user-followers.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
title: "Get user followers"
openapi: "GET /v1/tiktok/users/{username}/followers"
description: "Retrieve the public followers list that TikTok exposes to a guest."
---

Each successful request costs **10 credits**. No TikTok account is required.

Pass `pagination.cursor` unchanged with the same username and region to continue.
Cursors last up to 15 minutes and may expire earlier if the guest session is replaced.
An expired cursor returns 410; restart from the first page.

Private or hidden data returns 403. Temporary upstream failures return 503.
Guest lists can be partial even when the profile reports a larger total.
14 changes: 14 additions & 0 deletions api-reference/endpoint/tiktok/get-user-following.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
title: "Get user following"
openapi: "GET /v1/tiktok/users/{username}/following"
description: "Retrieve the public following list that TikTok exposes to a guest."
---

Each successful request costs **10 credits**. No TikTok account is required.

Pass `pagination.cursor` unchanged with the same username and region to continue.
Cursors last up to 15 minutes and may expire earlier if the guest session is replaced.
An expired cursor returns 410; restart from the first page.

Private or hidden data returns 403. Temporary upstream failures return 503.
Guest lists can be partial even when the profile reports a larger total.
14 changes: 14 additions & 0 deletions api-reference/endpoint/tiktok/get-user-liked.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
title: "Get user liked"
openapi: "GET /v1/tiktok/users/{username}/liked"
description: "Retrieve the public liked list that TikTok exposes to a guest."
---

Each successful request costs **10 credits**. No TikTok account is required.

Pass `pagination.cursor` unchanged with the same username and region to continue.
Cursors last up to 15 minutes and may expire earlier if the guest session is replaced.
An expired cursor returns 410; restart from the first page.

Private or hidden data returns 403. Temporary upstream failures return 503.
Guest lists can be partial even when the profile reports a larger total.
5 changes: 5 additions & 0 deletions api-reference/endpoint/tiktok/get-user-videos.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,8 @@ description: "A user's posted videos, newest first, with cursor pagination."
<Note>
Each request costs **8 credits**. Failed requests are not charged.
</Note>

Pass `pagination.cursor` unchanged with the same username and region to continue.
Guest cursors last up to 15 minutes and can expire earlier when their session is
replaced (HTTP 410). Public metadata can omit native-only fields. CDN links may
return 403 and are not guaranteed downloads.
2 changes: 2 additions & 0 deletions api-reference/endpoint/tiktok/trending-hashtags.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@ description: "Trending hashtags ranked by usage (served via the on-device signer
<Note>
Each request costs **5 credits**. Failed requests are not charged.
</Note>

This is a current discovery feed, not a historical ranking. Only US is currently supported; omit `period`. Other regions and historical periods return 422.
2 changes: 2 additions & 0 deletions api-reference/endpoint/tiktok/trending-songs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,5 @@ description: "Trending songs/sounds ranked by usage (served via the on-device si
<Note>
Each request costs **5 credits**. Failed requests are not charged.
</Note>

This is a current discovery feed, not a historical ranking. Only US is currently supported; omit `period`. Other regions and historical periods return 422.
2 changes: 2 additions & 0 deletions api-reference/endpoint/tiktok/trending-videos.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,5 @@ description: "Trending videos from the TikTok Explore feed."
<Note>
Each request costs **5 credits**. Failed requests are not charged.
</Note>

This is a current discovery feed, not a historical ranking. The mobile provider is used for US. Other regions use the web Explore fallback and may be unavailable.
3 changes: 3 additions & 0 deletions docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -1088,6 +1088,9 @@
"pages": [
"api-reference/endpoint/tiktok/get-user-profile",
"api-reference/endpoint/tiktok/get-user-videos",
"api-reference/endpoint/tiktok/get-user-followers",
"api-reference/endpoint/tiktok/get-user-following",
"api-reference/endpoint/tiktok/get-user-liked",
"api-reference/endpoint/tiktok/get-user-reposts"
]
},
Expand Down
24 changes: 21 additions & 3 deletions tiktok/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ Fetch full user profiles, posted videos, comments and replies, video transcripts
Keyword search across videos, users, and hashtags, plus a general Top-feed search.
</Card>
<Card title="Trending" icon="arrow-trend-up">
Trending videos, hashtags, and songs ranked by usage, with rank-change deltas.
US mobile discovery videos, hashtags and songs. Historical windows and rank-change deltas are unavailable.
</Card>
<Card title="Ad Transparency" icon="bullhorn">
Search TikTok's EU Commercial Content Library by keyword or advertiser id.
Expand Down Expand Up @@ -170,11 +170,11 @@ curl "https://scrapebadger.com/v1/tiktok/users/charlidamelio" \
TikTok protects its mobile and web APIs with request signing (X-Argus / X-Ladon / X-Gorgon / X-Khronos), device trust, and per-IP reputation scoring. ScrapeBadger clears these automatically — you never need to manage signatures, device registration, proxies, or sessions. Requests are routed through proxies matched to the `region` you request.

<Note>
**Trending hashtags and trending songs** (`/v1/tiktok/trending/hashtags`, `/v1/tiktok/trending/songs`) are served via an **on-device signer path**. They are ranked by real usage (view counts, distinct-creator counts) rather than the deprecated Creative Center trend lists.
**Trending hashtags and trending songs** (`/v1/tiktok/trending/hashtags`, `/v1/tiktok/trending/songs`) are served via an **mobile signer path**. They are ranked by real usage (view counts, distinct-creator counts) rather than the deprecated Creative Center trend lists.
</Note>

<Warning>
**Followers, following, and liked-video lists are deprecated.** These endpoints (`/v1/tiktok/users/{username}/followers`, `/following`, `/liked`) require an authenticated account session, which this API intentionally does not provide. They return **HTTP 410 Gone** with a deprecation notice and are not charged. All other TikTok endpoints (videos, profile, search, comments, hashtags, trending, music) remain fully supported.
Public followers, following and liked lists use account-free guest requests. TikTok can expose only a subset; hidden/private data returns 403 and temporary upstream failures return 503.
</Warning>

## Next Steps
Expand All @@ -191,3 +191,21 @@ TikTok protects its mobile and web APIs with request signing (X-Argus / X-Ladon
---

*ScrapeBadger is an independent tool and is not affiliated with, endorsed by, or sponsored by TikTok. "TikTok" is a trademark of TikTok Ltd. (a ByteDance company), used here only to describe the platform this scraper is designed to work with.*


## Guest access and pagination

Public content uses guest web and mobile providers; you do not need a TikTok
account. Public followers/following and reposts support pagination. Liked lists
are available only when the profile exposes them publicly. Hidden/private data
returns 403, temporarily unavailable data returns 503, and an expired continuation
cursor returns 410. Pass cursors unchanged with the same resource and region;
guest continuation state lasts up to 15 minutes and expires when its guest session
is replaced or the service restarts. Social lists reflect the subset TikTok exposes
to that guest; they are not a guaranteed complete follower export.

Web and mobile responses share the documented models, but optional native-only
fields may be null. A populated metadata response does not guarantee that a media
URL is downloadable: TikTok may reject even a fresh CDN URL with 403. Media links
are upstream references, not a guaranteed download service. Mobile hashtag/song recommendations are not
historical Creative Center rankings: omit `period`; only US is currently verified.
Loading