Skip to main content

Statuses

GET List statuses​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses

Returns a list of statuses based on the workspace ID.

curl  https://focus.toggl.com/api/workspaces/{workspace_id}/statuses \
-H "Content-Type: application/json" \
-u <email>:<password>

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID

Query​

nametyperequireddescription
namestringfalsefilter by status name
typestringfalsefilter by status type
pageintegerfalsepage number
per_pageintegerfalseresults per page
order_by[]stringfalseorder by

Response​

200​

NameTypeDescription
dataArray of object-
pageinteger-
per_pageinteger-
data​
NameTypeDescription
created_atstring-
deleted_atstring-
emojistring-
idinteger-
namestring-
positioninteger-
typestringValid values: todo, done, in_progress, blocked.
updated_atstring-
workspace_idinteger-

400​

Invalid request

500​

Internal Server Error

POST Create a new status​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses

Creates a new status with the provided details.

curl -X POST https://focus.toggl.com/api/workspaces/{workspace_id}/statuses \
-H "Content-Type: application/json" \
-d '\{"emoji":"string","name":"string","position":"integer"\}' \
-u <email>:<password>

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID

Body​

NameTypeDescription
emojistring-
namestring-
positioninteger-

Response​

201​

Status created successfully

400​

Invalid request

500​

Internal Server Error

GET Get status by ID​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id}

Returns a status with the provided ID.

curl  https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id} \
-H "Content-Type: application/json" \
-u <email>:<password>

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID
status_idintegertruestatus ID

Response​

200​

NameTypeDescription
created_atstring-
deleted_atstring-
emojistring-
idinteger-
namestring-
positioninteger-
typestringValid values: todo, done, in_progress, blocked.
updated_atstring-
workspace_idinteger-

400​

Invalid request

404​

Status not found

500​

Internal Server Error

PUT Update status​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id}

Update an existing statuses

curl -X PUT https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id} \
-H "Content-Type: application/json" \
-d '\{"emoji":"string","name":"string","position":"integer"\}'

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID
status_idintegertrueStatus ID

Body​

NameTypeDescription
emojistring-
namestring-
positioninteger-

Response​

200​

Successfully updated status

NameTypeDescription
created_atstring-
deleted_atstring-
emojistring-
idinteger-
namestring-
positioninteger-
typestringValid values: todo, done, in_progress, blocked.
updated_atstring-
workspace_idinteger-

400​

Invalid request

404​

Status not found

500​

Internal Server Error

DELETE Delete a status by ID​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id}

Deletes a status with the provided ID.

curl -X DELETE https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id} \
-H "Content-Type: application/json" \
-u <email>:<password>

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID
status_idintegertruestatuses ID

Response​

204​

Successfully deleted status

400​

Invalid request

403​

Cannot delete default status

404​

Status not found

500​

Internal Server Error

PATCH Restore a statuses by ID​

https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id}/restore

Restores a statuses by the provided ID.

curl -X PATCH https://focus.toggl.com/api/workspaces/{workspace_id}/statuses/{status_id}/restore \
-H "Content-Type: application/json" \
-u <email>:<password>

Parameters​

Path​

nametyperequireddescription
workspace_idintegertrueworkspace ID
status_idintegertruestatuses ID

Response​

204​

Successfully restored status

400​

Invalid request

404​

Status not found

500​

Internal Server Error

© 2026 Toggl. All rights reserved.