Skip to content
Docs

Suppressions created, updated or deleted.

suppression.created

Sent when a suppression is added with Create a suppression, a CSV import in the dashboard, or an automation’s Add to suppressions step. Suppressions that Emailit adds automatically after bounces and complaints don’t send this event; listen for email.bounced and email.complained instead.

Webhook requests carry a JSON array of events like this one; see Webhook requests.

Fields

event_idstring

Event ID (evt_…). A retried request carries the same ID, so use it to skip events you already handled. You can also look the event up with Retrieve an event.

typestring

Always suppression.created.

objectobject

The suppression the event describes. Its fields are listed below.

data.objectobject

The same object again, in the shape that the Events API returns in data.

Suppression object

idstring

Suppression ID (sup_…).

objectstring

Always suppression.

emailstring

Suppressed address, in lowercase.

typestring

recipient, bounce, complaint or unsubscribe. Only recipient suppressions stop API and SMTP sends; campaigns skip every type.

reasonstring | null

Reason for the suppression.

created_atstring

When the suppression was created, in ISO 8601 with a UTC offset.

keep_untilstring | null

When the suppression expires, or null if it’s permanent.

JSON
{
  "event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
  "type": "suppression.created",
  "object": {
    "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
    "object": "suppression",
    "email": "ada@example.com",
    "type": "recipient",
    "reason": "manual",
    "created_at": "2026-10-01T09:30:12.481000+00:00",
    "keep_until": null
  },
  "data": {
    "object": {
      "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
      "object": "suppression",
      "email": "ada@example.com",
      "type": "recipient",
      "reason": "manual",
      "created_at": "2026-10-01T09:30:12.481000+00:00",
      "keep_until": null
    }
  }
}

suppression.updated

Sent when a suppression changes with Update a suppression.

Webhook requests carry a JSON array of events like this one; see Webhook requests.

Fields

event_idstring

Event ID (evt_…). A retried request carries the same ID, so use it to skip events you already handled. You can also look the event up with Retrieve an event.

typestring

Always suppression.updated.

objectobject

The suppression the event describes. Its fields are listed below.

data.objectobject

The same object again, in the shape that the Events API returns in data.

Suppression object

idstring

Suppression ID (sup_…).

objectstring

Always suppression.

emailstring

Suppressed address, in lowercase.

typestring

recipient, bounce, complaint or unsubscribe. Only recipient suppressions stop API and SMTP sends; campaigns skip every type.

reasonstring | null

Reason for the suppression.

created_atstring

When the suppression was created, in ISO 8601 with a UTC offset.

keep_untilstring | null

When the suppression expires, or null if it’s permanent.

JSON
{
  "event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
  "type": "suppression.updated",
  "object": {
    "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
    "object": "suppression",
    "email": "ada@example.com",
    "type": "recipient",
    "reason": "Asked to pause invoices until January",
    "created_at": "2026-10-01T09:30:12.481000+00:00",
    "keep_until": "2027-01-01T00:00:00.000000+00:00"
  },
  "data": {
    "object": {
      "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
      "object": "suppression",
      "email": "ada@example.com",
      "type": "recipient",
      "reason": "Asked to pause invoices until January",
      "created_at": "2026-10-01T09:30:12.481000+00:00",
      "keep_until": "2027-01-01T00:00:00.000000+00:00"
    }
  }
}

suppression.deleted

Sent when a suppression is deleted with Delete a suppression. An expired suppression stays in the list and doesn’t send this event, and neither does an automation’s Remove from suppressions step.

Webhook requests carry a JSON array of events like this one; see Webhook requests.

Fields

event_idstring

Event ID (evt_…). A retried request carries the same ID, so use it to skip events you already handled. You can also look the event up with Retrieve an event.

typestring

Always suppression.deleted.

objectobject

The suppression the event describes. Its fields are listed below.

data.objectobject

The same object again, in the shape that the Events API returns in data.

Suppression object

idstring

Suppression ID (sup_…).

objectstring

Always suppression.

emailstring

Suppressed address, in lowercase.

typestring

recipient, bounce, complaint or unsubscribe. Only recipient suppressions stop API and SMTP sends; campaigns skip every type.

reasonstring | null

Reason for the suppression.

created_atstring

When the suppression was created, in ISO 8601 with a UTC offset.

keep_untilstring | null

When the suppression expires, or null if it’s permanent.

JSON
{
  "event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
  "type": "suppression.deleted",
  "object": {
    "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
    "object": "suppression",
    "email": "ada@example.com",
    "type": "recipient",
    "reason": "manual",
    "created_at": "2026-10-01T09:30:12.481000+00:00",
    "keep_until": null
  },
  "data": {
    "object": {
      "id": "sup_2xL1c8NqT4pWm6Rb0YsKd3HvF9e",
      "object": "suppression",
      "email": "ada@example.com",
      "type": "recipient",
      "reason": "manual",
      "created_at": "2026-10-01T09:30:12.481000+00:00",
      "keep_until": null
    }
  }
}

Was this page helpful?

Thanks for the feedback.

Thanks, we read every message.