SautiDesk
SautiDesk API
People and presence

List workspace people

GET
/v1/desk/agents

Lists the people in the workspace with their role, availability and whether they are on a call. Use it to show who is free or to choose an assignee.

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",      "name": "Amina Wanjiru",      "display_name": "Amina Wanjiru",      "email": "amina@example.com",      "role": "agent",      "state": "available",      "online": false,      "since": "2026-10-14T08:30:00Z",      "break_reason": "Lunch",      "ring_to": "example",      "has_avatar": false,      "desk_active_at": "2026-10-14T08:30:00Z",      "cleanup_pending": false,      "billable": false,      "invited_by": "Wanjiku Mwangi",      "invited_at": "2026-10-14T08:30:00Z",      "invited_via": "example",      "licences": [        "converse"      ],      "rings": false,      "not_ringing_reason": "Away",      "off_duty": "example",      "off_duty_reason": "Lunch",      "joined_at": "2026-10-14T08:30:00Z",      "onboarding_dismissed_at": "2026-10-14T08:30:00Z",      "reachable": false    }  ],  "next_cursor": "eyJvIjoyNX0",  "has_more": false,  "me": "08809527-b6ab-4be9-9aa0-733055a51067",  "admin": false,  "me_display_name": "Wanjiku Mwangi",  "licences": [    "converse"  ],  "desk_users_only": false,  "wallet_warning": {    "code": "example",    "message": "Hi Amina, your order has shipped.",    "balance_minor": 1,    "next_charge_minor": 1  }}
FieldTypeDescription
datarequiredobject[]
idrequiredstring (uuid)
namerequiredstringA name for it.
display_namerequiredstringThe name shown for this person across SautiDesk.
emailrequiredstringAn email address.
rolerequiredstringThe role: admin, agent or viewer.
staterequiredstringThe availability to set: available, away, break, non_phone or offline.
onlinerequiredboolean
sincestring (date-time) | null
break_reasonstring
ring_torequiredstringThe phone number this person's calls ring.
has_avatarrequiredboolean
desk_active_atrequiredstring (date-time) | null
cleanup_pendingrequiredboolean
billablerequiredboolean
invited_bystring
invited_atstring (date-time) | null
invited_viastring
licencesrequiredstring[]The Desk licences to give: converse (tickets and conversations), contacts (the address book) and supervisor (reports and listening in).
ringsrequiredboolean
not_ringing_reasonstring
off_dutystring
off_duty_reasonstring
joined_atrequiredstring (date-time)
onboarding_dismissed_atrequiredstring (date-time) | null
reachableboolean | null
next_cursorrequiredstring | null
has_morerequiredboolean
merequiredstring (uuid)
adminrequiredboolean
me_display_namerequiredstring
licencesrequiredstring[]The Desk licences to give: converse (tickets and conversations), contacts (the address book) and supervisor (reports and listening in).
desk_users_onlyrequiredboolean
wallet_warningrequiredany
coderequiredstring
messagerequiredstringA short note for the person receiving the ticket.
balance_minorrequiredinteger
next_charge_minorrequiredinteger
curl -X GET "https://api.sautidesk.com/v1/desk/agents"