Kick API endpoint
Searches Kick's game and activity categories by name and returns each match's id, name, slug, tags, mature flag, current viewers, thumbnail and kick.com link. query is required and at most 100 characters; limit is 1 to 100 (default 10). Use this to find categories outside the first pages that kick-subcategories can reach. A search with no matches returns an empty list.
/kick/search-categoriesParameters:
query (required): the name to search for, up to 100 characters.limit (optional): 1 to 100; defaults to 10.Notable response behavior:
kick-subcategories, which stops after 20 pages.categories list, not an error.id is what kick-livestreams takes as category_id.Example response (long values and lists shortened):
{
"code": 200,
"msg": "OK",
"data": {
"query": "chat",
"categories": [
{
"id": 8548,
"name": "Chat Roulette",
"slug": "chat-roulette",
"tags": [
"Casual"
],
"mature": true,
"viewers": 874,
"thumbnail_url": "https://files.kick.com/images/subcategories/8548/banner/e85a48f5-71d1-43d7-8a44-4dc7bb820b57",
"url": "https://kick.com/category/chat-roulette"
},
{
"id": 1969,
"name": "Kukoro: Stream Chat Games",
"slug": "kukoro:-stream-chat-games",
"tags": [
"Indie"
],
"mature": false,
"viewers": 0,
"thumbnail_url": "https://files.kick.com/images/subcategories/1969/banner/982748f6-c7a7-4d74-9ca3-086dd61d7fdd",
"url": "https://kick.com/category/kukoro:-stream-chat-games"
}
]
}
}
| Field | Filled in, of 9 checked | Values in the sample |
|---|---|---|
| id | 9 | |
| name | 9 | |
| slug | 9 | |
| tags | 9 | median 2 entries |
| mature | 9 | true in 1 of 9 |
| viewers | 9 | 0 to 49,518, median 0 |
| thumbnail_url | 9 | files.kick.com |
| url | 9 | kick.com |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| query | string | Yes | Category name to search for, up to 100 characters | chat | |
| limit | integer | No | 10 | Maximum results, 1 to 100; defaults to 10 | 10 |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/kick/search-categories?query=chat&limit=10" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"query": "chat",
"categories": [
{
"id": 8548,
"name": "Chat Roulette",
"slug": "chat-roulette",
"tags": [
"Casual"
],
"mature": true,
"viewers": 874,
"thumbnail_url": "https://files.kick.com/images/subcategories/8548/banner/e85a48f5-71d1-43d7-8a44-4dc7bb820b57",
"url": "https://kick.com/category/chat-roulette"
},
{
"id": 1969,
"name": "Kukoro: Stream Chat Games",
"slug": "kukoro:-stream-chat-games",
"tags": [
"Indie"
],
"mature": false,
"viewers": 0,
"thumbnail_url": "https://files.kick.com/images/subcategories/1969/banner/982748f6-c7a7-4d74-9ca3-086dd61d7fdd",
"url": "https://kick.com/category/kukoro:-stream-chat-games"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/kick.searchCategoriesResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| code | integer | No | 200 | |||
| data | kick.SearchCategoriesResponse | No | ||||
| data.categories | array | No | ||||
| data.categories[].id | integer | No | ||||
| data.categories[].mature | boolean | No | ||||
| data.categories[].name | string | No | ||||
| data.categories[].slug | string | No | ||||
| data.categories[].tags | array | No | ||||
| data.categories[].thumbnail_url | string | No | ||||
| data.categories[].url | string | No | ||||
| data.categories[].viewers | integer | No | ||||
| data.query | string | No | ||||
| msg | string | No | OK |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 429 | Too Many Requests | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/kick/search-categories?query=chat&limit=10" \
-H "x-api-key: $CRAWLORA_API_KEY"