Support
November 21, 2024, 12:53pm
1
https://api.track.toggl.com/api/v9/me/time_entries
Lists latest time entries.
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/me/time_entries".to_string()) .header(CONTENT_TYPE, "application/json") .send() .await? .json() .await?; println!("{:#?}", json); Ok(())}
Parameters
Query
name
type
required
description
meta
boolean
false
Should the response contain data for meta entities
include_sharing
boolean
false
Include sharing details in the response
Query
name
type
required
description
since
integer
false
Get entries modified since this date using UNIX timestamp, including deleted ones.
before
string
false
Get entries with start time, before given date (YYYY-MM-DD) or with time in RFC3339 format.
start_date
string
false
Get entries with start time, from start_date YYYY-MM-DD or with time in RFC3339 format. To be used with end_date.
end_date
string
false
Get entries with start time, until end_date YYYY-MM-DD or with time in RFC3339 format. To be used with start_date.
Response
200
Name
Type
Description
items
Array of object
-
items
Name
Type
Description
at
string
When was last updated
billable
boolean
Whether the time entry is marked as billable
client_name
string
Related entities meta fields - if requested
description
string
null
duration
integer
Time entry duration. For running entries should be negative, preferable -1
duronly
boolean
Used to create a TE with a duration but without a stop time, this field is deprecated for GET endpoints where the value will always be true.
id
integer
Time Entry ID
permissions
Array of string
Permission list
pid
integer
Project ID, legacy field
project_active
boolean
-
project_billable
boolean
-
project_color
string
-
project_id
integer
null
project_name
string
-
shared_with
Array of object
Indicates who the time entry has been shared with
start
string
Start time in UTC
stop
string
Stop time in UTC, can be null if it’s still running or created with “duration” and “duronly” fields
tag_ids
Array of integer
Tag IDs, null if tags were not provided or were later deleted
tags
Array of string
Tag names, null if tags were not provided or were later deleted
task_id
integer
null
task_name
string
-
tid
integer
Task ID, legacy field
uid
integer
Time Entry creator ID, legacy field
user_avatar_url
string
-
user_id
integer
Time Entry creator ID
user_name
string
-
wid
integer
Workspace ID, legacy field
workspace_id
integer
Workspace ID
shared_with
Name
Type
Description
accepted
boolean
-
user_id
integer
-
user_name
string
-
403
User does not have access to this resource.
500
Internal Server Error
Having some problems using this endpoint in combination with dates and times
Trace [0]: Performing GET on me/time_entries?start_date=2025-08-24T18:30:00+00:00&end_date=2025-08-24T20:30:00+00:00
Error [0]: Toggl API returned BadRequest - Bad Request: “error parsing date 2025-08-24T18:30:00 00:00”
I’m writing an integration test for my tool, and I know there’s exactly 1 entry inside that window between start & end
Any pointers?
EDIT
As per usual, I figure it out after posting -.-’
My client I was using to send the request was encoding the query string, replacing + with space
No worries! You’ve got it sorted then?