Contacts
List contacts
Lists the contacts in the address book with their name, company, numbers and emails. Narrow results with q, which matches name, company, number or email, and page with limit and cursor.
Requires: desk.read scope, Contacts licence.
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
q?string
Search by name, company, number or email.
limit?integer
Page size.
cursor?string
next_cursor from the previous page. Leave it out for the first page.
Response
OK
Example
{ "data": [ { "id": "3f2b8c1e-5a4d-4e7b-9c10-2d6a8e4f1b37", "name": "Amina Wanjiru", "company": "Example Ltd", "number": "+254712345678", "account_no": "example", "blocked": false, "tickets": 1, "open": 1, "last_at": "2026-10-14T08:30:00Z", "numbers": [ { "id": null, "e164": null, "label": null, "primary": null } ], "emails": [ { "id": null, "address": null, "label": null, "primary": null } ], "first_seen": "2026-10-14T08:30:00Z", "last_contact_at": "2026-10-14T08:30:00Z", "last_channel": "sms", "email": "amina@example.com", "open_ticket_ref": "TCK-4471", "open_ticket_status": "open", "owner_id": "1dc86aaf-2f65-4b1b-9ef7-7dabe869da64", "owner_name": "Wanjiku Mwangi" } ], "next_cursor": "eyJvIjoyNX0", "has_more": false, "total": 3}FieldTypeDescription
datarequiredobject[]idrequiredstring (uuid)namerequiredstringA name for it.companystringThe company the contact works for.numberstringA phone number in international format, for example +254712345678.account_nostringYour own account or customer number for this contact, so you can match it to your billing system.blockedrequiredbooleanTrue to block this contact so nobody on the team contacts them by mistake, false to unblock.ticketsrequiredintegeropenrequiredintegerlast_atstring (date-time) | nullnumbersrequiredobject[]idrequiredstring (uuid)e164requiredstringlabelstringA short name to recognise it by.primaryrequiredbooleanTrue to make this the contact's main one.emailsrequiredobject[]idrequiredstring (uuid)addressrequiredstringAn email address.labelstringA short name to recognise it by.primaryrequiredbooleanTrue to make this the contact's main one.first_seenrequiredstring (date-time)last_contact_atstring (date-time) | nulllast_channelstring | nullemailrequiredstring | nullAn email address.open_ticket_refrequiredstring | nullopen_ticket_statusrequiredstring | nullowner_idrequiredstring | nullowner_namerequiredstring | nullnext_cursorrequiredstring | nullhas_morerequiredbooleantotalrequiredintegercurl -X GET "https://api.sautidesk.com/v1/desk/contacts"