# hypixel
Asynchronous Rust client for the [Hypixel Public API](https://api.hypixel.net),
with a focus on SkyBlock.
```rust
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.
- Strongly-typed models with an `extra` catch-all on volatile objects, so responses
keep deserializing as Hypixel evolves the API.
- Rate-limit state parsed from response headers ([`HypixelClient::rate_limit`]).
- Helpers in [`util`]: leveling math, bazaar/auction summaries, networth estimation,
and (under the default `nbt` feature) base64+gzip NBT inventory decoding.
## 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