https://api.track.toggl.com/api/v9/workspaces/{workspace_id}/tasks
List Workspace tasks.
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::GET, "https://api.track.toggl.com/api/v9/workspaces/{workspace_id}/tasks".to_string()) .header(CONTENT_TYPE, "application/json") .send() .await? .json() .await?; println!("{:#?}", json); Ok(())}
Parameters
Path
name
type
required
description
workspace_id
integer
true
Numeric ID of the workspace
Query
name
type
required
description
since
integer
false
Retrieve tasks created/modified/deleted since this date using UNIX timestamp.
page
integer
false
Page number, default 1
per_page
integer
false
Number of items per page, default 50
sort_order
string
false
Sort order, default ASC
sort_field
string
false
Field used for sorting. Default is name. Valid values are ‘name’ and ‘created_at’
active
boolean
false
Filter by active state. You can also pass ‘both’ to get both active and inactive tasks.
pid
integer
false
Filter by project id
start_date
string
false
Smallest boundary date in the format YYYY-MM-DD
end_date
string
false
Biggest boundary date in the format YYYY-MM-DD
Response
200
Name
Type
Description
data
Array of object
-
page
integer
-
per_page
integer
-
sort_field
string
-
sort_order
string
-
total_count
integer
-
data
Name
Type
Description
active
boolean
False when the task has been done
at
string
When the task was created/last modified
client_name
string
null
estimated_seconds
integer
null
id
integer
Task ID
integration_ext_id
string
The external ID of the linked entity in the external system (e.g. JIRA/SalesForce)
integration_ext_type
string
The external type of the linked entity in the external system (e.g. JIRA/SalesForce)
integration_provider
string
The provider (e.g. JIRA/SalesForce) that has an entity linked to this Toggl Track entity
name
string
Task Name
permissions
string
-
project_billable
boolean
-
project_color
string
Metadata
project_id
integer
Project ID
project_name
string
-
rate
number
Rate for this task
rate_last_updated
string
null
recurring
boolean
Whether this is a recurring task
toggl_accounts_id
string
null
tracked_seconds
integer
The value tracked_seconds is in milliseconds, not in seconds.
user_id
integer
null
workspace_id
integer
Workspace ID
403
User does not have access to this resource.
500
Internal Server Error
Claire
January 23, 2026, 1:29pm
2
I’ve got an issue with this endpoint: when my project is recurring tracked_seconds is set to 0. If I switch my project to non-recurring, I get my tracked_second correctly. If I switch back it disappears again. Any idea why ?