List contacts

Add up to 100 contacts to a list

Adds 1 to 100 contacts in one call. Each item of contacts is the same flat object as in POST /lists/list/{listId}/contacts, with the same key resolution, custom variable creation, duplicate rules and updateIfExists behaviour (read that endpoint first).

Rows are processed one after the other and independently: a failing row is reported in results with its index and an error message and does not stop the others. A row repeating an email or LinkedIn URL already seen earlier in the same batch is counted as a duplicate of that earlier row and is never updated, even with updateIfExists=true.

Counters: created + duplicates + failed = total, and updated is a subset of duplicates. The body must be an object with a contacts array, not a bare array. Split larger loads into several calls of 100.

post/lists/list/{listId}/contacts/batch

Request

  • Base URL: https://api.emelia.io
  • URL: https://api.emelia.io/lists/list/{listId}/contacts/batch
  • Auth: API key in header Authorization

Path parameters

listIdstring required

List id.

Query parameters

updateIfExists'true' | 'false'

Only the exact string true enables it. Applies to every row.

Request body

contactsListsContactFields[] required

Example request

{
  "contacts": [
    {
      "firstName": "John",
      "lastName": "Doe",
      "email": "john.doe@acme.com",
      "companyName": "Acme",
      "icebreaker": "Loved your talk at SaaStock"
    }
  ]
}

Response

Batch processed. Read results for the outcome of each row.

successtrue required

True even when some rows failed.

totalinteger required
createdinteger required
duplicatesinteger required

Includes the updated duplicates.

updatedinteger required
failedinteger required

Changes

No recorded changes to this operation across all 1 revision of this API.