Dota 2 coverage. TI to the open qualifiers.
Dota 2 ships in the Phase-1 Big Four alongside LoL, CS2 and Valorant. Fixtures, results, brackets and roster history sourced from Liquipedia (CC-BY-SA 3.0); match-stats depth landing as the per-game parsers mature. Tier-2 backfill covers the DPC and Riyadh Masters cycles; Tier-3 regional leagues land as the Liquipedia coverage allows.
What you can call
Active Dota 2 tournaments
The International, DPC tours, ESL One, Riyadh Masters, and the open qualifier circuits Liquipedia carries.
Matches by game
Bo1, Bo3 and Bo5 with per-game scores. Cursor pagination, never offset. Up to 200 per page.
One match
Canonical record — teams, draft order when available, broadcast, scheduled time, final score.
Team page
Roster, recent results, head-to-head, regional affiliation. Backfilled to the start of the DPC era.
Capability flags
Dota 2 carries the full Phase-1 MOBA feature set on /v1/games/dota2:
fixtures— every scheduled matchresults— every completed match with final scorematch_stats— per-match participant stats (Hobbyist+)brackets— tournament bracket DAG (Hobbyist+)
The capability middleware joins (tier-has-cap) AND (game-has-cap) at request time. A
game without the flag returns 200 plus meta.note rather than a 402 paywall — so
under-covered surface is visible without being breaking.
Try it
curl -H "Authorization: Bearer $STADAR_API_KEY"
"https://api.stadar.net/v1/matches?game=dota2&status=live&limit=20" from stadar import Stadar
client = Stadar(api_key="esp_live_...")
for match in client.matches.list(game="dota2", status="live", limit=20):
print(match.id, match.scheduled_at, match.teams) Attribution
Dota 2 reference data is sourced from Liquipedia contributors. Every response includes
a meta.sources array with article URLs and licence. Do not strip it — same hard
rule as LoL and CS2, set out in our Attribution Policy.