Skip to main content
Contacts are the people your team messages. Use contact endpoints to keep customer identity, phone numbers, email addresses, tags, ownership, opt-out state, and custom fields in sync with your system.

Choose v1 or v2 contacts

Use the contact surface that matches the identifiers you have. The v1 endpoints use integer id values. The v2 endpoints use the contact UUID as contactID.

Create a contact

Create a v1 contact with POST /v1/contact. A phone number is required and must use E.164 digits without the leading plus sign.
The response includes the contact id, revision, and UUID.

Update a contact

Use PUT /v1/contact/{id} to update an existing v1 contact. Include phone in the request body.
The overwrite query parameter controls custom-field updates:
  • overwrite=false merges the provided custom fields with existing values.
  • overwrite=true replaces existing custom field values with the object you provide.
Contact names are overwritten during update regardless of the overwrite value.

Work with custom fields

Custom field keys are numeric field IDs, not field names. Get the IDs before writing custom values.
Example response:
Then pass those IDs as string keys in the contact custom object.

Search by phone or email

Use POST /v2/contacts/search when you have a channel value and need the matching contact.
You can omit channel_type when Heymarket can infer it from the value format.

Add a contact channel

Use POST /v2/contact/{contactID}/channel to add another phone number, email address, or supported channel to an existing v2 contact.

List and delete contacts

Use POST /v1/contacts to paginate contacts. Pass the previous page’s last timestamp as date to retrieve the next page. For example, if the last contact on the current page has updated: "2026-04-12T15:30:00Z", use that timestamp as the next date cursor.
Delete a contact with DELETE /v1/contact/{id}.

Contacts

Understand contact identifiers, channels, tags, and status.

Contacts reference

Review contact endpoints and field-level details.

Search contacts reference

Look up contacts by phone number, email address, or another channel value.

Contact channel reference

Add a channel to an existing v2 contact.