1mod types;
2
3pub use types::User;
4
5use std::future::Future;
6
7use crate::{
8 BaseClient, Error, Response, UserClient,
9 types::constants::{ME, USERS},
10};
11
12pub trait UserAPI: BaseClient {
13 fn get_me(&self) -> impl Future<Output = Result<Response<User>, Error>> + Send;
15}
16
17impl UserAPI for UserClient {
18 async fn get_me(&self) -> Result<Response<User>, Error> {
19 let mut url = self.base_url();
20 url.path_segments_mut().unwrap().extend([USERS, ME]);
21 crate::client::json(self.http_client().get(url)).await
22 }
23}