Lead & contact API

Create, update, bulk-modify, export and delete contacts over the API.

Updated Sep 10, 2026 1 min read

Scopes: contacts:read and contacts:write.

Endpoints

  • GET /contacts — list and filter, cursor paginated
  • POST /contacts — create or update a contact (upsert by email)
  • GET /contacts/{contact_id} — retrieve one
  • PATCH /contacts/{contact_id} — update fields
  • DELETE /contacts/{contact_id} — delete
  • POST /contacts/bulk — create, update or delete many in one request
  • GET /contacts/export — export as CSV

Important notes

  • Contacts are unique per workspace and email address, so POST /contacts with an existing address updates that record rather than creating a duplicate.
  • Use /contacts/bulk with an idempotency key for imports; it is far kinder to the rate limit than a call per row.
  • Suppressed addresses stay suppressed. Re-creating a contact does not clear a bounce or unsubscribe record.

Was this article helpful?

Related articles