Skip to content

Tool

import_contacts

Import contacts

Idempotent
SurfacesChat agentMCP

Bulk-import contacts from user-supplied rows INTO an audience (mailing list). ORG-ADMIN ONLY and requires a human approval step in chat — the approval card shows how many rows and which audience before it runs. Provide `csv`: a header row with an `email` column (optional `name` + any merge-field columns), then one row per contact. Re-importing the same email updates rather than duplicates. Use when the operator pastes or supplies a list of people to add to a list. `status` sets the initial membership state for new members (default the audience's — usually subscribed/pending). This is the ONLY way to bulk-add people via the assistant; single contacts go through add_subscriber/upsert_contact.

Parameters

NameTypeRequiredDescription
audienceIdstringyesThe destination audience (mailing list) id.
csvstringyesCSV text: a header row with an `email` column (optional `name` + merge-field columns), then one row per contact.
statuspendingsubscribedunsubscribedcleanedtransactionalnoInitial membership status for NEWLY created members (existing keep theirs).

Example

json
{
  "audienceId": "aud_…",
  "csv": "<csv>"
}