Crate monzo[−][src]
Expand description
A Monzo client in pure rust.
It’s ergonomic, strongly-typed, and asynchronous.
In order to use this client, you will first need to get an access token and/or refresh token for the Monzo API (see the docs)
Usage
use monzo::Client;
#[tokio::main]
async fn main() -> monzo::Result<()> {
// You can create a simple monzo client using only an access token
let quick_client = Client::new("ACCESS_TOKEN");
// get a list of accounts
let accounts = quick_client.accounts().await?;
// get the id of one of the accounts
let account_id = &accounts[0].id;
// get the balance of that account
let balance = quick_client.balance(account_id).await?;
// If you have a refresh token and client credentials
// you can create or upgrade a client which is capable
// of refreshing its own access token.
let mut refreshable_client =
quick_client.with_refresh_tokens("CLIENT_ID", "CLIENT_SECRET", "REFRESH_TOKEN");
refreshable_client.refresh_auth().await?;
Ok(())
}
Modules
Accounts API endpoint
Create items in your account feed
‘Inner’ clients that encapsulate the different authentication handling strategies that the Monzo API supports.
Retrieve and manipulate transactions
Structs
A struct representing a Monzo Account
The balance of a Monzo Account
A Monzo API client
Struct representating an owner of a Monzo account
Representation of a Monzo pot
A Monzo transaction
The response returned by the Client::who_am_i
method.
Enums
Common error type for anything that can go wrong with this crate
Type Definitions
Result type for all methods in this crate which can fail.