# Import suppressed email addresses

`POST /v1/suppressions/import`

Requires an API key with the `suppressions:write` scope. [About keys and scopes](/docs/api/authentication)

Admin, or a key with `suppressions:write`; never an agent key. Blocks up to 10,000 addresses per request with reason `imported`, for example opt-outs carried over from another platform. Addresses are trimmed and lowercased; one already blocked keeps its reason. Nothing is sent to anyone.

## Request body

- `addresses` (string[], required, at least 1 item, at most 10000 items) — Email addresses to block, up to 10,000; trimmed and lowercased.

## Returns

Returns `200 OK`. Otherwise returns an error; [Errors](/docs/api/errors) lists every code and which to retry.

- `addedCount` (integer, required, min 0, max 9007199254740991) — Newly blocked addresses.
- `alreadySuppressedCount` (integer, required, min 0, max 9007199254740991) — Already blocked, for any reason; their reason is left as it was.
- `invalid` (string[], required) — Entries that are not an email address, exactly as sent.

## Example

```bash
curl -X POST https://api.kirora.io/v1/suppressions/import \
  -H "Authorization: Bearer $KIRORA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "addresses": [
      "addresses_example"
    ]
  }'
```

Response `200`:

```json
{
  "data": {
    "addedCount": 0,
    "alreadySuppressedCount": 0,
    "invalid": [
      "invalid_example"
    ]
  }
}
```
