Skip to main content
Resend Docs
current

Search documentation

Type to search this documentation.

On this pageOverview

List Suppressions

Show all suppressions.

<>

  {isRequired ? 
  • limit (number) — Number of suppressions to retrieve.

    • Default value: 20

    • Maximum value: 100

    • Minimum value: 1

: <>

Note that the limit parameter is optional. If you do not provide a limit, all suppressions will be returned in a single response.

  • limit (number) — Number of suppressions to retrieve.

    • Maximum value: 100

    • Minimum value: 1

      </>}
      • after (string) — The ID after which we'll retrieve more suppressions (for pagination). This ID will not be included in the returned list. Cannot be used with the before parameter.

      • before (string) — The ID before which we'll retrieve more suppressions (for pagination). This ID will not be included in the returned list. Cannot be used with the after parameter.

      </>

  • origin (bounce | complaint | manual) — Filter suppressions by origin.

    Possible values:

    • bounce: emails suppressed automatically after a bounce
    • complaint: emails suppressed due to a user complaint
    • manual: emails suppressed by your team manually
Node.js
import { Resend } from 'resend';

const resend = new Resend('re_xxxxxxxxx');

const { data, error } = await resend.suppressions.list();
PHP
$resend = Resend::client('re_xxxxxxxxx');

$resend->suppressions->list();
Python
import resend

resend.api_key = "re_xxxxxxxxx"

resend.Suppressions.list()
Ruby
require "resend"

Resend.api_key = "re_xxxxxxxxx"

Resend::Suppressions.list
Go
package main

import "github.com/resend/resend-go/v4"

func main() {
	client := resend.NewClient("re_xxxxxxxxx")

	client.Suppressions.List(&resend.ListSuppressionsOptions{})
}
Rust
use resend_rs::{Resend, Result, list_opts::ListOptions};

#[tokio::main]
async fn main() -> Result<()> {
  let resend = Resend::new("re_xxxxxxxxx");

  let _data = resend.suppressions.list(ListOptions::default()).await?;

  Ok(())
}
Java
import com.resend.Resend;
import com.resend.core.exception.ResendException;

public class Main {
    public static void main(String[] args) throws ResendException {
        Resend resend = new Resend("re_xxxxxxxxx");

        resend.suppressions().list();
    }
}
.NET
using Resend;

IResend resend = ResendClient.Create( "re_xxxxxxxxx" );

await resend.SuppressionListAsync();
cURL
curl -X GET 'https://api.resend.com/suppressions' \
     -H 'Authorization: Bearer re_xxxxxxxxx'
CLI
resend suppressions list
Response
{
  "object": "list",
  "has_more": false,
  "data": [
    {
      "id": "e169aa45-1ecf-4183-9955-b1499d5701d3",
      "email": "steve.wozniak@example.com",
      "origin": "manual",
      "source_id": null,
      "created_at": "2026-10-06 23:47:56.678+00"
    },
    {
      "id": "520784e2-887d-4c25-b53c-4ad46ad38100",
      "email": "susan.kare@example.com",
      "origin": "bounce",
      "source_id": "4ef9a417-02e9-4d39-ad75-9611e0fcc33c",
      "created_at": "2026-10-07 08:12:03.412+00"
    }
  ]
}

// The `source_id` in the response references the email that triggered the suppression. For suppressions with a `manual` origin, `source_id` is `null`.
Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu