There is no real time api provided by aomstats. However, we do provide a weekly database dumps of all match data and
a snapshot of the current leaderboard. These database dumps are created every Sunday at 4 UTC. These snapshots are
provided in gzipped csv formats.
The list of current database dumps and links to download them can be found at this api:
https://aomstats.io/api/dumps
Checksums are provided in case files need to be regenerated or backfilled. Please do not download the files more
than once to save on bandwidth unless the checksum has changed since you last downloaded the file.
Schema
The match data dumps come in a denormalized format. Each row represents a single player in a single match. Therefore
each match must have at least 2 rows! Indicating at least 2 players. Some data, such as match_id, match_elo,
mapname, etc... are repeated for each player in the match due to this denormalized format.
Below is the schema for the weekly match data dumps:
- match_id (int) - the unique id of the match
- matchtype_id (int) - indicates how many players and which leaderboard the match is in. Possible values: 1, 2, 3,
4, 5, 6, 7, 8
- leaderboard_id (int) - the leaderboard the match counts towards. Possible values: 1 (Sup 1v1), 2 (Sup Team), 3 (DM
1v1), 4 (DM Team)
- profile_id (int) - the player identifier
- old_elo (int) - the player's Elo before the game
- elo (int) - the player's Elo after the game
- match_elo (int) - the average Elo of all players in the match
- mapname (string) - name of the map that was played
- options (string) - special string
- slotinfo (string) - special string
- description (string) - game room description
- startgametime (int) - unix epoch timestamp of when the game started
- completiontime (int) - unix epoch timestamp of when the game ended
- duration (int) - difference between completiontime and startgametime, duration in seconds
- counters (string) - json string of end of game achievements
- resulttype (int) - 0 if the game was a loss, 1 if the game was a win, 4 if...? drop? Unclear.
- patch (string) - the patch the game was played on
- win (boolean) - whether the player won or lost
- god (string) - the god the player played in this match
- team (int) - the team the player was on in this match
- missing_from_api (boolean) - whether this match was missing from the official APIs. If True, then this match was
inferred by aomstats based on ongoing matches and subsequent Elo changes. Results might be inaccurate.
The leaderboard snapshot also comes in a denormalized format. Each row represents a single player in a single
leaderboard. Players only appear in the leaderboard if they have at least 10 ranked games in that leaderboard. A
player can appear at most 4 times in the file, assuming they are ranked in all ladders.
Below is the schema for the leaderboard dump:
- leaderboard_id (int) - leaderboard, possible values 1 (Sup 1v1), 2 (Sup Team), 3 (DM 1v1), 4 (DM Team)
- rank (int) - the player's current rank
- rating (int) - the player's current rating
- profile_id (int) - the unique profile id associated with this player
- alias (string) - the current display name for the player
- wins (int) - total number of wins
- losses (int) - total number of losses
- streak (int) - current win/loss streak
- highestrank (int) - highest rank achieved in this ladder
- highestrating (int) - highest rating achieved in this ladder
- lastmatchdate (int) - the time stamp in seconds since unix epoch that this player last played a match
- social_link (string) - the steam or xbox live link for the profile
- country (string) - two letter country code of the country