pub struct Client { /* private fields */ }
Expand description
Entrypoint for interacting with the API client.
Implementations§
source§impl Client
impl Client
sourcepub fn new<I, K, R, T, Q>(
client_id: I,
client_secret: K,
redirect_uri: R,
token: T,
refresh_token: Q
) -> Selfwhere
I: ToString,
K: ToString,
R: ToString,
T: ToString,
Q: ToString,
pub fn new<I, K, R, T, Q>( client_id: I, client_secret: K, redirect_uri: R, token: T, refresh_token: Q ) -> Selfwhere I: ToString, K: ToString, R: ToString, T: ToString, Q: ToString,
Create a new Client struct. Requires OAuth2 configuration values as well as an access and refresh token.
Panics
This function will panic if the internal http client fails to create
sourcepub fn set_auto_access_token_refresh(&mut self, enabled: bool) -> &mut Self
pub fn set_auto_access_token_refresh(&mut self, enabled: bool) -> &mut Self
Enables or disables the automatic refreshing of access tokens upon expiration
sourcepub async fn set_expires_at(&self, expires_at: Option<Instant>) -> &Self
pub async fn set_expires_at(&self, expires_at: Option<Instant>) -> &Self
Sets a specific Instant
at which the access token should be considered expired.
The expiration value will only be used when automatic access token refreshing is
also enabled. None
may be passed in if the expiration is unknown. In this case
automatic refreshes will be attempted when encountering an UNAUTHENTICATED status
code on a response.
sourcepub async fn expires_at(&self) -> Option<Instant>
pub async fn expires_at(&self) -> Option<Instant>
Gets the Instant
at which the access token used by this client is set to expire
if one is known
sourcepub async fn set_expires_in(&self, expires_in: i64) -> &Self
pub async fn set_expires_in(&self, expires_in: i64) -> &Self
Sets the number of seconds in which the current access token should be considered expired
sourcepub async fn expires_in(&self) -> Option<Duration>
pub async fn expires_in(&self) -> Option<Duration>
Gets the number of seconds from now in which the current access token will be considered expired if one is known
sourcepub async fn is_expired(&self) -> Option<bool>
pub async fn is_expired(&self) -> Option<bool>
Determines if the access token currently stored in the client is expired. If the expiration can not be determined, None is returned
sourcepub fn with_host_override<H>(&mut self, host: H) -> &mut Selfwhere
H: ToString,
pub fn with_host_override<H>(&mut self, host: H) -> &mut Selfwhere H: ToString,
Override the host for all endpoins in the client.
sourcepub fn remove_host_override(&mut self) -> &mut Self
pub fn remove_host_override(&mut self) -> &mut Self
Disables the global host override for the client.
pub fn get_host_override(&self) -> Option<&str>
sourcepub fn new_from_env<T, R>(token: T, refresh_token: R) -> Selfwhere
T: ToString,
R: ToString,
pub fn new_from_env<T, R>(token: T, refresh_token: R) -> Selfwhere T: ToString, R: ToString,
Create a new Client struct from environment variables. Requires an existing access and refresh token.
The following environment variables are expected to be set:
ZOOM_CLIENT_ID
ZOOM_CLIENT_SECRET
ZOOM_REDIRECT_URI
Panics
This function will panic if the expected environment variables can not be found
sourcepub fn user_consent_url(&self, scopes: &[String]) -> String
pub fn user_consent_url(&self, scopes: &[String]) -> String
Return a user consent url with an optional set of scopes. If no scopes are provided, they will not be passed in the url.
sourcepub async fn refresh_access_token(&self) -> Result<AccessToken, ClientError>
pub async fn refresh_access_token(&self) -> Result<AccessToken, ClientError>
Refresh an access token from a refresh token. Client must have a refresh token for this to work.
sourcepub async fn get_access_token(
&mut self,
code: &str,
state: &str
) -> Result<AccessToken, ClientError>
pub async fn get_access_token( &mut self, code: &str, state: &str ) -> Result<AccessToken, ClientError>
Get an access token from the code returned by the URL paramter sent to the redirect URL.