> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://help.lido.app/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Lido Mailbox

The Lido Mailbox is a Lido-hosted email address that triggers a workflow whenever a message arrives. Use it when you want incoming email to automatically kick off processing — without connecting your real Gmail or Outlook account.

---

## When to use the Lido Mailbox

- You want vendors, partners, or internal teams to forward documents into a workflow.
- You don't want to (or can't) connect a real Gmail/Outlook account to Lido.
- You want a clean, dedicated address per workflow (e.g., `invoices-something@in.lido.app`) instead of mixing automation traffic into a personal inbox.
- You use a service Lido doesn't have a direct integration with (Yahoo, iCloud, ProtonMail) and want incoming mail to trigger a workflow anyway — you can forward from any inbox to a Lido Mailbox.

---

## When NOT to use it

- **You need to filter on the original recipient address** (e.g., `accounts-payable@yourcompany.com`). Forwarded email may lose the original `To:` field. Use **Outlook Trigger** with a connected real account instead.
- **You need to *send* email from the Lido Mailbox.** Lido Mailbox is receive-only. To send, use **Send Gmail**, **Send Outlook**, or `SENDEMAIL` formula.
- **You need to keep mail in a real inbox for human review.** A Lido Mailbox is a trigger endpoint, not a mailbox you log into.

---

## How it works

1. Add a **Lido Mailbox Trigger** to a workflow.
2. Lido generates a unique address like `inbox-abc123@in.lido.app`.
3. Anyone (or any system) that emails that address triggers a workflow run.
4. The triggering email — including subject, body, sender, and attachments — is available as workflow data: `{{$item.data.email}}`, `{{$item.data.subject}}`, `{{$item.data.from}}`, `{{$item.data.attachments}}`.

The address is per-workflow. Each workflow you create has its own address; messages to one address don't trigger other workflows.

---

## Step-by-step: set up a Lido Mailbox workflow

### 1. Create the trigger

Open the workflow editor → add **Lido Mailbox Trigger** as the first node. Lido generates the address; copy it.

### 2. Add downstream nodes

Common pattern for processing email attachments:

- **Lido Mailbox Trigger** → **Data Extractor** (Source Type: Email, with file attachment) → **Spreadsheet** (Add Row to Table) → **Send Gmail / Send Outlook** (notify).

The Data Extractor node has built-in handling for emails — see "Data extraction from emails" below.

### 3. Test

Email the Lido Mailbox address from any account. In the workflow editor, watch the run appear in real time. Inspect the data each node received.

### 4. Activate

Once the test run looks right, activate the workflow.

### 5. (Optional) Set up forwarding

If you want emails from a real inbox (e.g., `invoices@yourcompany.com`) to trigger the workflow, set up auto-forwarding from that real inbox to the Lido Mailbox address. Both Gmail and Outlook support forwarding rules.

---

## Data extraction from emails

The Data Extractor node accepts emails as a source. Set:

- **Source Type:** Email
- **Source File / Email reference:** `{{$item.data.email}}`

The extractor reads the email body and any attachments. To extract from attachments specifically (e.g., a PDF invoice attached to the email):

- **Source Type:** File
- **Source File reference:** `{{$item.data.attachments[0].url}}` (or loop over all attachments)

If the email has multiple attachments, use a **Loop** node before the Data Extractor to process each attachment in turn.

---

## Page counting for emails

| Source | Page count |
| --- | --- |
| Email body only | 1 page |
| Email body + 1 PDF attachment (5 pages) | 6 pages |
| Email body + 2 image attachments | 3 pages (1 + 1 + 1) |

Failed extractions don't count toward your allowance.

---

## Address management

Lido Mailbox addresses look like `inbox-{random}@in.lido.app`. They're durable — once created, the address stays the same for the life of the workflow, so anyone who has it can keep sending mail.

If you need to **rotate the address** (e.g., the old one was leaked), delete the trigger node and add a new one. The new node generates a fresh address. Update wherever you'd published the old one.

You can change the **display name** the address shows under (visible to senders' inboxes when they reply, etc.) in the trigger node's settings.

---

## Reply handling

Replies to messages forwarded into a Lido Mailbox come back to the Lido Mailbox address — they don't reach the original sender. If you need replies to land somewhere usable:

- **Set the workflow to send a confirmation email back to the sender** (using `{{$item.data.from}}` as the To: address).
- **Don't use the Lido Mailbox for two-way conversations.** It's a trigger endpoint.

---

## Spam and abuse

Lido applies basic spam filtering to incoming mail. Messages flagged as spam are dropped, not run through the workflow. If you suspect legitimate mail is being filtered:

- Check that the sender domain isn't on common blocklists.
- Test with a different sender.
- Contact support with an example so the filter rules can be reviewed.

To **stop unwanted mail** to a Lido Mailbox, the cleanest option is to delete the trigger and create a new one — the old address goes dark.

---

## Tips

- **One workflow per address.** Don't try to use a single Lido Mailbox to drive five workflows; create five mailboxes. Easier to debug, easier to rotate.
- **Use a meaningful workflow name.** Lido derives the display name from it. "Invoice Processing — AP Team" is much clearer to senders than "Workflow 4".
- **Forward, don't BCC.** Forwarding preserves attachments cleanly; BCC sometimes strips or hides them.
- **Add a Send confirmation step.** Senders appreciate a "We got your invoice; processing now" reply, especially during onboarding.
- **Filter at the workflow level.** If only some messages should be processed, use a Switch or Filter node early in the workflow to drop the rest.

---

## Common mistakes

- **Sharing the Lido Mailbox publicly.** Anyone with the address can email it; treat the address like a webhook URL.
- **Expecting threading.** Email threads aren't preserved across runs. Each new email is a separate workflow run.
- **Assuming attachments come in the body.** Attachments are referenced separately at `{{$item.data.attachments}}`, not embedded in `{{$item.data.body}}`.
- **Forwarding from Gmail with "include original message" off.** Some forwarding settings strip the body. Test before relying on it.
- **No fallback for spam.** A vendor's invoice gets caught by spam filtering and the workflow never runs. Build a "did the workflow run today?" check elsewhere if SLA matters.

---

## Related articles

- Triggers: how workflows start
- Connect Gmail or Outlook (when you need a real inbox connection)
- Extract data from PDFs and documents
- Build your first workflow
- Send extracted data to email or Slack