Update a contact
Updates a contact identified by its id only (its list is derived from the contact). The body is the same flat object as POST /lists/list/{listId}/contacts, with the same key resolution and the same pitfalls: unknown keys create custom variables, null and empty strings are ignored (a field cannot be cleared), sent fields overwrite, absent fields stay untouched. A company row is created if the contact has none and company fields are sent.
No duplicate check is made: changing the email to one already present in the list creates a duplicate. List counters are not updated. The campaigns using the list are resynchronized.
Authorization
apiKey Your 48 character API key, sent as is (a Bearer prefix is tolerated). Create it at https://v3.emelia.io/settings/api.
In: header
Path Parameters
Contact id (leadId).
^[0-9a-fA-F]{24}$Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Flat contact object: one key per field, scalar values only. Standard keys are listed in the description of POST /lists/list/{listId}/contacts; any other key goes to an existing custom variable of the same name or creates a new one. Numbers and booleans are converted to strings. null and empty strings are ignored. Arrays and objects are rejected.
1 <= propertiesResponse Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/lists/contacts/65f1a2b3c4d5e6f74db757ce" \ -H "Authorization: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "jobTitle": "VP Sales", "phone": "+33612345678", "icebreaker": "Saw your post about the Series A" }'{ "success": true, "leadId": "66f2a1b2c3d4e5f6a7b8c9d0", "companyId": "66f2a1b2c3d4e5f6a7b8c9e0", "createdCustomVariables": []}