Upsert a contact
Create a new contact or update an existing one if a contact with the same email already exists (upsert). You can optionally attach the contact to lists and set property values inline.
Authorizations
API key from your SendKit dashboard. Pass it as a Bearer token in the Authorization header.
Body
The contact's email address. If a contact with this email already exists, it will be updated.
255"john@example.com"
The contact's first name.
255"John"
The contact's last name.
255"Doe"
An external user identifier from your application.
255"ext_123"
Whether the contact should be marked as unsubscribed.
false
List IDs to attach the contact to. Replaces existing list memberships.
["550e8400-e29b-41d4-a716-446655440000"]Property values to set on the contact. Keys must match existing property keys.
{ "company": "Acme", "plan": "pro" }Response
Existing contact updated (upsert)
Unique identifier.
"550e8400-e29b-41d4-a716-446655440000"
The contact's email address.
"john@example.com"
The contact's first name.
"John"
The contact's last name.
"Doe"
An external user identifier from your application.
"ext_123"
Whether the contact has unsubscribed.
false
Custom property values. Keys are uppercased property names.
{ "COMPANY": "Acme", "PLAN": "pro" }Lists this contact belongs to.
When the contact was created.
"2026-03-03 10:00:00"
When the contact was last updated.
"2026-03-03 10:00:00"

