Skip to main content
POST
Create a contact

Authorizations

Authorization
string
header
required

Enter your API Key (sk_live_xxx or sk_test_xxx)

Headers

x-workspace-id
string<uuid>

Target workspace id (from GET /v1/workspaces). Required for multi-workspace API keys to designate which workspace to write to; omit for single-workspace keys, where it is resolved automatically. Must be within the API key scope.

Body

application/json
firstName
string
required

First name of the contact

Required string length: 1 - 100
Example:

"John"

lastName
string
required

Last name of the contact

Required string length: 1 - 100
Example:

"Doe"

phoneNumbers
string[]
required

Phone numbers in E.164 format (e.g., +33612345678)

Required array length: 1 - 20 elements
Example:
email
string

Email address of the contact

Example:

"john.doe@example.com"

company
string

Company name

Maximum string length: 200
Example:

"Acme Inc."

city
string

City

Maximum string length: 200
Example:

"Paris"

country
string

Country

Maximum string length: 200
Example:

"France"

url
string

Website URL

Example:

"https://example.com"

linkedinUrl
string

LinkedIn profile URL

Example:

"https://linkedin.com/in/johndoe"

linkedinSalesUrl
string

LinkedIn Sales Navigator URL

Example:

"https://linkedin.com/sales/people/johndoe"

role
string

Role / job title

Maximum string length: 200
Example:

"CTO"

allowPhoneCalls
boolean

Whether the contact accepts phone calls. Defaults to true.

Example:

true

customFields
object

Custom field values keyed by the custom field slug (the stable, immutable identifier returned by GET /custom-fields). Custom fields must already exist for the team (use the Custom Fields endpoints to create them). For backwards compatibility this endpoint also accepts keys matching the custom field name, but this fallback is deprecated and will be removed in a future release — migrate your integrations to use slugs.

Example:

Response

The created contact

id
string
required
Example:

"550e8400-e29b-41d4-a716-446655440000"

firstName
string
required
Example:

"John"

lastName
string
required
Example:

"Doe"

allowPhoneCalls
boolean
required
Example:

true

callCount
number
required
Example:

5

teamId
string
required
Example:

"550e8400-e29b-41d4-a716-446655440000"

phoneNumbers
string[]
required
Example:
customFields
object
required
Example:
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
lastModificationSource
enum<string>
required
Available options:
SKIPCALL,
API
email
object | null
Example:

"john.doe@example.com"

company
object | null
Example:

"Acme Inc."

city
object | null
Example:

"Paris"

country
object | null
Example:

"France"

url
object | null
Example:

"https://example.com"

linkedinUrl
object | null
Example:

"https://linkedin.com/in/johndoe"

linkedinSalesUrl
object | null
Example:

"https://linkedin.com/sales/people/johndoe"

role
object | null
Example:

"CTO"

lastCallAt
string<date-time> | null