Contacts

Note:
Before using these API endpoints, learn more about how to use WixHive contacts in your app.

GET/contacts

Returns all contacts that are part of the current site, determined by the application-id and instance-id parameters/headers. The results will be returned in cursored form. By default, all Contacts are returned.

Parameters:

NameData TypeParameter TypeDescription
fields'NAME', 'COMPANY', 'EMAILS', 'PHONES', 'ADDRESSES', 'URLS', 'DATES', 'NOTES', 'CUSTOM','LINKS'QueryThe Contact fields to return. Multiple fields are separated by a comma, for example: NAME, EMAILS. System fields (like the contact’s id and ModifiedAt) are always returned.
emailStringQueryThe email to search against
phoneStringQueryThe phone number to search against
name.firstStringQueryThe first name to search against
name.lastStringQueryThe last name to search against
cursorStringQueryThe semi-optional cursor into the desired data. This cursor will expire after 30 minutes, it should not be cached.
pageSizeInteger (1-500)QueryThe number of results to return per page of data. Defaults to 25.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/ HeaderThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/ HeaderThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/ HeaderThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/ HeaderThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
totalNumberThe total number of Contacts that can be returned
pageSizeInteger (1-500)The number of results returned per cursor
previousCursorStringThe cursor used to access the previous set of contacts. Returns null if there are no previous results.
nextCursorStringThe cursor used to access the next set of contacts. Returns null if there are no more results.
resultsArray[Objects]An array of Contact items. Each contact object contains information about the contact.
results.idStringContact's ID
results.nameObjectContact's name
results.name.prefixStringName prefix
results.name.firstStringFirst name
results.name.middleStringMiddle name
results.name.lastStringLast name
results.name.suffixStringName suffix
results.pictureStringURL of the contact's photo
results.companyObjectContact's company details
results.company.roleStringContact's role in the company
results.company.nameStringContact's company name
results.emailsArray[Objects]Contact's email addresses
results.emails.idNumberID of this email within the array
results.emails.tagStringTag for this email - home, work, etc
results.emails.emailStringEmail address
results.emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
results.emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
results.phonesArray[Objects]Contact's phone numbers
results.phones.idNumberID of this phone number within the array
results.phones.tagStringTag for this phone number - home, work, etc
results.phones.phoneStringPhone number
results.phones.normalizedPhoneStringNormalized phone number
results.addressesArray[Objects]Contact's addresses
results.addresses.idNumberID of this address within the array
results.addresses.tagStringTag for this address - home, work, etc
results.addresses.addressStringStreet address
results.addresses.neighborhoodStringNeighborhood
results.addresses.cityStringCity
results.addresses.regionStringRegion, like a U.S state or a province in Canada
results.addresses.countryStringCountry
results.addresses.postalCodeStringPostal code
results.urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
results.urls.idNumberID of this URL within the array
results.urls.tagStringTag for this URL - personal, work, etc
results.urls.urlStringThe URL
results.datesArray[Objects]Important dates for this Contact, like birthday
results.dates.idNumberID of this date within the array
results.dates.tagStringTag for this date - birthday, anniversary, etc
results.dates.dateDatetimeThe date, as an ISO 8601 timestamp
results.createdAtDateThe date this contact was created, as an ISO 8601 timestamp
results.linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
results.links.hrefStringThe href of the operation relevant to this resource
results.links.relStringThe relationship of this operation to the returned resource
results.modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* Invalid pageSize. Valid values are 25, 50 or 100. * Invalid or missing cursor. * Bad authentication credentials. * Bad request. Authentication credentials may be missing. * Missing endpoint version number.
403* Unauthorized. Your app has been removed from the site. * Unauthorized. Insufficient permissions.
404* App is not found on site. * Endpoint version number does not exist.
408Timestamp expired on the request, please submit again with a new timestamp.
410Cursor expired. The cursor is no longer valid. Please query again.

GET/contacts/{contactId}

Find a contact referenced by its ID, only relevant for the given site determined by the application-id and instance-id parameters/headers.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* Bad authentication credentials. * Bad request. Authentication credentials may be missing. * Missing endpoint version number.
403* Unauthorized. Your app has been removed from the site. * Unauthorized. Insufficient permissions.
404* Contact not found, or site for instance-id and app-id does not exist.* App is not found on site. * Endpoint version number does not exist.
408Timestamp expired on the request, please submit again with a new timestamp.

POST/contacts

Version 2.0.0 : Reconciles Contact information with that of the WixHive’s.

Use this when your app has information about a site visitor that may already be registered as a Contact as part of the WixHive. Your app should provide as much information as possible so that we will find the best match for that Contact and return it with the reconciled information. If no match was found, we will create a new Contact.

Depending on the type of information, we will either add or dismiss changes. When the information can be added to a list, such as emails or phones, a new item will be added if no similar item exists. When the information cannot be added we dismiss the change, such is the case with name, company and picture. If your wish is to override such data, there are explicit ways to do so using the Contact’s ID and our HTTP API.

Parameters:

NameData TypeParameter TypeDescription
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path. Latest version is 2.0.0
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
contactInfo (required)ObjectBodyThe Contact object to reconcile. Important: Include at least the email or phone number in your request - we need it to create/update the contact.
contactInfo.nameObjectBodyContact's name
contactInfo.name.prefixStringBodyName prefix 
contactInfo.name.firstStringBodyFirst name
contactInfo.name.middleStringBodyMiddle name
contactInfo.name.lastStringBodyLast name
contactInfo.name.suffixStringBodyName suffix
contactInfo.pictureStringBodyURL of the contact's photo
contactInfo.companyObjectBodyContact's company details
contactInfo.company.roleStringBodyContact's role in the company
contactInfo.company.nameStringBodyContact's company name
contactInfo.emailsArray[Objects]BodyContact's email addresses
contactInfo.emails.tagStringBodyTag for this email - home, work, etc
contactInfo.emails.emailStringBodyEmail address
contactInfo.emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’BodyThe subscription status of the current email
contactInfo.emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’BodyEmail delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
contactInfo.phonesArray[Objects]BodyContact's phone numbers
contactInfo.phones.tagStringBodyTag for this phone number - home, work, etc
contactInfo.phones.phoneStringBodyPhone number
contactInfo.addressesArray[Objects]BodyContact's addresses
contactInfo.addresses.tagStringBodyTag for this address - home, work, etc
contactInfo.addresses.addressStringBodyStreet address
contactInfo.addresses.neighborhoodStringBodyNeighborhood
contactInfo.addresses.cityStringBodyCity
contactInfo.addresses.regionStringBodyRegion, like a U.S state or a province in Canada
contactInfo.addresses.countryStringBodyCountry
contactInfo.addresses.postalCodeStringBodyPostal code
contactInfo.urlsArray[Objects]BodyURLs associated with the contact, like Facebook or LinkedIn
contactInfo.urls.tagStringBodyTag for this URL - personal, work, etc
contactInfo.urls.urlStringBodyThe URL
contactInfo.datesArray[Objects]BodyImportant dates for this Contact, like birthday
contactInfo.dates.tagStringBodyTag for this date - birthday, anniversary, etc
contactInfo.dates.dateDatetimeBodyThe date, as an ISO 8601 timestamp
contactInfo.notesArray[objects]BodyNotes associated with this contact
contactInfo.notescontent (required)StringBodyThe content of the note
contactInfo.customArray[objects]BodyCustom fields associated with this contact
contactInfo.custom.field (required)StringBodyThe name of the custom field
contactInfo.custom.value (required)StringBodyThe value of the custom field

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
contactObjectThe reconciled Contact and its information
contact.idStringContact's ID
contact.nameObjectContact's name
contact.name.prefixStringName prefix
contact.name.firstStringFirst name
contact.name.middleStringMiddle name
contact.name.lastStringLast name
contact.name.suffixStringName suffix
contact.pictureStringURL of the contact's photo
contact.companyObjectContact's company details
contact.company.roleStringContact's role in the company
contact.company.nameStringContact's company name
contact.emailsArray[Objects]Contact's email addresses
contact.emails.idNumberID of this email within the array
contact.emails.tagStringTag for this email - home, work, etc
contact.emails.emailStringEmail address
contact.emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
contact.emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
contact.phonesArray[Objects]Contact's phone numbers
contact.phones.idNumberID of this phone number within the array
contact.phones.tagStringTag for this phone number - home, work, etc
contact.phones.phoneStringPhone number
contact.phones.normalizedPhoneStringNormalized phone number
contact.addressesArray[Objects]Contact's addresses
contact.addresses.idNumberID of this address within the array
contact.addresses.tagStringTag for this address - home, work, etc
contact.addresses.addressStringStreet address
contact.addresses.neighborhoodStringNeighborhood
contact.addresses.cityStringCity
contact.addresses.regionStringRegion, like a U.S state or a province in Canada
contact.addresses.countryStringCountry
contact.addresses.postalCodeStringPostal code
contact.urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
contact.urls.idNumberID of this URL within the array
contact.urls.tagStringTag for this URL - personal, work, etc
contact.urls.urlStringThe URL
contact.datesArray[Objects]Important dates for this Contact, like birthday
contact.dates.idNumberID of this date within the array
contact.dates.tagStringTag for this date - birthday, anniversary, etc
contact.dates.dateDatetimeThe date, as an ISO 8601 timestamp
contact.createdAtDateThe date this contact was created, as an ISO 8601 timestamp
contact.linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
contact.linkshrefStringThe href of the operation relevant to this resource
contact.linksrelStringThe relationship of this operation to the returned resource
contact.modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp
detailsObjectDetails about the reconciliation process
details.rejectedDataArray[objects]Contact information which was rejected during the reconciliation process
details.existingDataArray[objects]Contact information which was added by the WixHive
details.noteObjectNotes about the operation
details.note.returnedData'COMPLETE' or 'RESTRICTED'The level of details returned. Your app may receive RESTRICTED details when it does not have sufficient permissions.
details.note.requiredPermissionsForAllDataArray[string]The permissions missing for your app to receive complete information from the WixHive.

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
200Found match for Contact information which was supplied. Contact information was merged.
201No match found for Contact information supplied, new Contact created.
400* Contact data is malformed. * Contact info must contain at least one phone, email or address. * Bad authentication credentials. * Bad request. Authentication credentials may be missing. * Missing endpoint version number.
403* Unauthorized. Your app has been removed from the site. * Unauthorized. Insufficient permissions.
404* App is not found on site. * Endpoint version number does not exist.
408Timestamp expired on the request, please submit again with a new timestamp.

POST/contacts/{contactId}/address

Adds a tag and address to a given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
addressObjectBodyThe address to add to the contact
address.tag (required)StringBodyTag for this address - home, work, etc
address.addressStringBodyStreet address
address.neighborhoodStringBodyNeighborhood
address.cityStringBodyCity
address.regionStringBodyRegion, like a U.S state or a province in Canada
address.countryStringBodyCountry
address.postalCodeStringBodyPostal code

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* address information is malformed. * modifiedAt is missing.
404* Contact not found. * Site for instance-id and app-id does not exist.
409There was a conflict updating the current Contact. Please re-fetch the Contact to sync and get the most recent modifiedAt value, then try again.

POST/contacts/{contactId}/email

Adds a tag and email to a given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
email (required)ObjectBodyThe email to add to the contact
email.tagStringBodyTag for this email - home, work, etc
email.email (required)StringBodyEmail address
email.emailStatus‘optOut’, ‘transactional’, ‘recurring’BodyThe subscription status of the current email
email.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’BodyEmail delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* email information is malformed. * modifiedAt is missing
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the contact to sync and get the most recent modifiedAt value, then try again.

POST/contacts/{contactId}/phone

Adds a tag and phone number to a given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
phone (required)ObjectBodyThe phone number to add to the contact
phone.tag (required)StringBodyTag for this phone number - home, work, etc
phone.phone (required)StringBodyThe contact's raw phone number

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* phone number information is malformed. * modifiedAt is missing.
404* Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current Contact. Please re-fetch the Contact to sync and get the most recent modifiedAt value, then try again.

POST/contacts/{contactId}/url

Adds a tag and url to a given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
url (required)ObjectBodyThe URL to add to the contact
url.tagStringBodyTag for this URL - personal, work, etc
url.urlStringBodyThe URL

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* url information is malformed. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current Contact. Please re-fetch the Contact to sync and get the most recent modifiedAt value, then try again.

POST/contacts/{contactId}/date

Adds a tag and date to a given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
date (required)ObjectBodyThe date to add to the contact
date.tagStringBodyTag for this date - birthday, anniversary, etc
date.date (required)DatetimeBodyThe date, as an ISO 8601 timestamp

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* date information is malformed. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the cntact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/name

Edits name information for the given contact.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
name (required)ObjectBodyThe edited name information
name.prefixStringBodyName prefix 
name.firstStringBodyFirst name
name.middleStringBodyMiddle name
name.lastStringBodyLast name
name.suffixStringBodyName suffix

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* name information is malformed. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the cntact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/company

Edits company information for the given contact.

Parameters:

NameData TypeParameter TypeDescription
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
company (required)ObjectBodyThe edited company information
company.roleStringBodyContact's role in the company
company.nameStringBodyContact's company name

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* company information is malformed. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the cntact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/address/{addressId}

Edits address information for the given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
addressId (required)StringPathID of this address within the array
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
address (required)ObjectThe edited address information
address.tagStringBodyTag for this address - home, work, etc
address.addressStringBodyStreet address
address.neighborhoodStringBodyNeighborhood
address.cityStringBodyCity
address.regionStringBodyRegion, like a U.S state or a province in Canada
address.countryStringBodyCountry
address.postalCodeStringBodyPostal code

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* address information is malformed. * address id is not found. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the cntact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/email/{emailId}

Edits email information for the given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
emailId (required)StringPathID of the email to edit
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
email (required)ObjectBodyContact's email address
email.tagStringBodyTag for this email - home, work, etc
email.email (required)StringBodyEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’BodyThe subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’BodyEmail delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* email information is malformed. * email id not found. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the cntact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/phone/{phoneId}

Edits phone number information for the given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
phoneId (required)StringPathID of the phone number to edit
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
phone (required)ObjectBodyThe edited phone number information
phone.tag (required)StringBodyTag for this phone number - home, work, etc
phone.phone (required)StringBodyPhone number

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* phone number information is malformed. * phone number id not found. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the contact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/url/{urlId}

Edits url information for the given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
urlId (required)StringPathID of the URL to edit
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
url (required)ObjectBodyThe edited url information
url.tag (required)StringBodyTag for this URL - personal, work, etc
url.url (required)StringBodyThe URL

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* url information is malformed. * url id not found. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the contact to sync and get the most recent modifiedAt value, then try again.

PUT/contacts/{contactId}/date/{dateId}

Edits date information for the given Contact. Note: tags are not unique.

Parameters:

NameData TypeParameter TypeDescription
dateId (required)StringPathID of the date to edit
contactId (required)StringPathID of the contact to edit
modifiedAt (required)TimestampQueryThe modification time of the Contact as received from Wix, as an ISO 8601 timestamp. Note: There may be times where another app makes an update to the same Contact. When that happens the modifiedAt value in our system will be updated and your app will have to re-fetch in order to sync. If your app tries to make an update using an outdated modifiedAt value it will receive an error.
version (required)IntegerQueryThe specific version of this endpoint. This version uses semantic versioning, in the form of major.minor.path
application-id (required)StringQuery/headerThe application definition ID. If sent through the header, this field must be prefixed with x-wix-
instance-id (required)StringQuery/headerThe instance ID used for security validation with Wix. If sent through the header, this field must be prefixed with x-wix-
signature (required)StringQuery/headerThe computed signature. If sent through the header, this field must be prefixed with x-wix-
timestamp (required)DatetimeQuery/headerThe timestamp as an ISO 8601 timestamp. If sent through the header, this field must be prefixed with x-wix-
date (required)ObjectBodyThe edited date information
dates.tag (required)StringBodyTag for this date - birthday, anniversary, etc
dates.date (required)DatetimeBodyThe date, as an ISO 8601 timestamp

Example:

Copy

Response:

Here’s the full list of fields that can be part of the response.

The fields you’ll actually receive depend on the information you request and what we have in the system.

NameTypeDescription
idStringContact's ID
nameObjectContact's name
name.prefixStringName prefix 
name.firstStringFirst name
name.middleStringMiddle name
name.lastStringLast name
name.suffixStringName suffix
pictureStringURL of the contact's photo
companyObjectContact's company details
company.roleStringContact's role in the company
company.nameStringContact's company name
emailsArray[Objects]Contact's email addresses
emails.idNumberID of this email within the array
emails.tagStringTag for this email - home, work, etc
emails.emailStringEmail address
emails.emailStatus‘optOut’, ‘transactional’, ‘recurring’The subscription status of the current email
emails.deliveryStatus‘valid’, ‘spam’, ‘complaint’, ‘rejected’, ‘deferral’, ‘bounce’Email delivery status:* valid: When emails are delivered successfully. * spam: When emails are marked as spam by the recipient. * complaint: When the recipient of the email has made a complaint to the email provider. * rejected: When the email is rejected by email provider. * deferral: When your email provider refuses to send emails. * bounce: When the mailbox is full, email address doesn't exist, etc.
phonesArray[Objects]Contact's phone numbers
phones.idNumberID of this phone number within the array
phones.tagStringTag for this phone number - home, work, etc
phones.phoneStringPhone number
phones.normalizedPhoneStringNormalized phone number
addressesArray[Objects]Contact's addresses
addresses.idNumberID of this address within the array
addresses.tagStringTag for this address - home, work, etc
addresses.addressStringStreet address
addresses.neighborhoodStringNeighborhood
addresses.cityStringCity
addresses.regionStringRegion, like a U.S state or a province in Canada
addresses.countryStringCountry
addresses.postalCodeStringPostal code
urlsArray[Objects]URLs associated with the contact, like Facebook or LinkedIn
urls.idNumberID of this URL within the array
urls.tagStringTag for this URL - personal, work, etc
urls.urlStringThe URL
datesArray[Objects]Important dates for this Contact, like birthday
dates.idNumberID of this date within the array
dates.tagStringTag for this date - birthday, anniversary, etc
dates.dateDatetimeThe date, as an ISO 8601 timestamp
createdAtDateThe date this contact was created, as an ISO 8601 timestamp
linksArray[Objects]An array of HATEOAS links to operations applicable to the Contact resource
links.hrefStringThe href of the operation relevant to this resource
links.relStringThe relationship of this operation to the returned resource
modifiedAtTimestampDate and time this contact was modified, as an ISO 8601 timestamp

Errors:

Here’s a list of possible errors and when they occur. Read more about our API errors.

HTTP Status CodeReason/Error Message
400* date information is malformed. * date id not found. * modifiedAt is missing.
404Contact not found, or site for instance-id and app-id does not exist.
409There was a conflict updating the current contact. Please re-fetch the contact to sync and get the most recent modifiedAt value, then try again.
Did this help?