Replay Data API

192 parsed Warcraft III tournament games as JSON. Free, read-only, no keys and no sign-up.

Everything here is a static file served from the same origin as the site. There is no authentication, no rate limiting beyond ordinary CDN behaviour, and nothing to register for. Machine-readable description: OpenAPI 3.1.

Endpoints

EndpointWhat it is
GET /data/summaries-index.json One entry per replay: map, duration, matchup, and each player's race, first hero and timings. Start here.
GET /data/summaries/{replayId}.json One game in full, including the opening build sequence and everything researched.

Example

curl https://wc3v.com/data/summaries-index.json

curl https://wc3v.com/data/summaries/2458063746_Eer0_FoCuS_Shattered-Exile.json

Races are single letters: H Human, O Orc, E Night Elf, U Undead. Matchups are two race letters joined by v, alphabetically ordered, so Night Elf against Undead is EvU regardless of who is asking.

Read the field notes before you trust a timing

Tier timings are inferred, not measured. tier2Sec and tier3Sec record when the parser first observed a player at that tier from selection data, which can happen before the tier upgrade actually completes. Across this corpus the associated building lists contain tier-1 buildings, and the medians run 2 to 3 minutes for Orc, Night Elf and Undead against roughly 5 minutes for Human, which is not a real racial difference. Use them for ordering within a single game if you must, but do not present them as tech benchmarks. heroTimeSec is consistent across races and is the timing to rely on.

The index response carries a fieldNotes object saying this in machine-readable form. If you build on this data, read it.

What is in the corpus

Tournament games from 12+ events, parsed by WC3V's own parser. Player names are the tournament handles recorded in the replay files themselves.

Parser test fixtures are excluded. The client/data/summaries/ directory in the repository holds around 142 of them alongside the real games, and they are filtered out of the published index: including them would have been a false claim about the corpus, and it dragged the 25th-percentile game length down to 73 seconds.

No visitor data appears anywhere in this API. Replays dropped on the site are parsed in the browser and never uploaded, which is covered in the privacy policy.

Stability

What is deliberately not in the contract

Plenty of other JSON is reachable under /data/. It is public because the site is static, not because it is an API, and it is excluded on purpose:

PathWhy not
/data/builds-manifest.jsonThe curated build library. Its shape is coupled to how the homepage renders cards and changes with the design. Read the builds at /builds or as Markdown at /builds/<id>.md instead.
/data/builds-cards.jsonA render-time derivative, regenerated on every deploy.
/data/unit-balance-lite.jsonDerived from Blizzard's own game data and changes with WC3 patches. It powers tooltips; presenting it as "the WC3V API" would misrepresent whose data it is.
/data/fx-units.json, /data/map-folders.jsonRenderer internals.
/data/replay-wishlist.jsonAn editorial to-do list.
/asset-manifest.jsonDeploy-internal content hashes.

Other machine-readable entry points

Attribution and licence

The code is GPLv3. If you build something on this data, a link back to wc3v.com is appreciated and not required.

Warcraft III and all related assets are trademarks of Blizzard Entertainment. WC3V is a fan-made, non-commercial tool and is not affiliated with or endorsed by Blizzard.