Endpoint Playground
Returns the competitions (unique tournaments) inside one category, most followed first. Each `id` is the competition id the tournament-seasons, standings, tournament-rounds, and round-events endpoints take. Get the category `id` from the categories endpoint. An empty `tournaments` list is a valid response: some categories exist without any competitions. Returns 404 for an unknown category id.
14 Oct 2026: 20 tournaments; 6 fields had a value in every checked item.
Sample value profiles: user_count: 20 to 1,205,580, median 7,031; name: “Premier League” and 19 other values.
curl 'https://api.crawlora.net/api/v1/sofascore/category-tournaments?id=1' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| id | string | Yes | 1 | Numeric SofaScore category id from the categories endpoint |
{
"code": 200,
"msg": "OK",
"data": {
"category_id": 13,
"count": 2,
"source_url": "https://api.sofascore.com/api/v1/category/13/unique-tournaments",
"fetched_at": "2026-10-07T14:00:00Z",
"tournaments": [
{
"id": 325,
"name": "Campeonato Brasileiro Série A",
"slug": "brasileirao-serie-a",
"category_id": 13,
"category_name": "Brazil",
"user_count": 332185
},
{
"id": 390,
"name": "Brasileirão Série B",
"slug": "brasileirao-serie-b",
"category_id": 13,
"category_name": "Brazil",
"user_count": 74964
}
]
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.