Direct messages, notifications and live events
List direct-message threads
Lists the caller's private conversations with teammates, with the latest message and the unread count for each. These are internal chats that customers never see.
Requires: desk.read scope.
Authorization
bearerAuth AuthorizationBearer <token>
A SautiDesk API key. An owner or admin makes it under Settings in SautiDesk for a named person and picks the scopes. The key is shown once. Send it as Authorization: Bearer <key>. It acts as that person and as nobody else.
In: header
Query Parameters
cursor?string
next_cursor from the previous page. Leave it out for the first page.
limit?integer
Page size: 100 by default, 100 at most.
Response
OK
Example
{ "data": [ { "id": "3f2b8c1e-5a4d-4e7b-9c10-2d6a8e4f1b37", "peer_user_id": "95e86c60-905b-4810-982b-252a6d0ea91b", "peer_name": "Brian Otieno", "peer_former": false, "last_message_at": "2026-10-14T08:30:00Z", "last_message_preview": "Hi Amina, your order has shipped.", "unread": 1 } ], "next_cursor": "eyJvIjoyNX0", "has_more": false, "unread_total": 1}FieldTypeDescription
datarequiredobject[]idrequiredstring (uuid)peer_user_idrequiredstring (uuid) | nullThe id of the teammate to start a conversation with.peer_namerequiredstringpeer_formerrequiredbooleanlast_message_atrequiredstring (date-time) | nulllast_message_previewrequiredstringunreadrequiredintegernext_cursorrequiredstring | nullhas_morerequiredbooleanunread_totalrequiredintegercurl -X GET "https://api.sautidesk.com/v1/desk/dm/threads"