Endpoint Playground
Returns one BO3.gg match by slug: teams with scores and winner, status, best-of, tier, start and end time, tournament, stage and round, the maps played with scores, the site's AI prediction, live and recorded streams and the key-fact insights for each team. The slug comes from bo3-match-history.
29 Oct 2026: 32 streams; 5 fields had a value in every checked item and 1 varied between items.
Sample value profiles: platform: twitch (21), youtube (6), kick (5); viewer_count: 0 to 35,362, median 963; name: “PGL” and 29 other values.
curl 'https://api.crawlora.net/api/v1/bo3/match?slug=vitality-vs-natus-vincere-27-10-2026' \
-H "x-api-key: $CRAWLORA_API_KEY"| Parameter | Type | Required | Prefilled value | Description |
|---|---|---|---|---|
| slug | string | Yes | vitality-vs-natus-vincere-27-10-2026 | Match slug from bo3-match-history, for example vitality-vs-natus-vincere-27-10-2026 |
{
"code": 200,
"msg": "OK",
"data": {
"source_url": "https://api.bo3.gg/api/v1/match",
"fetched_at": "2026-10-28T10:00:00Z",
"id": 132243,
"slug": "vitality-vs-natus-vincere-27-10-2026",
"url": "https://bo3.gg/matches/vitality-vs-natus-vincere-27-10-2026",
"game": "cs2",
"status": "finished",
"best_of": 3,
"tier": "s",
"stage": "PGL Masters Bucharest 2026 Group Stage",
"round": "Round 4",
"event_type": "lan",
"teams": [
{
"id": 667,
"slug": "vitality",
"name": "Vitality",
"score": 2,
"winner": true
},
{
"id": 787,
"slug": "natus-vincere",
"name": "Natus Vincere",
"score": 0,
"winner": false
}
],
"tournament": {
"id": 5338,
"slug": "pgl-masters-bucharest-2026",
"name": "PGL Masters Bucharest 2026",
"tier": "s"
},
"maps": [
{
"number": 1,
"status": "finished",
"map": "inferno",
"winner_score": 13,
"loser_score": 8
}
],
"streams": [
{
"platform": "youtube",
"name": "PGL",
"official": false,
"url": "https://www.youtube.com/watch?v=example"
}
],
"insights": []
}
}The sample response, schema and code snippets below work without an account. Sending a live request needs an API key.