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

# IMAP poll

> Watch a mailbox and start a Run when mail arrives.

Watches a mailbox without calling the model until there is new mail. Catalog line: Watch a mailbox without calling the model.

This is not **IMAP fetch**, which reads messages as a Tool after a Run already started. See [IMAP fetch](/graph/tools/imap-fetch).

Bind the mailbox on [Connections](/instance/connections#imap). **Start** on Overview is required. See [Listening](/concepts/watching).

<h2 id="input">
  Input
</h2>

Inspector **Settings**. Empty-field rules for the Graph: [Previous nodes](/graph/previous-nodes).

| Field                       | Required | Empty                       | Notes                                                                                                                                                                               |
| --------------------------- | -------- | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Kind**                    | Yes      | —                           | **IMAP poll**.                                                                                                                                                                      |
| **Poll interval (minutes)** | Yes      | Default: `3`                | 1–60.                                                                                                                                                                               |
| **Run concurrency**         | Yes      | Default: Parallel (default) | **Parallel (default)** or **Serial (one email at a time)**. Serial keeps one IMAP-originated Run at a time on this Instance. Parallel allows overlapping Runs for independent mail. |
| **Inbound files**           | No       | Default: Artifact only      | Email attachments. CSV and XLSX can become State rows. [Inbound files](/graph/triggers#inbound-files).                                                                              |

<h2 id="output">
  Output
</h2>

Menu and empty fields: [Previous nodes](/graph/previous-nodes). Tokens below: one Trigger on the Graph (`Trigger`).

| Output              | In menu | Token                   | Type       | Next node gets                                                                               |
| ------------------- | ------- | ----------------------- | ---------- | -------------------------------------------------------------------------------------------- |
| Body                | Yes     | `{{Trigger.text}}`      | Text       | Message body. Also the Result.                                                               |
| Photos              | Yes     | `{{Trigger.photos}}`    | JSON array | Photo attachments. Not a **File id**. [Photos and Files](/graph/previous-nodes#attachments). |
| Files               | Yes     | `{{Trigger.files}}`     | JSON array | File attachments.                                                                            |
| Subject             | Yes     | `{{Trigger.subject}}`   | Text       | Subject.                                                                                     |
| From                | Yes     | `{{Trigger.from}}`      | Text       | From.                                                                                        |
| To                  | Yes     | `{{Trigger.to}}`        | Text       | To.                                                                                          |
| Date                | Yes     | `{{Trigger.date}}`      | Text       | Date.                                                                                        |
| Folder              | Yes     | `{{Trigger.folder}}`    | Text       | Folder.                                                                                      |
| UID                 | Yes     | `{{Trigger.uid}}`       | Text       | UID (digits as text).                                                                        |
| Message-ID          | Yes     | `{{Trigger.messageId}}` | Text       | Message-ID header.                                                                           |
| Memory / State rows | No      | —                       | —          | Written by [Inbound files](/graph/triggers#inbound-files), not Previous nodes.               |
