---
title: "Import up to 1,000 suppressed addresses"
method: POST
path: "/suppressions/batch"
tags: ["Suppressions"]
---

# Import up to 1,000 suppressed addresses

`POST /suppressions/batch`

## Request

- Base URL: `https://api.eusend.dev`
- URL: `https://api.eusend.dev/suppressions/batch`
- Auth: HTTP bearer

For carrying a suppression list over from another provider before the first send.

## Request body

- ImportSuppressionsRequest
  - `emails` union[], required: Bare addresses, objects, or a mix — so a CSV column can be posted unreshaped.
    - union
      - string, email
      - object
        - `email` string, email, required
        - `reason` 'bounce' | 'complaint' | 'manual'

## Response `201`

Imported.

- ImportSuppressionsResponse
  - `count` integer, required: Entries written.
  - `already_suppressed` integer, required: Entries already on the list.
  - `duplicates` integer, required: Repeated addresses in the payload.

## Other responses

- `400`: The request body or query failed validation (`VALIDATION_ERROR`).
- `401`: Missing, malformed, or revoked API key (`UNAUTHORIZED`).
- `403`: The import would exceed the plan suppression cap, or the key is test-mode.
- `429`: Rate limit exceeded (`RATE_LIMITED`).
- `500`: Unexpected server error (`INTERNAL_ERROR`). Carries `request_id`.

---

[API](https://skmtc.dev/eusend/apis/eusend-api.md) · [All operations](https://skmtc.dev/eusend/apis/eusend-api/llms.txt) · [OpenAPI document](https://skmtc.dev/eusend/apis/eusend-api/revisions/bec561f55488?raw)
