Skip to main content
Every timely.api.* operation is listed below with parameter shapes and return types from the plugin Zod schemas.
New to Corsair? See API access, authentication, and error handling.

Accounts

get

accounts.get Get a Timely workspace (account) by id Risk: read
Input Output

list

accounts.list List the Timely workspaces (accounts) the user can reach Risk: read
Input: empty object Output: object[]

Clients

create

clients.create Create a client Risk: write
Input Output

get

clients.get Get a client by id Risk: read
Input Output

list

clients.list List clients Risk: read
Input Output: object[]

update

clients.update Update a client (active: false archives it) Risk: write
Input Timely has no client delete; set active: false to archive a client. Output

Projects

create

projects.create Create a project under a client Risk: write
Input Timely needs a client_id. The creating user is added to the project automatically.
Output

delete

projects.delete Delete a project Risk: destructive · Irreversible
Input Output

get

projects.get Get a project by id Risk: read
Input Output

list

projects.list List projects Risk: read
Input Output: object[]

update

projects.update Update a project; passing users replaces who may log time on it Risk: write
Input Passing users replaces the project’s member list: anyone left out can no longer log time on it.
Output

Reports

filter

reports.filter Totals grouped by clients, users, tags, days and teams, or the matching time entries Risk: read
Input scope: events returns the matching time entries instead of grouped totals. Output: object \| object[]

totals

reports.totals Logged time and cost per client and project for a period Risk: read
Input Output: object[]

Tags

create

tags.create Create a tag Risk: write
Input Output

delete

tags.delete Delete a tag Risk: destructive · Irreversible
Input Output

get

tags.get Get a tag by id Risk: read
Input Output

list

tags.list List tags (labels) Risk: read
Input Output: object[]

update

tags.update Update a tag Risk: write
Input Output

Teams

get

teams.get Get a team by id Risk: read
Input Output

list

teams.list List teams Risk: read
Input Output: object[]

Time Entries

bulk

timeEntries.bulk Create, update and delete up to 100 time entries in one request Risk: destructive · Irreversible
Input Up to 100 records. Timely answers 200 even when some records fail: check errors.create, errors.update and errors.delete (each item has the record index and messages). Batches over 20 records run asynchronously and return a job.
Output

create

timeEntries.create Log time on a project Risk: write
Input The user must be a member of the project, and label_ids only work on projects that allow tags. Give the duration as hours/minutes/seconds or as from/to. Output

delete

timeEntries.delete Delete a time entry Risk: destructive · Irreversible
Input Output

get

timeEntries.get Get a time entry by id Risk: read
Input Output

list

timeEntries.list List time entries for a day or a since/upto date range Risk: read
Input Pass since and upto together for a range, or day for one day. Without either, Timely returns today’s entries. Output: object[]

startTimer

timeEntries.startTimer Start the timer on a time entry Risk: write
Input Output

stopTimer

timeEntries.stopTimer Stop the timer on a time entry Risk: write
Input Output

update

timeEntries.update Update a time entry Risk: write
Input Fields you leave out keep their value. Billed (billed: true) and locked entries can’t be edited. Output

Users

current

users.current Get the connected user in a workspace Risk: read
Input Output

get

users.get Get a person by id Risk: read
Input Output

list

users.list List people Risk: read
Input Output: object[]

Webhooks

create

webhooks.create Create a signed webhook subscription Risk: write
Input Timely signs each delivery with X-Signature (hex HMAC-SHA256 of the payload object, keyed with secret_token). Timely currently answers 500 to custom_headers, so the plugin doesn’t send them. Output

delete

webhooks.delete Delete a webhook Risk: destructive · Irreversible
Input Output

get

webhooks.get Get a webhook by id Risk: read
Input Output

list

webhooks.list List webhooks Risk: read
Input Output: object[]

update

webhooks.update Update a webhook Risk: write
Input Output