A how-to guide to the match history API for Valve's MOBA video game
This is a how-to guide for using the Dota 2 match history web API provided by Valve Software for their popular multiplayer online battle arena (MOBA) video game, Dota 2, played by millions of people around the world. It is the most actively played game on Steam, Valve's digital distribution platform.
An API, which stands for application programming interface, is a set of routines, protocols, and tools for building software applications. In the context of web development, a web API is a set of HTTP (hypertext transfer protocol) request messages, along with a definition of the structure of response messages. More information on APIs and web APIs are available on Wikipedia.
A multitude of public and professional matches of Dota are played every day, and Valve has provided an API to retrieve match history and match details in JSON or XML format, outlined on the Dota 2 dev forum. Some brief additional documentation is provided on the Team Fortress 2 wiki.
Dota pits two teams of five against each other on a map, with one team in the bottom left corner (the Radiant) and the other in the upper right corner (the Dire). The objective of the game is to destroy the opposing team's Ancient building, which is located deep in each team's base. To do this, players choose from one of 110 different heroes, each with unique playstyles and abilities. Players amass experience points for levels (which allow players to unlock abilities) and gold to buy items (which can have both active and passive effects on heroes).
Throughout the year, Valve and other eSports leagues hold tournaments, both large and small, across the world. The largest annual tournament, The International, is hosted by Valve, and the fifth iteration in August 2015 had a prize pool of over $18 million USD. Hundreds of thousands of players watch professional Dota games online and in-person.
The Dota 2 web API gives users the ability to get information on professional matches, their own matches, and other Dota-related information.