Lists
Manage your contacts and lists: create lists, add or update contacts (single or in bulk, with automatic field detection and custom variable creation), search and delete them, and export your lists.
These endpoints are served under https://api.emelia.io/lists.
📄️ Create a list
Creates an empty list. Then add your contacts with `POST /lists/list/{listId}/contacts` (or the batch variant).
📄️ List all lists
Without `page` and `limit`, returns a plain array of your lists. With pagination parameters, returns a paginated envelope.
📄️ Get list details
Get list details
📄️ Rename a list
Rename a list
📄️ Delete a list
Deletes the list and its contacts.
📄️ List contacts of a list
Paginated listing of the contacts of a list.
📄️ Get a contact
Get a contact
📄️ Delete a contact
Deletes a contact from the list (and its company data). The list counters stay in sync, and if the list is used by campaigns the removal is propagated to them.
📄️ Add a contact to a list
Adds a single contact to a list from a flat JSON object — field names as keys, values as strings, numbers or booleans. This is the simplest way to push contacts from your automations (Zapier, Make, n8n...).
📄️ Add contacts in bulk
Adds up to **100 contacts** in one call. Each item of `contacts` is the same flat object as the single `POST /lists/list/{listId}/contacts` endpoint, with the same field detection, custom variable auto-creation and duplicate rules (including `updateIfExists`).
📄️ Update a contact
Updates a contact from a flat JSON object — the same body as the add endpoint: field names as keys, values as strings, numbers or booleans. Only the contact ID is needed, the list is derived from the contact. Find the ID with the `email` / `linkedinUrl` lookup of `GET /lists/list/{listId}/rows`, or keep the `leadId` returned when you added the contact.
📄️ Export lists
Exports one list as a CSV file, or several lists as a ZIP archive (one CSV per list).