This client is still in Beta, breaking changes might be introduced until the first stable release.
Simple API Client for CoinGecko written in Rust
Refer to CoinGecko official API
| Endpoint | Status | Testing | Function | |:-------------------------------:|:-------:|:-------:|:--------------------------------:| | /ping | ✓ | | ping | | /simple/price | ✓ | | simplepriceshort, simpleprice | | /simple/supportedvscurrencies | ✓ | ✓ | SimpleSupportedVSCurrencies | | /coins/list | ✓ | ✓ | CoinsList | | /coins/market | ✓ | ✓ | CoinsMarket | | /coins/{id} | ✓ | ✓ | CoinsID | | /coins/{id}/history | ✓ | ✓ | CoinsIDHistory | | /coins/{id}/marketchart | ✓ | ✓ | CoinsIDMarketChart | | /events/countries | WIP | WIP | EventsCountries | | /events/types | WIP | WIP | EventsType | | /exchange_rates | ✓ | ✓ | ExchangeRate | | /global | ✓ | ✓ | Global |
More api Endpoints than listed here will be supported in the Future. As soon as I start working on additional Endpoints the Table will be updated.
Some Methods with a lot of boolean Flags have a shorter Version i.E "simplepriceshort" for if you just want to retrieve Some Data and leave the Rest of the Params as their Default.
```rust use rustgecko::client::GeckoClient;
fn main() { let client = CoinGecko::default(); } ```
```rust use rustgecko::client::GeckoClient;
fn main() { use reqwest::header; let mut headers = header::HeaderMap::new();
// Consider marking security-sensitive headers with `set_sensitive`.
let mut auth_value = header::HeaderValue::from_static("secret");
auth_value.set_sensitive(true);
headers.insert("x-cg-pro-api-key", auth_value);
// get a client builder
let client = reqwest::Client::builder()
.default_headers(headers)
.build()?;
let _ = CoinGecko::new_with_custome_client(client);
} ```
MIT
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.