3 releases

new 0.0.8 Mar 11, 2025
0.0.7 Mar 2, 2025
0.0.6 Feb 6, 2025
0.0.5 Jan 24, 2025

#662 in Web programming

Download history 372/week @ 2025-01-08 39/week @ 2025-01-15 119/week @ 2025-01-22 17/week @ 2025-01-29 162/week @ 2025-02-05 1/week @ 2025-02-12 19/week @ 2025-02-19 173/week @ 2025-02-26 72/week @ 2025-03-05

270 downloads per month

GLWTPL license

230KB
6K SLoC

Kez

crates.io docs.rs

A Rust crate for interacting with Valve's Dota 2 Web API. Named after the newest hero added to Dota 2 as of this crate's creation date (2025-01-09).

Motivation

Existing Rust crates like dota2_api and dota2_webapi_bindings are no longer active maintained and lack support for newer API features. While building a Dota 2 match finder, I needed an API they didn't provide, so I created Kez.

Supported APIs

  • get_match_history_by_seq_num: Fetch up to 100 sequential matches. Ideal for bulk data collection.
  • get_match_history: Search for matches by player, hero, or other criteria (limited filtering support).
  • get_heroes: Retrieve metadata for all heroes.
  • history: This is a thin wrapper around get_match_history_by_seq_num, which returns a list of Matches with more detailed information.

TODOs

  • add more dota2 related types, LobbyType/GameMode/Item/...
  • add more APIs? GetTopLiveGame?
  • add more documents and comments about varies fields of response
  • other things...

Disclaim

Don't use this crate for anything serious, it is fundamentally unstable since every game update could potentially break this crate.

Dependencies

~4–16MB
~201K SLoC