curl -X PATCH "https://api.nedzo.ai/v1/contacts/123e4567-e89b-12d3-a456-426614174000" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"firstName": "Jane",
"tags": ["gold"],
"customFields": {
"MRR": 500
}
}'
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "789e4567-e89b-12d3-a456-426614174000",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@example.com",
"phone": "+14155551234",
"timezone": "America/Los_Angeles",
"tags": ["gold", "vip"],
"customFields": {
"Lead Source": "Website",
"MRR": "500"
},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T11:00:00Z"
}
Contacts
Update contact
Update an existing contact by ID via the Nedzo REST API. Modify the contact name, phone number, email, tags, or custom field values with a PATCH request.
PATCH
/
contacts
/
{id}
curl -X PATCH "https://api.nedzo.ai/v1/contacts/123e4567-e89b-12d3-a456-426614174000" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"firstName": "Jane",
"tags": ["gold"],
"customFields": {
"MRR": 500
}
}'
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "789e4567-e89b-12d3-a456-426614174000",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@example.com",
"phone": "+14155551234",
"timezone": "America/Los_Angeles",
"tags": ["gold", "vip"],
"customFields": {
"Lead Source": "Website",
"MRR": "500"
},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T11:00:00Z"
}
string
required
Contact UUID
string
First name
string
Last name
string
Email address
string
Phone number
string
IANA timezone identifier (e.g.
America/New_York). Pass null to clear the field. Used by features that respect the contact’s local time. Must be a valid IANA timezone identifier; bogus strings are rejected with 400 Bad Request.string[]
Tag names to attach to the contact. Tags that don’t exist yet in your workspace are auto-created. Tag attachment is additive — this endpoint never removes a tag. Names are matched case-sensitively, trimmed, and must be 1–255 characters. Omit the field (or pass
[]) to leave tags unchanged.Adding a tag here fires the Contact tagged trigger, so any workflow listening for that tag runs. Only tags the contact doesn’t already have fire it — re-sending a tag the contact already carries does nothing, so a CRM that re-pushes the same contact on every sync won’t re-trigger your workflows.object
Custom field values keyed by the custom variable name as displayed in the dashboard (e.g.
"Lead Source" — including spaces and original casing; not a slug). Accepts string, number, boolean, or null (null clears a stored value). Values you provide overwrite the existing value for that key; other custom fields on the contact are unaffected. Unknown keys are rejected with a 400. Values are persisted as text and returned as strings.At least one field must be provided. Unknown top-level fields are rejected with
400 Bad Request. Custom field values must use the customFields object — they cannot be added as top-level fields.curl -X PATCH "https://api.nedzo.ai/v1/contacts/123e4567-e89b-12d3-a456-426614174000" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"firstName": "Jane",
"tags": ["gold"],
"customFields": {
"MRR": 500
}
}'
{
"id": "123e4567-e89b-12d3-a456-426614174000",
"workspaceId": "789e4567-e89b-12d3-a456-426614174000",
"firstName": "Jane",
"lastName": "Doe",
"email": "jane@example.com",
"phone": "+14155551234",
"timezone": "America/Los_Angeles",
"tags": ["gold", "vip"],
"customFields": {
"Lead Source": "Website",
"MRR": "500"
},
"createdAt": "2024-01-15T10:30:00Z",
"updatedAt": "2024-01-15T11:00:00Z"
}
Was this page helpful?
