pub struct Client { /* private fields */ }
Expand description
This is the client that is used for interacting with the Xero API. It handles OAuth 2 authentication and context (the current tenant).
Implementations§
Source§impl Client
impl Client
Generates an authorization URL to use for the code flow authorization method.
Sourcepub async fn from_client_credentials(
key_pair: KeyPair,
scopes: impl Into<Option<Scope>>,
) -> Result<Self, RequestTokenError<HttpClientError<Error>, OAuth2ErrorResponse>>
pub async fn from_client_credentials( key_pair: KeyPair, scopes: impl Into<Option<Scope>>, ) -> Result<Self, RequestTokenError<HttpClientError<Error>, OAuth2ErrorResponse>>
§Errors
Returns an error if the connection can’t be made.
Creates an authorized client from a code generated in the code flow authorization method.
§Errors
Returns an error if the connection can’t be made.
Sourcepub async fn refresh_access_token(&mut self, key_pair: KeyPair) -> Result<()>
pub async fn refresh_access_token(&mut self, key_pair: KeyPair) -> Result<()>
Refreshes the access token using the refresh token.
Sourcepub fn set_tenant(&mut self, tenant_id: Option<Uuid>)
pub fn set_tenant(&mut self, tenant_id: Option<Uuid>)
Sets the tenant ID for this client.
Sourcepub fn rate_limit_info(&self) -> &RateLimitInfo
pub fn rate_limit_info(&self) -> &RateLimitInfo
Get the current rate limit information
Sourcepub async fn get<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized + Debug>(
&self,
url: U,
query: &T,
) -> Result<R>
pub async fn get<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized + Debug>( &self, url: U, query: &T, ) -> Result<R>
Perform an authenticated GET
request against the API with automatic retry.
Sourcepub async fn get_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized + Debug>(
&self,
endpoint: XeroEndpoint,
query: &T,
) -> Result<R>
pub async fn get_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized + Debug>( &self, endpoint: XeroEndpoint, query: &T, ) -> Result<R>
Perform a GET
request against the API using a typed XeroEndpoint with automatic retry.
Sourcepub async fn put<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized>(
&self,
url: U,
data: &T,
) -> Result<R>
pub async fn put<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized>( &self, url: U, data: &T, ) -> Result<R>
Perform an authenticated PUT
request against the API with automatic retry.
Sourcepub async fn post<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized + Debug>(
&self,
url: U,
data: &T,
) -> Result<R>
pub async fn post<'a, R: DeserializeOwned, U: AsRef<str> + Debug + Clone, T: Serialize + Sized + Debug>( &self, url: U, data: &T, ) -> Result<R>
Perform an authenticated POST
request against the API with automatic retry.
Sourcepub async fn post_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized + Debug>(
&self,
endpoint: XeroEndpoint,
data: &T,
) -> Result<R>
pub async fn post_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized + Debug>( &self, endpoint: XeroEndpoint, data: &T, ) -> Result<R>
Perform a POST
request against the API using a typed XeroEndpoint with automatic retry.
Sourcepub async fn put_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized>(
&self,
endpoint: XeroEndpoint,
data: &T,
) -> Result<R>
pub async fn put_endpoint<'a, R: DeserializeOwned, T: Serialize + Sized>( &self, endpoint: XeroEndpoint, data: &T, ) -> Result<R>
Perform a PUT
request against the API using a typed XeroEndpoint with automatic retry.
Sourcepub async fn delete<U: AsRef<str> + Debug + Clone>(&self, url: U) -> Result<()>
pub async fn delete<U: AsRef<str> + Debug + Clone>(&self, url: U) -> Result<()>
Perform an authenticated DELETE
request against the API with automatic retry.
Sourcepub async fn delete_endpoint(&self, endpoint: XeroEndpoint) -> Result<()>
pub async fn delete_endpoint(&self, endpoint: XeroEndpoint) -> Result<()>
Perform a DELETE
request against the API using a typed XeroEndpoint with automatic retry.
Sourcepub fn contacts(&self) -> ContactsApi<'_>
pub fn contacts(&self) -> ContactsApi<'_>
Access the contacts API
Sourcepub fn invoices(&self) -> InvoicesApi<'_>
pub fn invoices(&self) -> InvoicesApi<'_>
Access the invoices API
Sourcepub fn purchase_orders(&self) -> PurchaseOrdersApi<'_>
pub fn purchase_orders(&self) -> PurchaseOrdersApi<'_>
Access the purchase orders API
Sourcepub fn timesheets(&self) -> TimesheetsApi<'_>
pub fn timesheets(&self) -> TimesheetsApi<'_>
Access the timesheets API
Sourcepub fn employees(&self) -> EmployeesApi<'_>
pub fn employees(&self) -> EmployeesApi<'_>
Access the employees API
Sourcepub fn earnings_rates(&self) -> EarningsRatesApi<'_>
pub fn earnings_rates(&self) -> EarningsRatesApi<'_>
Access the earnings rates API
Sourcepub fn pay_calendars(&self) -> PayCalendarsApi<'_>
pub fn pay_calendars(&self) -> PayCalendarsApi<'_>
Access the pay calendars API
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Client
impl RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl UnwindSafe for Client
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg
or
a color-specific method, such as OwoColorize::green
, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg
or
a color-specific method, such as OwoColorize::on_yellow
, Read more