Skip to content
All Douyin APIs
Posts & videosDouyinVideo · List By Hashtag

Douyin hashtag videos

Read one current public page of videos for a known hashtag ID and sort.

POST/v1/douyin/hashtags/videos

Chinese name: 抖音话题视频 · 视频 · 按话题列出 按话题 ID 与排序方式分页读取当前公开作品样本。
douyin.hashtags.videos@v1

Price per call

¥0.02/ call

Complete and confirmed empty results are charged; partial results and failures are not.

Current statusAvailableChecking live status
Checking live status

Try it

Sign in and run one real call. The result and charge appear right here.

Security check

Loading the security check…

Checking live execution status…

Execution result

// Result

Request parameters

hashtag_idstringrequired

pattern: "^\\d{5,32}$"

Example: "1575791821492238"

sortstringoptional

enum: "relevance" | "most_liked" | "latest"

Example: "relevance"

cursorstringoptional

minLength: 1

Request JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "hashtag_id": {
      "type": "string",
      "pattern": "^\\d{5,32}$"
    },
    "sort": {
      "type": "string",
      "enum": [
        "relevance",
        "most_liked",
        "latest"
      ]
    },
    "cursor": {
      "type": "string",
      "minLength": 1
    }
  },
  "required": [
    "hashtag_id"
  ],
  "additionalProperties": false
}

Code samples

Install the SDK with npm i @dataxapi/sdk or pip install dataxapi, and put your API key in the DATAXAPI_API_KEY environment variable.

curl -X POST https://api.dataxapi.com/v1/douyin/hashtags/videos \
  -H "Authorization: Bearer $DATAXAPI_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"hashtag_id":"1575791821492238","sort":"relevance"}'

Response example

200 · application/json
{
  "code": 200,
  "request_id": "req_example_douyin_batch5_social",
  "message": "success",
  "data": {
    "items": [
      {
        "id": "7657958714196815781",
        "caption": "Public hashtag video",
        "created_at": "2026-08-26T12:00:00.000Z",
        "author": {
          "id": "64833494191",
          "sec_uid": "MS4wLjABAAAA-public",
          "unique_id": "public_creator",
          "name": "Public creator",
          "avatar_url": "https://ci.douyin.com/avatar"
        },
        "media": {
          "video_url": "https://ci.douyin.com/video.mp4",
          "cover_url": "https://ci.douyin.com/cover",
          "duration_seconds": 19.412,
          "width": 720,
          "height": 1280
        },
        "music": {
          "id": "7136850194742315016",
          "title": "Music",
          "author": "Artist"
        },
        "metrics": {
          "likes": 700,
          "comments": 42,
          "collects": 18,
          "shares": 9,
          "plays": null
        }
      }
    ]
  },
  "page": {
    "next_cursor": "cursor_example"
  },
  "warnings": [
    "play_count_unavailable"
  ],
  "meta": {
    "listing_id": "douyin.hashtags.videos",
    "version": "v1",
    "catalog_release_id": "catalog-production-2026-09-19.b069be57",
    "price_book_version": "pricebook-production-2026-09-19.4487e352",
    "result_status": "complete",
    "charged_amount": "0.02",
    "balance_after": "49.95",
    "currency": "CNY"
  }
}
Response fields
codenumber
const: 200
request_idstring
messagestring
const: "success"
dataobject
pageobject
warningsarray
metaobject
Response JSON Schema
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "code": {
      "type": "number",
      "const": 200
    },
    "request_id": {
      "type": "string"
    },
    "message": {
      "type": "string",
      "const": "success"
    },
    "data": {
      "type": "object",
      "properties": {
        "items": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "caption": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "created_at": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "author": {
                "type": "object",
                "properties": {
                  "id": {
                    "type": "string"
                  },
                  "sec_uid": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "unique_id": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "name": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "avatar_url": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "id",
                  "sec_uid",
                  "unique_id",
                  "name",
                  "avatar_url"
                ],
                "additionalProperties": false
              },
              "media": {
                "type": "object",
                "properties": {
                  "video_url": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "cover_url": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "duration_seconds": {
                    "anyOf": [
                      {
                        "type": "number",
                        "minimum": 0
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "width": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "height": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "exclusiveMinimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "video_url",
                  "cover_url",
                  "duration_seconds",
                  "width",
                  "height"
                ],
                "additionalProperties": false
              },
              "music": {
                "type": "object",
                "properties": {
                  "id": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "title": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "author": {
                    "anyOf": [
                      {
                        "type": "string"
                      },
                      {
                        "type": "null"
                      }
                    ]
                  }
                },
                "required": [
                  "id",
                  "title",
                  "author"
                ],
                "additionalProperties": false
              },
              "metrics": {
                "type": "object",
                "properties": {
                  "likes": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "comments": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "collects": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "shares": {
                    "anyOf": [
                      {
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 9007199254740991
                      },
                      {
                        "type": "null"
                      }
                    ]
                  },
                  "plays": {
                    "type": "null"
                  }
                },
                "required": [
                  "likes",
                  "comments",
                  "collects",
                  "shares",
                  "plays"
                ],
                "additionalProperties": false
              }
            },
            "required": [
              "id",
              "caption",
              "created_at",
              "author",
              "media",
              "music",
              "metrics"
            ],
            "additionalProperties": false
          }
        }
      },
      "required": [
        "items"
      ],
      "additionalProperties": false
    },
    "page": {
      "type": "object",
      "properties": {
        "next_cursor": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "next_cursor"
      ],
      "additionalProperties": false
    },
    "warnings": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "meta": {
      "type": "object",
      "properties": {
        "listing_id": {
          "type": "string",
          "const": "douyin.hashtags.videos"
        },
        "version": {
          "type": "string",
          "const": "v1"
        },
        "catalog_release_id": {
          "type": "string",
          "minLength": 1
        },
        "price_book_version": {
          "type": "string",
          "minLength": 1
        },
        "result_status": {
          "type": "string",
          "enum": [
            "complete",
            "empty",
            "partial"
          ]
        },
        "charged_amount": {
          "type": "string"
        },
        "balance_after": {
          "type": "string"
        },
        "currency": {
          "type": "string",
          "const": "CNY"
        }
      },
      "required": [
        "listing_id",
        "version",
        "catalog_release_id",
        "price_book_version",
        "result_status",
        "charged_amount",
        "balance_after",
        "currency"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "code",
    "request_id",
    "message",
    "data",
    "page",
    "warnings",
    "meta"
  ],
  "additionalProperties": false
}

Usage notes

Good for

  • Use it to study bounded public content samples around a known hashtag.

Not for

  • Do not use it as an exhaustive archive or an explanation of ranking logic.

Known limitations

  • Upstream page size is fixed at 10.
  • Only cards that safely map to videos are emitted.
  • Pagination may repeat and play count is returned as null.

Billing

¥0.02 per call. Complete and confirmed empty results are charged; partial results and failures are not.

See all pricing →