Skip to documentation

Webhook events

email.suppressed

The email was not sent because no recipient could receive it.

When it fires

email.suppressed fires when the send queue picks up an email and none of its recipients can receive it:

  • OnTeamSuppressionList: every recipient is on the team's suppression list.
  • Unsubscribed: the email belongs to a broadcast and the contact has since unsubscribed.

When only some recipients are suppressed, the email is sent to the rest and no email.suppressed event fires.

Payload

json
{
  "type": "email.suppressed",
  "created_at": "2026-09-29T10:00:00.000Z",
  "data": {
    "created_at": "2026-09-29T09:59:59.000Z",
    "email_id": "YOUR_EMAIL_ID",
    "from": "hello@example.com",
    "to": ["you@example.net"],
    "subject": "Welcome",
    "tags": {},
    "suppressed": {
      "type": "OnTeamSuppressionList",
      "message": "Opensend has suppressed sending to this address because it is on the team's suppression list."
    }
  }
}

suppressed.type is OnTeamSuppressionList or Unsubscribed; suppressed.message explains it. message_id is absent because nothing was sent. The other data fields are the common email fields described in email.sent.

Handle the event

Verify the signature and deduplicate by svix-id.