Crate toggl_reports[][src]

A library to call Toggl Reports API v2 in Rust.

This library provide makes it easier to call Toggl Reports API v2 from Rust codes.

examples

To get summary reports of Toggl Track, create struct Query and pass it to Toggl.get_summary_report().

use toggl_reports::{Toggl, query::Query, query::GroupingKind, query::OrderKind};
use chrono::Utc;

#[tokio::main]
async fn main() {
    let api_token: &str = "00000000000000000000000000000000";  // your api token
    let workspace_id: u64 = 264;                               // your workspace id

    let toggl = Toggl::new(api_token);
    let query = Query::new(workspace_id)
        .grouping(GroupingKind::Projects)
        .order_field(OrderKind::Description)
        .since(Utc::today());

    let res = toggl.get_summary_report(&query).await.unwrap();
    println!("TOTAL: {}s", res.total_grand.num_seconds());
}

For more details about query parameters and response formst, see Toggl Reports API v2.

Re-exports

pub use detailed_report::DetailedReport;
pub use summary_report::SummaryReport;
pub use weekly_report::WeeklyReport;

Modules

detailed_report

Data structures to store DetailedReports.

query

Data structures to construct queries.

reports

Data structures to store results of reports

summary_report

Data structures to store SummaryReports.

weekly_report

Data structures to store WeeklyReports.

Structs

Toggl

A structure to wrap Toggl Reports API v2.