> ## Documentation Index
> Fetch the complete documentation index at: https://docs.custral.com/llms.txt
> Use this file to discover all available pages before exploring further.

# email.bounced

> A message sent from a connected mailbox bounced.

Fires when the mail provider reports that a message sent from a connected
mailbox bounced. The message is marked as bounced in Custral as the event fires.

<Warning>
  **Not every bounce is detected.** This event depends on the mail provider's
  bounce report being recognised, and some are missed: rejections from another
  domain's server, reports in a language other than English, and connection
  failures. Do not rely on it as your only signal that an address is bad, and
  treat an `email.bounced` delivery as confirmation rather than as the complete
  list.
</Warning>

## Payload

```json theme={null}
{
  "id": "whd_6Qe2tJ8vH",
  "event": "email.bounced",
  "createdAt": "2026-09-11T12:20:14.036Z",
  "data": {
    "messageId": "18f2d3e7a9b1c4f6",
    "recipient": "ada@ravennafoods.com"
  }
}
```

<ResponseField name="messageId" type="string" required>
  The mail provider's id for the message that bounced. Always present.
</ResponseField>

<ResponseField name="recipient" type="string">
  The first address the message was sent to. An empty string when that could
  not be read.
</ResponseField>

## Worth knowing

* **Only the first recipient is named.** For a message sent to several people,
  `recipient` is the first `to` address, which may not be the one that bounced.
* **Nothing is suppressed.** A bounce marks the message and leaves future sends
  to the address alone. Suppress it yourself if you need to.

## Example

```ts theme={null}
custral.on("email.bounced", async (event) => {
  const {messageId, recipient} = event.data;
  if (!recipient) return;

  await deliverability.flag({address: String(recipient), messageId});
});
```


## Related topics

- [Email](/dev/webhooks/events/email.md)
- [Webhooks](/dev/webhooks/overview.md)
- [Event catalog](/dev/webhooks/events/overview.md)
