Skip to main content

Chats

GET List chats

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

Returns a list of chats based on the provided workspace ID and filter params.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID

Query

nametyperequireddescription
pageintegerfalsepage number
per_pageintegerfalseresults per page
namestringfalsefilter by chat name
order_by[]stringfalseorder by

Response

200

NameTypeDescription
dataArray of object-
pageinteger-
per_pageinteger-
data
NameTypeDescription
created_atstring-
deleted_atstring-
idinteger-
message_countinteger-
namestring-
toggl_user_idinteger-
updated_atstring-
workspace_idinteger-

400

Invalid request

500

Internal Server Error

POST Create a new chat

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

Creates a new chat with the provided name and workspace ID.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID

Body

NameTypeDescription
namestring-

Response

201

chat created successfully

400

Invalid request

500

Internal Server Error

GET get chat by id

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

Returns chat by id

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Response

200

NameTypeDescription
created_atstring-
deleted_atstring-
idinteger-
message_countinteger-
namestring-
toggl_user_idinteger-
updated_atstring-
workspace_idinteger-

400

Invalid request

404

chat does not exist

500

Internal Server Error

PUT Update chat

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

Update an existing chat

curl -X PUT https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id} \
-H "Content-Type: application/json" \
-d '\{"name":"string"\}'

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Body

NameTypeDescription
namestring-

Response

204

No Content

400

Invalid request

404

chat does not exist

500

Internal Server Error

DELETE Delete a chat by ID

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

Deletes a chat by the provided ID.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Response

204

No Content

400

Invalid request

404

chat does not exist

500

Internal Server Error

GET List chat messages

https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id}/messages

Returns a list of chat messages based on the provided workspace ID, chat ID and filter params.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Query

nametyperequireddescription
pageintegerfalsepage number
per_pageintegerfalseresults per page
order_by[]stringfalseorder by

Response

200

NameTypeDescription
dataArray of object-
pageinteger-
per_pageinteger-
data
NameTypeDescription
chat_idinteger-
contentobject-
created_atstring-
feedback_messagestring-
feedback_typeobject-
idinteger-
roleobject-
updated_atstring-
workspace_idinteger-
content

400

Invalid request

500

Internal Server Error

GET List chat messages (stream)

https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id}/messages/stream

Returns a list of chat messages based on the provided workspace ID, chat ID and filter params.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Query

nametyperequireddescription
order_by[]stringfalseorder by

Response

200

NameTypeDescription
itemsArray of object-
items
NameTypeDescription
chat_idinteger-
contentobject-
created_atstring-
feedback_messagestring-
feedback_typeobject-
idinteger-
roleobject-
updated_atstring-
workspace_idinteger-
content

400

Invalid request

500

Internal Server Error

PATCH Partial update chat message

https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id}/messages/{chat_message_id}

Partial update chat message

curl -X PATCH https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id}/messages/{chat_message_id} \
-H "Content-Type: application/json" \
-d '\{"content":\{\},"feedback_message":"string","feedback_type":"string"\}' \
-u <email>:<password>

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID
chat_message_idintegertruemessage ID

Body

NameTypeDescription
contentobject-
feedback_messagestringnull
feedback_typestringnull
content

Response

204

No Content

400

Invalid request

500

Internal Server Error

PATCH Restore a chat by ID

https://focus.toggl.com/api/workspaces/{workspace_id}/chats/{chat_id}/restore

Restores a chat by the provided ID.

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

Parameters

Path

nametyperequireddescription
workspace_idintegertrueworkspace ID
chat_idintegertruechat ID

Response

204

No Content

400

Invalid request

404

chat does not exist

500

Internal Server Error

© 2026 Toggl. All rights reserved.