# get_site_email

Source: https://modulify.ai/docs/mcp/emails/get-site-email

Reads one email a site sent in full, with every recipient's own status, the delivery events, the stored body and the clicked links.

- Title: Read one email a site sent
- Scope: `config:read`
- Access: Read only

It takes the id from `list_site_email_sends` and returns everything the list row carries, plus every recipient in `recipients` with their own delivery status (`pending`, `sent`, `delivered`, `delayed`, `bounced`, `complained`, `rejected`, `failed` or `suppressed`) and the provider's detail, such as a bounce reason. It also returns the delivery events with their times in `events`, the attachment names, types and sizes (never their content), the custom header names, the idempotency key, the bounce type, and the stored `html` and `text` bodies.

`bodyStored` is false for messages sent before bodies were kept, and `bodyTruncated` is true when a body over 200,000 characters was stored cut short. Rows are kept until the history is cleared.

A message sent with open and click tracking on (`tracked` true) also carries `lastOpenedAt` and `lastClickedAt` next to the counts and first times, and `links`, every clicked link with its own click count and first and last click, most clicked first, up to 50 different links. All of it covers the whole message and never says which recipient opened or clicked, and opens are approximate.

It answers whether a particular person received a message, why it bounced, what it said, or whether it was opened and which links were clicked. See [Open an email](https://modulify.ai/docs/automations/emails#open-an-email).

## Inputs

| Input | Type | Required | Description |
| --- | --- | --- | --- |
| `projectId` | string | Yes | The site id. |
| `id` | string | Yes | The id of the email, from `list_site_email_sends`. |