hypixel-sdk 0.2.0

Async client for the Hypixel Public API with typed models and SkyBlock helpers
Documentation

hypixel

Asynchronous Rust client for the Hypixel Public API, with a focus on SkyBlock.

use hypixel::HypixelClient;

#[tokio::main]
async fn main() -> hypixel::Result<()> {
    let client = HypixelClient::new("YOUR-API-KEY");

    let profiles = client.skyblock_profiles("UUID").await?;
    println!("{} profiles", profiles.len());

    // Keyless endpoints work without a key:
    let bazaar = HypixelClient::unauthenticated().skyblock_bazaar().await?;
    println!("{} bazaar products", bazaar.products.len());
    Ok(())
}

Features

  • Full v2 endpoint coverage: general, SkyBlock, and resources, plus skyblock_auctions_all for fetching the whole auction listing concurrently.
  • Strongly-typed models, down to the SkyBlock member sections (skills, dungeons, slayers, pets, currencies, HOTM), with an extra catch-all on every object so responses keep deserializing as Hypixel evolves the API.
  • Rate-limit state parsed from response headers ([HypixelClient::rate_limit]), with optional automatic retries and response caching on the builder.
  • Helpers in [util]: leveling math for the SkyBlock curves (skills, catacombs and dungeon classes, slayers, pets, HOTM, profile level) with member_summary resolving a whole member at once; bazaar spreads and after-tax flip finding; lowest-BIN aggregation by name or decoded item id; networth estimates that count recombobulators, potato books, and enchantments; and (under the default nbt feature) base64+gzip NBT inventory decoding.
  • Username and UUID lookups against the Mojang API in the mojang module.

Feature flags

  • nbt (default): enables [util::nbt] and NBT-based networth extraction.

Disable with default-features = false if you do not need NBT decoding.

License

MIT