Tiktok Search Scraper avatar

Tiktok Search Scraper

Pricing

from $1.00 / 1,000 results

Go to Apify Store
Tiktok Search Scraper

Tiktok Search Scraper

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Farhan Febrian Nauval

Farhan Febrian Nauval

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

a day ago

Last modified

Share

Search TikTok for videos by keyword or hashtag. HTTP-only — no browser, no login, no user cookies. Lightweight (~256 MB RAM).

Input

FieldTypeRequiredDefaultDescription
keywordstringFree-text query, or #tagname for a hashtag
maxResultsinteger300 = unlimited (best-effort)
proxyobjectApify proxy configuration

Examples

{ "keyword": "cooking recipes", "maxResults": 50 }
{ "keyword": "#fyp", "maxResults": 100 }

(Leading # is stripped — TikTok's general-search endpoint treats hashtag and free-text identically.)

Output

Each pushed item is a raw TikTok video object (whatever lives under item inside an entry from /api/search/general/full/'s data array), with _input set to the original keyword.

Useful fields: id, desc, createTime, author, video, stats, music, challenges. Shape matches the post objects you'd see from /api/post/item_list/.

How It Works

  1. Warm a curl_cffi session with GET /explore to collect ttwid + tt_csrf_token.
  2. Pull a fresh msToken from mssdk-sg.tiktok.com/web/report (no JS needed; the endpoint issues the cookie in response to a tiny POST).
  3. Sign each query string with X-Bogus and call /api/search/general/full/.
  4. Paginate via cursor/offset returned by each response, carrying search_id across pages so TikTok keeps the result set stable.

Limitations

  • TikTok's WAF often returns 0-byte responses on residential / mobile IPs — when that happens the actor logs a warning and stops after two empty pages in a row. Apify datacenter IPs typically work; residential proxies typically don't.
  • Some pages of search results require X-Gnarly (a per-request browser-JS RSA signature). When TikTok demands it, the actor can only return earlier pages. There is no HTTP-only way to forge X-Gnarly, and per CLAUDE.md this actor must stay browser-free.
  • Search is unauthenticated — TikTok personalises results, so output may vary across runs even for the same keyword.

Tips

  • Use the Apify Datacenter proxy group if you see 0 results.
  • For broad keywords TikTok will typically return 10–60 results across pagination before throttling.