Microsoft Email Listener
Microsoft 365 mailboxes store business email, folder structures, message content, and attachments that teams use for communication, intake, and operational processing.
The Microsoft Email Listener Node polls a mailbox folder through Microsoft Graph and emits unread messages into a Workflow, either one item per email or one item per attachment. Use it when a Workflow needs to react to inbound mailbox traffic such as invoices, support requests, or approval emails.
Revision History
0.1.0.0 - Rebased the Node package version after the V2 overhaul review.
0.0.0.29 - Standardized the public V2 help article.
1.0.0.0 - Initial release.
1.0.0.9 - Fixed shared OAuthConnection lock handling.
0.0.0.12 - Node name correction.
0.0.0.26 - Added support for nested mailbox folder paths in the listener folder settings.
Connection
Use the Microsoft Graph Email Connection to authorize mailbox access and, when needed, target a specific mailbox instead of the authenticated user mailbox.
| Property | Type | Description |
|---|---|---|
Tenant Id |
String | The Microsoft Entra ID tenant identifier, or common for a multi-tenant sign-in flow. |
Client Id |
String | The application ID from your Microsoft Entra ID app registration. |
Client Secret |
Masked | The client secret generated for the app registration. |
Access Token |
Masked | The OAuth access token returned after authorization. |
Refresh Token |
Masked | The OAuth refresh token used to renew access when Microsoft returns one. |
Scopes |
String | The OAuth scopes requested during authorization. The default is offline_access https://graph.microsoft.com/.default. |
Mailbox |
String | The optional mailbox address or UPN to monitor. Leave this empty to use the authenticated user mailbox. |
Setup Notes
- Register an application in Microsoft Entra ID with mail permissions such as
Mail.ReadorMail.ReadWrite. - Grant admin consent when your tenant requires it, or make sure the signed-in user has already consented to the requested permissions.
- Configure the Connection with
Tenant Id,Client Id, andClient Secret, then complete the OAuth authorization flow soAccess TokenandRefresh Tokenare populated. - Set
Mailboxonly when you need to monitor a specific mailbox. Leave it empty when you want the Node to use the authenticated user mailbox. - Make sure the monitored, processed, and error folders already exist before you run the Node.
- You can supply folder settings as a well-known top-level folder such as
Inbox, a direct Microsoft Graph folder identifier, or a nested path such asInbox/Invoices.
Methods
This Node exposes one listener method that polls a mailbox folder and emits mailbox payloads to a Workflow.
Listen
Use this method when you want a Workflow to react to unread messages in a Microsoft 365 mailbox folder.
| Parameter | Type | Description |
|---|---|---|
Connection |
Connection | The Microsoft Graph Email Connection that contains the mailbox authorization details. |
MonitoredFolder |
String | The folder to poll for unread messages. You can use a well-known folder such as Inbox, a direct Graph folder ID, or a nested path such as Inbox/Invoices. |
ProcessedFolder |
String | The optional folder to move successfully processed messages to. You can also use a nested path. Leave this empty when you want successful messages marked as read instead. |
ErrorFolder |
String | The optional folder to move failed messages to. You can also use a nested path. Leave this empty when you want failed messages to remain in the monitored folder. |
FireMethod |
String | Controls how the Node emits results. Use PerMessage to emit one payload per email, or PerAttachment to emit one payload per attachment. |
| Return | Type | Description |
|---|---|---|
Response |
Array | An emitted sequence of mailbox payloads. Each payload includes MessageId, Sender, Recipients, Subject, Body, IsBodyHtml, EmailDate, and Attachments. PerMessage emits one payload with all resolved attachments for the message, while PerAttachment emits one payload per attachment. |
Usage Notes
- The listener polls every 5 seconds until the Workflow stops or runtime cancellation is requested.
- The Node resolves nested folder paths one segment at a time from the mailbox root. For example,
Inbox/InvoicesresolvesInboxfirst and thenInvoicesbelow it. - When
ProcessedFolderis empty, successful messages are marked as read instead of being moved. - When
ErrorFolderis empty, messages that fail during payload construction remain in the monitored folder. - Empty polls are a normal outcome and do not emit payloads.
- If Microsoft Graph returns an error on the first unread-message poll, the Node surfaces that provider failure instead of converting it into an empty successful result.
Known Issues
- Nested folder paths support
/delimiters only. The Node does not perform a recursive mailbox-wide search by leaf folder name.