Find contact
Use this endpoint to check if a certain contact exists in Engage:
/api/v2/contacts/id
To this you can send one (or several) of the following parameters:
GET /api/v2/contacts/id?email=john.doe%40gmail.com
mobilePhone
GET /api/v2/contacts/id?mobilePhone=%2B46735654321
socialSecurityNumber
Although it's called socialSecurityNumber (sometimes SSN) in Engage, this is really the Swedish personal identity number (or the Finnish personal identity code). Keep this in mind.
GET /api/v2/contacts/id?socialSecurityNumber=196903027573
customKey
As the customKey value you can send either a contact's memberNumber or externalId, depending on how your tenant is set up. Your Voyado Engage team can help you here.
GET /api/v2/contacts/id?customKey=999888777
any
The "any" parameter will, as the name suggests, accept any of the above values. They are scanned in the following order: email, socialSecurityNumber, mobilePhone and then customKey.
For example:
GET /api/v2/contacts/id?any=john.doe%40gmail.com
GET /api/v2/contacts/id?any=999888777
Note
The contactType can also be sent in the query string along with the above parameters but it is not required.
Responses
If the request has been successful, meaning the contact exists, you'll get a HTTP 200 OK response along with the contactId which is the unique identifier for your contact and looks something like this: "2e40b702-2767-4abe-ae99-aa510108e22b"
This contactId is what you will then use to fetch the contact's data.
If the request has not been successful, you'll get one of the following HTTP error codes:
400: InvalidEmailAddress, InvalidPhoneNumber, InvalidSocialSecurityNumber, InvalidContactType, InvalidSearchQuery
404: ContactNotFound
409: MultipleMatches
500: InvalidSystemConfiguration
Note
Response codes could change, so always check your Swagger page to see the latest ones.