https://api.track.toggl.com/reports/api/v3/workspace/{workspace_id}/weekly/time_entries.pdf
Downloads weekly report in pdf format.
- cURL
- Go
- Ruby
- JavaScript
- Python
- Rust
extern crate tokio;extern crate serde_json;use reqwest::{Client};use reqwest::header::{CONTENT_TYPE};#[tokio::main]async fn main() -> Result<(), reqwest::Error> { let client = Client::new().basic_auth("<email>", "<password>"); let json = client.request(Method::POST, "https://api.track.toggl.com/reports/api/v3/workspace/{workspace_id}/weekly/time_entries.pdf".to_string()).json(&serde_json::json!(\{"billable":"boolean","calculate":"string","cents_separator":"string","client_ids":[\{\}],"date_format":"string","description":"string","duration_format":"string","end_date":"string","group_by_task":"boolean","group_ids":[\{\}],"grouping":"string","logo_url":"string","max_duration_seconds":"integer","min_duration_seconds":"integer","project_ids":[\{\}],"rounding":"integer","rounding_minutes":"integer","startTime":"string","start_date":"string","tag_ids":[\{\}],"task_ids":[\{\}],"time_entry_ids":[\{\}],"user_ids":[\{\}]\})) .header(CONTENT_TYPE, "application/json") .send() .await? .json() .await?; println!("{:#?}", json); Ok(())}
Parameters
Path
name | type | required | description |
---|---|---|---|
workspace_id | integer | true | Workspace ID |
Body
Name | Type | Description |
---|---|---|
billable | boolean | Whether the time entry is set as billable, optional, premium feature. |
calculate | string | Calculate option, optional. Can be by time or amounts. |
cents_separator | string | - |
client_ids | Array of integer | Client IDs, optional, filtering attribute. To filter records with no clients, use [null]. |
date_format | string | Date format, optional, default “MM/DD/YYYY”. Can be “MM/DD/YYYY”, “DD-MM-YYYY”, “MM-DD-YYYY”, “YYYY-MM-DD”, “DD/MM/YYYY” or “DD.MM.YYYY”. |
description | string | Description, optional, filtering attribute. |
duration_format | string | Duration format, optional, default “classic”. Can be “classic”, “decimal” or “improved”. |
end_date | string | End date, example time.DateOnly. Should be greater than Start date. |
group_by_task | boolean | GroupByTask tells the weekly report to return the data grouped by all the usual groups plus planned task. |
group_ids | Array of integer | Group IDs, optional, filtering attribute. |
grouping | string | Grouping option, optional. |
logo_url | string | - |
max_duration_seconds | integer | Max duration seconds, optional, filtering attribute. Time Audit only, should be greater than MinDurationSeconds. |
min_duration_seconds | integer | Min duration seconds, optional, filtering attribute. Time Audit only, should be less than MaxDurationSeconds. |
project_ids | Array of integer | Project IDs, optional, filtering attribute. To filter records with no projects, use [null]. |
rounding | integer | Whether time should be rounded, optional, default from user preferences. |
rounding_minutes | integer | Rounding minutes value, optional, default from user preferences. Should be 0, 1, 5, 6, 10, 12, 15, 30, 60 or 240. |
startTime | string | - |
start_date | string | Start date, example time.DateOnly. Should be less than End date. |
tag_ids | Array of integer | Tag IDs, optional, filtering attribute. To filter records with no tags, use [null]. |
task_ids | Array of integer | Task IDs, optional, filtering attribute. To filter records with no tasks, use [null]. |
time_entry_ids | Array of integer | TimeEntryIDs filters by time entries. This was added to support retro-compatibility with reports v2. |
user_ids | Array of integer | User IDs, optional, filtering attribute. |
Response
200
Returns the weekly report in pdf format
400
Possible error messages:
- At least one parameter must be set
- Invalid workspace id
- The ‘{parameter}’ parameter is not supported
- Invalid ‘{parameter}’ value, allowed values are: ‘{valid_values}’
402
Workspace needs to have this feature enabled.
403
Workspace not found/accessible
500
Internal Server Error