TikTok API endpoint
Returns the complete filter taxonomy for the Creative Center trend endpoints: the countries each trend tab reports, the industry ids and video content tags the filters accept, the supported lookback periods, and the video sort metrics. Use it to discover valid values for the hashtags endpoint's country_code, period, and industry_id parameters and the videos endpoint's country_code, period, sort_by, and content_label_ids parameters. This endpoint performs no upstream request and has no parameters.
/tiktok/creative-center/filtersThis endpoint has no parameters and performs no upstream request. Use it to build valid requests for /api/v1/tiktok/creative-center/hashtags and /api/v1/tiktok/creative-center/videos.
Fields:
hashtag_countries: the 27 countries whose hashtag trends are reported. Each entry has code (ISO-2) and name.video_countries: the 5 countries whose video trends are reported. This is a strict subset of hashtag_countries.industries: all 18 Creative Center industry ids with display names. Pass one as industry_id to the hashtags endpoint.video_content_tags: the 5 video content tag ids with display names. Pass one or more as content_label_ids to the videos endpoint.hashtag_periods: lookback windows in days accepted by the hashtags endpoint's period parameter.video_periods: lookback windows in days accepted by the videos endpoint's period parameter.video_sort_by: sort metrics accepted by the videos endpoint's sort_by parameter, each with its display label.Notable behavior:
industry_id or content_label_ids value returns a 400 invalid-parameter
error instead of an empty upstream result.| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/tiktok/creative-center/filters" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"hashtag_countries": [
{
"code": "US",
"name": "United States"
},
{
"code": "GB",
"name": "United Kingdom"
}
],
"video_countries": [
{
"code": "US",
"name": "United States"
},
{
"code": "JP",
"name": "Japan"
}
],
"industries": [
{
"id": "10000000000",
"name": "Education"
},
{
"id": "22000000000",
"name": "Apparel & Accessories"
}
],
"video_content_tags": [
{
"id": "11003",
"name": "Fashion"
},
{
"id": "11015",
"name": "Technology & Finance"
}
],
"hashtag_periods": [
7,
30,
90
],
"video_periods": [
7,
30
],
"video_sort_by": [
{
"value": "views",
"label": "Highest video views"
},
{
"value": "engagement",
"label": "Highest engagement"
},
{
"value": "six_second_views",
"label": "Highest 6s views"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/creativecenter.filtersResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | creativecenter.CreativeCenterFiltersResp | No | ||||
| data.hashtag_countries | array | No | Countries whose hashtag trends are reported. | |||
| data.hashtag_countries[].code | string | No | ISO-2 country code, for example `US`. | |||
| data.hashtag_countries[].name | string | No | Display name, for example `United States`. | |||
| data.hashtag_periods | array | No | Lookback windows in days accepted by the hashtags endpoint's `period`. | |||
| data.industries | array | No | Industry ids accepted by the hashtags endpoint's `industry_id` parameter. | |||
| data.industries[].id | string | No | Numeric industry id, for example `22000000000`. | |||
| data.industries[].name | string | No | Display name, for example `Apparel & Accessories`. | |||
| data.video_content_tags | array | No | Content tag ids accepted by the videos endpoint's `content_label_ids` parameter. | |||
| data.video_content_tags[].id | string | No | Numeric content tag id, for example `11003`. | |||
| data.video_content_tags[].name | string | No | Display name, for example `Fashion`. | |||
| data.video_countries | array | No | Countries whose video trends are reported. | |||
| data.video_countries[].code | string | No | ISO-2 country code, for example `US`. | |||
| data.video_countries[].name | string | No | Display name, for example `United States`. | |||
| data.video_periods | array | No | Lookback windows in days accepted by the videos endpoint's `period`. | |||
| data.video_sort_by | array | No | Sort metrics accepted by the videos endpoint's `sort_by` parameter. | |||
| data.video_sort_by[].label | string | No | Display label from TikTok's own sort control. | |||
| data.video_sort_by[].value | string | No | Value accepted by the videos endpoint's `sort_by` parameter. | |||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 429 | Rate limit exceeded | #/definitions/app.Response |
| 500 | Internal server error | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/tiktok/creative-center/filters" \
-H "x-api-key: $CRAWLORA_API_KEY"