EVE ESI
Rust API wrapper for interaction with EVE Online's ESI.
Usage
Create a new EsiClient instance and request public information about a character from ESI.
async
Make certain you set the user agent as demonstrated above, ensure it includes contact email in case there are any issues with your ESI requests.
Examples
Axum
A basic example demonstrating how to use the eve_esi crate with the axum web framework to create an API that serves ESI data.
- Run
cargo run --example axum - Head to one of the URLs posted in your terminal, change the IDs to test out different characters/corporations.
SSO
An example demonstrating how to use the eve_esi crate with the axum web framework to utilize EVE SSO authentication to login with EVE Online. This is a prerequisite for accessing private ESI routes.
- Create a developer application on EVE Online's Developer Portal
- Set the callback URL to
http://localhost:8080/callback - Copy .env.example to .env and set the CALLBACK_URL, EVE_ESI_CLIENT_ID, EVE_ESI_CLIENT_SECRET, & CONTACT_EMAIL variables
- Run
cargo run --example sso - Go to
http://localhost:8080/loginin your browser - Follow the login process, once authorized you'll be shown your character's information.
Notes
- More ESI routes will be added as needed, feel free to submit pull requests to add any you may need.
- You can override the esi_url for the ESI Client by simply using
esi_client.esi_url = "http://your_url.com"for use cases such as unit tests with crates such as mockito to emulate endpoints. See this repository's tests folder for examples.