Pipedream Microsoft Outlook steps in n8n
Updated 2026-10-21 · 3 min read · n8n: Microsoft Outlook (Native n8n node)
Outlook in Pipedream (the app is called Microsoft Outlook Email) sends notifications, files incoming mail and saves attachments. n8n has a native Microsoft Outlook node and a Microsoft Outlook Trigger, and the converter turns Send Email into a working Graph call.
The n8n side
Microsoft Outlook node (n8n-nodes-base.microsoftOutlook):
| Resource | Operations |
|---|---|
| Message | Delete, Get, Get Many, Move, Reply, Send, Send and Wait for Response, Update |
| Message Attachment | Add, Download, Get, Get Many |
| Draft | Create, Delete, Get, Send, Update |
| Folder | Create, Delete, Get, Get Many, Update |
| Folder Message | Get Many |
| Calendar, Event, Contact | Create, Delete, Get, Get Many, Update |
Microsoft Outlook Trigger: event Message Received, with filters such as folder, sender, read status and attachments. It polls on an interval you set.
What maps where
Pipedream (app microsoft_outlook) |
In n8n | Status |
|---|---|---|
| Send Email | HTTP Request POST /me/sendMail (to, cc, bcc, subject, contentType, content, saveToSentItems) |
automatic |
| Create Draft Email, Create Draft Reply | Draft → Create / Message → Reply (save as draft) | manual |
| Download Attachment | Message Attachment → Download | manual |
| Add Label to Email (categories), Move | Message → Update / Move | manual |
| Create Contact, Find Contacts | Contact → Create / Get Many | manual |
| New Email Event (Instant), New Attachment Received (Instant) | Microsoft Outlook Trigger, Message Received (+ has-attachments filter), polling | manual |
| New Email in Shared Folder Event | Trigger or Folder Message → Get Many on the shared mailbox | manual |
| New Contact Event | Schedule Trigger + Contact → Get Many | manual |
Credentials
Three options in n8n:
- Microsoft Outlook OAuth2 (default). On n8n Cloud, "Connect my account".
- Microsoft OAuth2 (generic Graph): grant
Mail.ReadWrite,Mail.Send,Calendars.ReadWrite,Contacts.ReadWrite. - Microsoft Entra Service Principal (app-only, node v2).
Self-hosted: register an app in Microsoft Entra, platform Web with n8n's redirect URL, include offline_access, then paste client ID and secret. Government and China tenants need the matching Graph base URL in the credential.
Typical migration: invoices from email to storage
Pipedream: New Attachment Received → code step (save to S3).
n8n: Microsoft Outlook Trigger (Message Received, has attachments) → Message Attachment → Download → AWS S3 → Upload. The attachment travels as binary data, so no /tmp handling.
Typical migration: notification email
Pipedream: Schedule → Postgres query → Send Email.
n8n after conversion: Schedule Trigger → Postgres (automatic) → Code (gather) → HTTP Request (Graph sendMail). One Outlook credential, done.
Pitfalls
- Polling instead of push. Pipedream's instant sources relied on Graph subscriptions, which expire after at most 10,080 minutes (under 7 days), or 1,440 minutes with resource data, and must be renewed. The n8n trigger polls instead: nothing to renew, but up to one poll interval of delay. Do not port code that created subscriptions by hand.
- Shared mailboxes need the credential's Use Shared Inbox option and
Mail.Read.Shared/Mail.Send.Sharedstyle permissions. - App-only access applies to all mailboxes unless you restrict it with an application access policy.
- Personal vs work accounts. If the Entra app is single-tenant, personal Outlook.com accounts cannot connect.
How to move your Outlook workflows
- Export the workflows from Pipedream.
- Upload on /convert; the free report shows the automatic Send Email steps and the manual triggers.
- Download the n8n JSON: 1 workflow is free; full export: $3 per workflow, $19 minimum — coming soon.
More in the Pipedream to n8n guide; Graph SDK code goes through the code step checker. Related: Gmail, Microsoft Teams, Google Calendar.
FAQ
- Does Send Email convert automatically?
- Yes. It becomes an HTTP Request to Microsoft Graph /me/sendMail with your n8n Microsoft Outlook OAuth2 credential; recipients, CC, BCC, subject and HTML or text body are kept.
- Is there an Outlook trigger in n8n?
- Yes. The Microsoft Outlook Trigger has one event, Message Received, with filters.
- How do I work with a shared mailbox?
- Turn on Use Shared Inbox in the Microsoft Outlook OAuth2 credential and enter the mailbox's user principal name.
- Can I use app-only auth?
- Yes, with node v2 and a Microsoft Entra service principal. n8n recommends restricting it with an Exchange Online application access policy, because app permissions otherwise cover every mailbox.
Related
Sources
- https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.microsoftoutlook/
- https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.microsoftoutlooktrigger/
- https://docs.n8n.io/integrations/builtin/credentials/microsoft/
- https://pipedream.com/apps/microsoft-outlook
- https://learn.microsoft.com/en-us/graph/api/resources/subscription?view=graph-rest-1.0