Skip to content

Assert Contact

PUT
/contacts/assert

Create or update a contact. Matches by work_email, then linkedin_url.

Authorizations

Parameters

Header Parameters

X-Target-Org-Id
Any of:
string

Request Body required

object
city
Any of:
string
company_domain
Any of:
string
country
Any of:
string
create_missing_fields

When true, any key in custom_fields that matches no existing column is created as a NEW list-scoped custom column (max 100 per request) and then written. Default false preserves the previous behaviour of not creating columns implicitly.

boolean
custom_fields
Any of:
object
key
additional properties
Any of:
string
direct_phone
Any of:
string
first_name
Any of:
string
job_department
Any of:
string
job_title
Any of:
string
last_name
Any of:
string
linkedin_url
Any of:
string
list_id
required

Target list ID

integer
mobile_phone
Any of:
string
personal_emails
Any of:
string
seniority_level
Any of:
string
state
Any of:
string
work_email
Any of:
string

Responses

200

Successful Response

object
data
required
object
action
required

‘created’ or ‘updated’

string
count
integer
default: 1
custom_fields

How a write path handled the request’s custom (dynamic) column keys.

Shared by every Developer API write surface that accepts custom columns (POST /contacts, PUT /contacts/assert[/batch], PUT /companies/assert[/batch]).

Every field defaults to empty, so a client that ignores this object sees no behavioural change. It exists because these keys were previously dropped with NO caller-visible signal — the only trace was a server-side logger.warning in append_to_audience.

object
created

Caller keys for which a NEW custom column was created by this request.

Array<string>
ignored

Caller keys that matched no custom column and were NOT written. Create the column first (POST /fields) or pass create_missing_fields=true.

Array<string>
written

Caller keys that resolved to a custom column and were written.

Array<string>
pagination
Any of:
object
has_next
required

Whether there are more pages

boolean
limit
required

Items per page

integer
next_cursor
Any of:
string
page
required

Current page number (1-indexed)

integer
total
required

Total number of items

integer

422

Validation Error

object
detail
Array<object>
object
loc
required
Array
msg
required
string
type
required
string