Runs examples for real against your account. Test keys only; kept in this tab, never stored on our side. Get a key
ZapSMTP / Docs / Suppressions

Add suppressions in bulk

POST/v1/suppressions/batch

Add up to 1,000 addresses in one call. Duplicates are ignored; existing entries keep their reason (an unsubscribe becomes manual when added as manual); sends see the change immediately.

Requires a full-access live key; test keys get 403 test_key_restricted.

Body parameters

emailsstring[]required
1–1,000 addresses.
reasonstring
manual: no email at all; unsubscribe: no broadcast email (transactional email still goes out). One of manual, unsubscribe. Default manual.

Errors

test_key_restrictedHTTP 403
test-mode keys can send test email and read, not change the account: use a live key
invalid_parameterHTTP 422
Empty or over 1,000 addresses, an invalid address, or an unknown reason.
POST/v1/suppressions/batch
curl -X POST 'https://zapsmtp.xyz/v1/suppressions/batch' \
  -H "Authorization: Bearer $ZAP_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
  "emails": [
    "ann@example.com",
    "bob@example.com"
  ],
  "reason": "manual"
}'
Set ZAP_API_KEY in your environment.
Response 201 Created
{
  "object": "suppression_batch",
  "added": 2,
  "reason": "manual",
  "emails": [
    "ann@example.com",
    "bob@example.com"
  ]
}