1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use super::super::get::User;
use super::*;

impl Client {
    pub async fn user(&self, user: i32) -> Result<Option<User>, Box<dyn std::error::Error>> {
        let res = req()
            .get(self.endpoint("/v1/users/{}", vec![user.to_string()]))
            .send()
            .await?;

        match res.status() {
            StatusCode::NOT_FOUND => Ok(None),
            StatusCode::OK => Ok(Some(res.json::<User>().await?)),
            _ => Err("Unknown Response Status Code".into()),
        }
    }
}