Struct FtClient

Source
pub struct FtClient { /* private fields */ }
Expand description

The client struct, used to make requests to the API.

You can create a client with the from_app method.

Implementations§

Source§

impl FtClient

Source

pub fn from_app<U: Into<String>, S: Into<String>>( app_uid: U, app_secret: S, ) -> Result<Self>

Creates a new client for a v2 application, providing the application’s UID and secret.

use ft_rs::FtClient;
 
let client = FtClient::from_app("my_uid", "my_super_secret_secret");
§Errors

This method will return an error if the reqwest client could not be built, or if the UID or secret are invalid.

Source

pub async fn fetch_token(&self) -> Result<AccessToken>

Fetches a new access token from the API.

This method will return the last valid token if it is still valid, as per the API’s documentation.

Note that the API Client will automatically fetch a new token if the last one is expired, so there is no need to call this method manually.

§Example
use ft_rs::FtClient;
 
#[tokio::main]
async fn main() -> ft_rs::Result<()> {
  let client = FtClient::from_app("my_uid", "my_super_secret_secret")?;
  let token = client.fetch_token().await?;
  println!("Token: {:?}", token);
  Ok(())
}
Source

pub async fn ensure_valid_token(&mut self) -> Result<()>

Ensures that the last valid token is still valid, and fetches a new one if it is not.

This method is called automatically by the API Client when making a request, so there is no need to call it manually.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T