Contacts
Find duplicate contacts
Lists the contacts that look like the same person as this one: the same account number, an address filed as a number, or the same name (each carries a match saying which). Use it to find candidates before a merge.
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
Path Parameters
id*string
The contact's id (a UUID).
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", "company": "Example Ltd", "address": "help@support.example.com", "notes": "Hi Amina, your order has shipped.", "blocked": false, "account_no": "example", "consent_bulk_sms": false, "consent_bulk_whatsapp": false, "consent_newsletters": false, "consent_marketing_calls": false, "numbers": [ { "id": null, "e164": null, "label": null, "primary": null } ], "emails": [ { "id": null, "address": null, "label": null, "primary": null } ], "match": { "kind": "billing", "basis": "example", "confidence": "example", "label": "Amina Wanjiru", "reason": "Outside business hours", "tickets": 1, "open_tickets": 1, "numbers": [ null ], "unusable_numbers": [ null ] } } ], "next_cursor": "eyJvIjoyNX0", "has_more": false}FieldTypeDescription
datarequiredobject[]idrequiredstring (uuid)namerequiredstringA name for it.companystringThe company the contact works for.addressstringAn email address.notesstringNotes about the call or the ticket.blockedrequiredbooleanTrue to block this contact so nobody on the team contacts them by mistake, false to unblock.account_nostringYour own account or customer number for this contact, so you can match it to your billing system.consent_bulk_smsrequiredbooleanTrue if this contact has agreed to receive bulk SMS.consent_bulk_whatsapprequiredbooleanTrue if this contact has agreed to receive bulk WhatsApp messages.consent_newslettersrequiredbooleanTrue if this contact has agreed to receive newsletters.consent_marketing_callsrequiredbooleanTrue if this contact has agreed to receive marketing calls.numbersrequiredobject[]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.matchanykindrequiredstringWhat kind it is.basisrequiredstringconfidencerequiredstringlabelrequiredstringA short name to recognise it by.reasonrequiredstringWhy, in a few words, for example Lunch.ticketsrequiredintegeropen_ticketsrequiredintegernumbersrequiredstring[]unusable_numbersrequiredstring[]next_cursorrequiredstring | nullhas_morerequiredbooleancurl -X GET "https://api.sautidesk.com/v1/desk/contacts/string/duplicates"