Skip to main content
POST
/
v1
/
contacts
Create a contact
curl --request POST \
  --url https://api-public.skipcall.app/v1/contacts \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "firstName": "John",
  "lastName": "Doe",
  "phoneNumbers": [
    "+33612345678"
  ],
  "email": "john.doe@example.com",
  "company": "Acme Inc.",
  "city": "Paris",
  "country": "France",
  "url": "https://example.com",
  "linkedinUrl": "https://linkedin.com/in/johndoe",
  "linkedinSalesUrl": "https://linkedin.com/sales/people/johndoe",
  "role": "CTO",
  "allowPhoneCalls": true,
  "customFields": {
    "industry": "Technology",
    "team_size": "50-100"
  }
}
'
{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "firstName": "John",
  "lastName": "Doe",
  "allowPhoneCalls": true,
  "callCount": 5,
  "teamId": "550e8400-e29b-41d4-a716-446655440000",
  "phoneNumbers": [
    "+33612345678"
  ],
  "customFields": {
    "Industry": "Technology",
    "Size": "50-100"
  },
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "lastModificationSource": "SKIPCALL",
  "email": "john.doe@example.com",
  "company": "Acme Inc.",
  "city": "Paris",
  "country": "France",
  "url": "https://example.com",
  "linkedinUrl": "https://linkedin.com/in/johndoe",
  "linkedinSalesUrl": "https://linkedin.com/sales/people/johndoe",
  "role": "CTO",
  "lastCallAt": "2023-11-07T05:31:56Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.skipcall.app/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Enter your API Key (sk_live_xxx or sk_test_xxx)

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:
["+33612345678"]
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:
{
"industry": "Technology",
"team_size": "50-100"
}

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:
["+33612345678"]
customFields
object
required
Example:
{
"Industry": "Technology",
"Size": "50-100"
}
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
lastModificationSource
enum<string>
required
Available options:
SKIPCALL,
API,
HUBSPOT,
PIPEDRIVE
email
object
Example:

"john.doe@example.com"

company
object
Example:

"Acme Inc."

city
object
Example:

"Paris"

country
object
Example:

"France"

url
object
Example:

"https://example.com"

linkedinUrl
object
Example:

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

linkedinSalesUrl
object
Example:

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

role
object
Example:

"CTO"

lastCallAt
string<date-time> | null