Up API

A convenient and easy to use wrapper for the Up Bank API.

Example

The following example shows the calculation of the sum of all earnings (transactions with positive value) since a given date:

``` use upapi::v1::Client; use upapi::v1::transactions::{ListTransactionsOptions, TransactionResource};

fn sum_earnings(transactions : &Vec) -> f32 { transactions .iter() .map(|t| &t.attributes.amount.value) .map(|v| v.parse::().unwrap()) .filter(|a| a > &0.0) .sum() }

[tokio::main]

async fn main() { let token = std::env::var("UPACCESSTOKEN").unwrap();

let client = Client::new(token.to_string());

let mut options = ListTransactionsOptions::default();
options.filter_since("2022-01-01T00:00:00Z".to_string());
options.page_size(100);

let mut transactions = client.list_transactions(&options).await.unwrap();

let mut total = sum_earnings(&transactions.data);

while let Some(next_page) = transactions.next(&client).await {
    let next_page = next_page.unwrap();

    total = total + sum_earnings(&next_page.data);

    transactions = next_page;
}

println!("{}", total);

} ```