Contacts
Update contact
Update the fields you send; omitted fields are unchanged. The email address cannot be changed.
PATCH
https://api.sndr.sh/v1/contacts/{id}Update contact
curl -X PATCH 'https://api.sndr.sh/v1/contacts/con_0e6b7f21-c58' \
-H "Authorization: Bearer $SNDR_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"status": "unsubscribed"}'200OK
{
"id": "con_0e6b7f21-c58",
"organization_id": "org_8d41c7a2-3f6",
"email": "jane@example.com",
"first_name": "Jane",
"last_name": "Doe",
"attributes": { "plan": "pro", "city": "Berlin" },
"status": "unsubscribed",
"source": "checkout",
"created_at": "2026-03-01T10:00:00Z",
"updated_at": "2026-06-01T12:00:00Z"
}Authorization
AuthorizationstringheaderrequiredBearer followed by your API key. Needs the send scope.
Path parameters
idstringrequiredContact ID (con_...).
Body
application/jsonfirst_namestringNew first name, max 100 characters.
last_namestringNew last name, max 100 characters.
statusstringsubscribed, unsubscribed, bounced or complained.
attributesobjectReplaces the whole attributes object (keys are not merged).
Errors
401
unauthenticatedMissing or invalid API key.400
invalid_requestBody is not valid JSON, has an unknown field, or a field has the wrong type.403
insufficient_scopeThe API key is missing the send scope.404
not_foundResource does not exist or belongs to a different account.422
validation_failedstatus is not one of the allowed values, or a name is over 100 characters.