List suppressed recipients

Search Documentation

Search across all developer documentation

suppressions

List suppressed recipients

GET /v1/suppressions
Auth required suppressions.view

Returns the calling org's AWS SES account-level suppression list. Results are read from SES through a short server-side cache (up to a minute), so newly-added suppressions may take that long to appear. SES populates this list automatically when bounce/complaint feedback arrives; the API is read-only — this endpoint does not add or remove entries.

The source field is derived from reason: entries with reason bounce or complaint are reported as source: ses_event (the platform's event pipeline created them), and everything else is reported as source: manual (added directly via the AWS console, CLI, or admin tooling). It is not based on stored provenance — SES does not carry that metadata.

Sorting is suppressed_at descending. When the email filter is set the endpoint switches to full-scan mode: it returns every match in a single response and ignores limit/cursor/has_more. Cursors are opaque base64 — stale or malformed cursors fall back to page 1 silently instead of erroring.

Query parameters

limit integer optional

Page size (1–200). Default 50.

cursor string optional

Opaque cursor returned from the previous page.

from string<date-time> optional

Window start (RFC 3339). Defaults to 30 days ago.

to string<date-time> optional

Window end (RFC 3339). Defaults to now.

reason string enum optional

Filter by suppression reason. Case-insensitive on input; lower-cased on output.

email string optional

Case-insensitive substring match on the suppressed address. When set, limit/cursor are ignored and every match is returned in one response.

Responses

200 Cursor-paginated list of suppressions, newest-first application/json
401 Missing, malformed, or unknown API key application/problem+json
403 Key lacks the required scope or plan limit violated application/problem+json
422 Query parameter or path value failed validation application/problem+json
429 Per-org rate limit exceeded application/problem+json
500 Unexpected server-side failure. The code is internal_error. The request_id field can be quoted to SendOps support to investigate. application/problem+json