Skip to main content

eve_esi_api/api/
characters.rs

1use crate::{errors::EveEsiError, ApiClient};
2
3use crate::Result;
4use crate::Verify;
5
6use serde::{Deserialize, Serialize};
7
8#[derive(Serialize, Deserialize, Debug)]
9pub struct Character {
10    pub name: String,
11    pub gender: String,
12}
13
14pub async fn logged_character(client: &ApiClient) -> Result<Verify> {
15    client.query_auth("oauth/verify".to_owned()).await
16}
17
18/// character api call.
19// Todo, move it move it
20pub async fn public_infos(client: &ApiClient, id: usize) -> Result<Character> {
21    if let Some(character) = client.query_esi(format!("characters/{}/", id)).await? {
22        Ok(character)
23    } else {
24        Err(EveEsiError::LoginError)
25    }
26}