Upsert Contact
Create a new contact or update an existing one. Contacts are identified by email or cnvContactId. If the contact exists, its fields are updated; if not, a new contact is created.
Documentation Index
Fetch the complete documentation index at: https://docs.conversion.ai/llms.txt
Use this file to discover all available pages before exploring further.
Authorizations
Your Conversion API key. Found in Settings > Integrations in the dashboard. Format: sk_live_<key_id>_<secret>.
Body
The contact's email address. At least one of email or cnvContactId is required. When both are provided, cnvContactId identifies the contact and email updates the contact's email address.
"jane@example.com"
The Conversion contact ID. Use this to identify an existing contact by its internal ID instead of email. At least one of email or cnvContactId is required.
"a1b2c3d4-e5f6-7890-abcd-ef1234567890"
The contact's email subscription status. System-managed statuses (BOUNCED, COMPLAINED, etc.) cannot be set through the API.
SUBSCRIBED, UNSUBSCRIBED, NO_STATUS A map of contact field keys to values. Keys must match existing field definitions in your Conversion account.
{
"first_name": "Jane",
"last_name": "Smith",
"job_title": "VP of Marketing"
}A map of company field keys to values for the contact's associated company.
{
"company_name": "Acme Corp",
"industry": "Technology"
}When true, restricts the operation to updates only. Returns a contact_not_found error if no existing contact matches the provided identifier.
When true, syncs the contact to the connected CRM (e.g., Salesforce) if the contact does not already have an external CRM record.
When true, prevents overwriting existing non-empty field values. New values are only written to fields that are currently empty or unset. Useful for enrichment workflows.
Response
Contact upserted successfully.