Douyin Trending API — The Hot-Search Board
Documentation menu
FetchLayer FetchLayer API

Get the hot-search board

Douyin’s hot-search board: rank, word, heat score, view and video counts, Douyin’s badge code and when the entry broke. Entries pinned above the board come with position null and pinned true. 1 credit.

POST /trending Trending & hashtags
https://api.fetchlayer.dev/douyin/trending
OpenAPI JSON

Headers

Authorization string required

Bearer token — your FetchLayer API key.

Parameters

limit integer optional

Maximum entries, up to 100, or -1. Left out, the whole board (about 50).

format string optional

json or markdown, lowercase; any other value is a 400. Over MCP, markdown returns the result rendered as text; the REST API accepts it and returns JSON. (default: json)

timeoutMs integer optional

Time limit for the whole request, in milliseconds (1000–120000); a value outside that range is a 400. Where possible a partial answer comes back with a note; a request with nothing to return yet fails with a 503 you can retry, marked with the response header X-Timeout-Source: caller.

Response Fields

trending

Get the hot-search board

transport string

The data source: always the platform id, "douyin".

fetchedAt string

When the data was read (ISO 8601).

notes string[]

Caveats you can act on, such as older videos existing beyond the list. Empty when there are none.

items object[]

The board, in order.

items[].position number | null

Rank, or null for an entry pinned above the board.

items[].pinned boolean

True for an entry pinned above the board.

items[].word string

The topic.

items[].hotValue number | null

Douyin’s heat score.

items[].viewCount number | null

Views of the topic.

items[].videoCount number | null

Videos on the topic.

items[].labelCode number | null

Douyin’s badge code for the entry, as published.

items[].eventTime string | null

When the entry broke (ISO 8601).

items[].sentenceId string

Douyin’s id for the entry.

items[].coverUrl string | null

Cover image.

itemCount number

How many entries are in this response.

Request

curl -X POST "https://api.fetchlayer.dev/douyin/trending" \
  -H "Authorization: Bearer ss-your-key" \
  -H "Content-Type: application/json" \
  -d '{"limit":20}'

Response

{
  "transport": "douyin",
  "fetchedAt": "2026-10-15T15:54:01.000Z",
  "notes": [],
  "items": [
    {
      "position": 1,
      "pinned": false,
      "word": "抖音商城双11超级补贴来啦",
      "hotValue": 12296885,
      "viewCount": 66580116,
      "videoCount": 3,
      "labelCode": 3,
      "eventTime": "2026-10-15T04:20:52.000Z",
      "sentenceId": "2696275"
    }
  ],
  "itemCount": 20
}