#steam #api #api-bindings

steam-api

A crate for interacting with the steam api

3 unstable releases

0.4.1 Aug 4, 2021
0.4.0 Aug 1, 2021
0.3.0 Jul 27, 2021

#830 in Games

MIT license

26KB
316 lines

Simple crate to interact with the Steam API

Build status Crates.io Docs.rs

# Running the example
API_KEY=XXXXXXXXXXXXXXXXXXX cargo run --example example_program

# Running the tests
API_KEY=XXXXXXXXXXXXXXXXXXX cargo test

Example usage

fn main() -> anyhow::Result<()> {
    let steamids = vec![
        "76561198421169032",
        "76561198149368420",
    ];

    for user in steam_api::get_profile_info(&steamids, &std::env::var("API_KEY")?)?.user {
        match user.steamid.as_str() {
            "76561198421169032" => {
                println!("Persona Name\t{}", user.personaname);
                println!("Steam Level\t{}", user.player_level);
                println!("NumberOfVACBans\t{}", user.NumberOfVACBans);
                assert_eq!(user.personaname, "dind");
            }
            "76561198149368420" => {
                println!("Persona Name\t{}", user.personaname);
                println!("Steam Level\t{}", user.player_level);
                println!("NumberOfVACBans\t{}", user.NumberOfVACBans);
                assert_eq!(user.personaname, "Gone compilin'");
                assert!(user.VACBanned);
            }
            _ => (),
        }
    }
    Ok(())
}

API Key

Get your API Key here

Dependencies

~4–16MB
~236K SLoC