fetcher-sh/fetcher-skills

tiktok-api

>- A TikTok API alternative on fetcher.sh — pay-per-call in USDC via x402, or prepaid credits with a Bearer key, no login and no app review. Use when the user wants to search TikTok posts by keyword and sort by most-liked or most recent within a date range, look up a post by its share URL or ID, scrape a TikTok profile by @username, pull a user's posts, followers, or followings, fetch a hashtag's posts, pull posts using a specific sound/music track, get posts from a location, or read a post's c…

All-time #3521 Trending #2090 First seen Aug 12, 2026
8-week activity · all time api

Installation

$ npx skills add fetcher-sh/fetcher-skills --skill tiktok-api

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from fetcher-sh/fetcher-skills · top by installs.

npx skills add fetcher-sh/fetcher-skills

Browse all from fetcher-sh/fetcher-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
License LICENSE
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 8,161 B
  • docs SUMMARY.md 734 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 3,916 installs

SKILL.md

TikTok API

TikTok data on demand: keyword post search with sort/date filters, profile lookup by handle, followers and followings, hashtag and music/sound feeds, location-based posts, and comment threads — one plain HTTP GET per call, paid as you go. No login, no session cookies, no browser automation, no TikTok developer app review.

Base URL: https://tiktok.fetcher.sh

Quick reference

Base URL https://tiktok.fetcher.sh
Auth Authorization: Bearer bbylive... or x402 (USDC)
Price $0.004/call (flat)
Endpoints 13, all GET
MCP https://tiktok.fetcher.sh/mcp
Machine-readable /openapi.json · /llms.txt · /skill.md

Which endpoint do I need?

I want to... Call
Search posts by keyword (optionally most-liked/recent) GET /api/post/search
Look up a post by its share URL GET /api/post?url=...
Look up a profile by @username GET /api/user/handle/{username}
Get a user's posts, followers, or followings GET /api/user/{id}/posts / /followers / /followings
Get a post's comments GET /api/post/{id}/comments
Find posts under a hashtag GET /api/hashtag/{id}/posts
Find posts using a specific sound GET /api/music/{id}/posts

Full param details for every row: [references/endpoints.md](references/endpoints.md).

Authentication

Two ways to pay, same data — full mechanics in the [fetcher skill](../fetcher/SKILL.md):

# 1. Prepaid credits (recommended — get a key at https://fetcher.sh/topup
#    or via POST /api/credits/topup, see the fetcher skill)
export FETCHER_API_KEY="bby_live_xxxxxxxxxxxx"
curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/post/search?keyword=hello"

# 2. x402 pay-per-call — omit the header; a GET with no payment returns 402
#    with machine-readable payment requirements (USDC on Base, Polygon,
#    Arbitrum, Monad, or Solana). @x402/fetch signs and retries automatically.

Every response is { "status": number, "message": string, "data": ... }; the HTTP status mirrors status.

Endpoints (13 — all GET, $0.004/call)

Endpoint What it returns
/api/post/search Posts matching a keyword; sort and date-range filters
/api/post A single post resolved from its share URL
/api/post/{id} A single post by ID
/api/post/{id}/comments A post's comments
/api/post/{id}/comments/{commentId}/replies Replies to a comment
/api/user/handle/{username} Profile by @username
/api/user/{id}/posts A user's posts
/api/user/{id}/followers A user's followers
/api/user/{id}/followings Accounts a user follows
/api/hashtag/handle/{name} Hashtag metadata by name
/api/hashtag/{id}/posts Posts under a hashtag
/api/music/{id}/posts Posts using a sound/music track
/api/location/{locationId}/posts Posts tagged at a location

{id} / {username} / {name} are path parameters. Optional query params (cursor, region) paginate or geo-scope results; keyword (search) and url (post lookup) are required where they appear.

Scenarios

Most liked posts this month:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "keyword=ai agent" -G \
  --data-urlencode "sortType=MOST_LIKED" \
  --data-urlencode "dateRange=THIS_MONTH" \
  "https://tiktok.fetcher.sh/api/post/search"

Posted yesterday, most recent first:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  --data-urlencode "keyword=crypto payments" -G \
  --data-urlencode "sortType=DATE_POSTED" \
  --data-urlencode "dateRange=YESTERDAY" \
  "https://tiktok.fetcher.sh/api/post/search"

Other sortType values: RELEVANCE. Other dateRange values: ALLTIME, THISWEEK, LASTTHREEMONTHS, LASTSIXMONTHS.

Look up a post by its share URL, or directly by ID:

curl -H "Authorization: Bearer $FETCHER_API_KEY" -G \
  --data-urlencode "url=https://www.tiktok.com/@username/video/1234567890123456789" \
  "https://tiktok.fetcher.sh/api/post"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/post/1234567890123456789"

A post's comments and comment replies:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/post/1234567890123456789/comments"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/post/1234567890123456789/comments/9876543210/replies"

A profile by @handle, then its posts, followers, and followings:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/user/handle/khaby.lame"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/user/6935741396776976390/posts"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/user/6935741396776976390/followers"

A hashtag's metadata, then its posts:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/hashtag/handle/fyp"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/hashtag/1234567890/posts"

Posts using a specific sound, and posts from a location:

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/music/1234567890123456789/posts"

curl -H "Authorization: Bearer $FETCHER_API_KEY" \
  "https://tiktok.fetcher.sh/api/location/1234567890123456789/posts"

MCP

{
  "mcpServers": {
    "tiktok": {
      "url": "https://tiktok.fetcher.sh/mcp",
      "headers": { "Authorization": "Bearer bby_live_..." }
    }
  }
}

Free: searchendpoints, describeendpoint, checkbalance. Paid: fetchdata (any endpoint above), topupcredits, plus the named shortcut tiktokpost_search. Drop the headers block to pay per call with x402 instead — see the [fetcher skill](../fetcher/SKILL.md) for the full flow.

Errors

  • 400 — missing/invalid parameter (message names it)
  • 401 — unknown or rotated key
  • 402 — payment required (x402 challenge) or topup_required (credits

exhausted)

  • 404 — not a priced path
  • No rate limits; no refunds on upstream failures (settlement precedes

delivery)

Reference

  • Deep dives: [references/endpoints.md](references/endpoints.md) (every

param) · [references/scenarios.md](references/scenarios.md) (one curl per endpoint) · [references/faq.md](references/faq.md) · [references/comparison.md](references/comparison.md) (vs. the official TikTok API and a browser scraper)

  • Task guides: [viral post search](../../task-guides/tiktok-viral-post-search.md) ·

[profile and followers](../../task-guides/tiktok-profile-and-followers.md)