Skip to main content
POST
Merge Contacts

Request

Merges fold the duplicates into the primary contact. The primary keeps its UUID; duplicate UUIDs are retired. Non-empty fields on the primary are preserved; missing fields are filled from the duplicates in order. Notes, activities, tasks, emails, documents, and list memberships are re-homed to the primary.

Headers

string
Strongly recommended. Same key returns the same result within 24 hours.

Body Parameters

string
required
UUID of the contact that will remain after the merge.
array
required
UUIDs of contacts to merge into the primary. Maximum 20 per request.
boolean
default:"false"
When true, non-empty fields on the primary can be overwritten by duplicate values. Defaults to fill-only behavior.
boolean
default:"false"
When true, the API returns a preview of the merge without making changes.

Response

object
Responses include X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset, and X-Request-ID. Each merged duplicate emits a contact.merged webhook event.

Example Response

Errors