Skip to main content

Timesheets

The Timesheets API provides CRUD access to time entries — time logged against a task.
New to the API? Start with Getting started (base URL, response envelope, errors, pagination) and Authentication (API keys).
Identifier note: timesheets are addressed by their numeric timer_id.
A timesheet entry logs time against a task. You supply the task_id, the user_id who performed the work, and the duration (hours + minutes); the project and client are derived from the task. The duration must total at least one minute.
Scope: live timer start/stop is on the Tasks API (task-timers list + stop-all). Bulk delete, pinning, settings and the stats widget are out of scope. The billing status is managed by invoicing, not editable here.

The timesheet object


List / search timesheets

Query params: task_id, project_id, client_id, user_id (worked-by), status, billing_status, date_start, date_end, sort (timer_created,timer_time), order, limit, page.

Get a timesheet


Record a timesheet entry

The combined hours + minutes must total at least one minute.
Returns the new entry (201, status stopped).

Update a timesheet entry

Edits the logged time only (the task, date and user are immutable).

Delete a timesheet entry


Errors

See Getting started. Timesheet-specific: