v1

latestOpenAPI 3.1.02026-07-26359254.7 MB
Contacts

Import contacts

<small>Requires the contacts:write scope (or a broader one that includes it).</small>

Use this endpoint when you need to add or update many contacts in one call — for example when syncing contacts from another system. Each item uses the same fields as the contact update model. Use options to control deduplication, list assignment, and other import behavior: which keys identify an existing contact (email plus any of LinkedIn URL, phone, name, company, or custom fields), whether matched contacts are overwritten or skipped, whether previously deleted contacts are restored, and which lists or sequence the imported contacts are added to. The response reports how many contacts were added, updated, skipped, or failed, with a per-item outcome.

post/v3/contacts/import

Request body

Example request

{
  "items": [
    {
      "email": "john@example.com",
      "firstName": "John",
      "lastName": "Doe",
      "company": "Acme"
    },
    {
      "email": "jane@example.com",
      "firstName": "Jane",
      "lastName": "Smith",
      "company": "Globex"
    }
  ],
  "options": {
    "overwriteExisting": false,
    "skipExisting": true,
    "detectTimeZone": true,
    "listIds": [
      10,
      20
    ]
  }
}

Response

Contacts import processed successfully

addedinteger

Number of contacts created

updatedinteger

Number of contacts updated

skippedinteger

Number of contacts skipped

failedinteger

Number of contacts that failed

Example response

{
  "items": [
    {
      "id": 12345,
      "status": "created",
      "error": null
    },
    {
      "id": 12346,
      "status": "updated",
      "error": null
    },
    {
      "id": null,
      "status": "failed",
      "error": "Email is required"
    }
  ],
  "added": 1,
  "updated": 1,
  "skipped": 0,
  "failed": 1
}