Outlook Block
Access Outlook to read, draft, and send email messages within your workflow.
The Outlook block integrates Microsoft Outlook into your workflow so you can read, draft, and send email messages via the Microsoft Graph API. Reach for it when you need to automate email communications or process incoming email content using OAuth-authenticated access to a Microsoft account.
Overview
| Property | Value |
|---|---|
| Type | outlook |
| Category | tools |
| Color | #E0E0E0 |
When to Use
- Send transactional or notification emails from a workflow to one or more recipients.
- Draft emails for later review instead of sending them immediately.
- Read and process the contents of recent emails from a specific Outlook folder.
- Fetch a specific message by its ID and extract its body, metadata, and attachments.
- Reply within an existing email thread using a conversation or message ID.
- Trigger workflows automatically when new email arrives via the Outlook poller.
Configuration
Operation
Type: dropdown — selects which Outlook action to run. Required; defaults to send_outlook.
| Label | ID |
|---|---|
| Send Email | send_outlook |
| Draft Email | draft_outlook |
| Read Email | read_outlook |
Microsoft Account
Type: oauth-input — OAuth credential for the Outlook provider. Required for all operations. Requests the following Microsoft scopes: Mail.ReadWrite, Mail.ReadBasic, Mail.Read, Mail.Send, offline_access, openid, profile, email.
To
Type: short-input — recipient email address. Required for send_outlook and draft_outlook.
Subject
Type: short-input — email subject line. Required for send_outlook and draft_outlook.
Body
Type: long-input — email body content. Required for send_outlook and draft_outlook.
Reply to Message ID (advanced)
Type: short-input — the ID of an existing message to reply to, which enables thread continuation. Optional; applies to send_outlook only.
Conversation ID (advanced)
Type: short-input — conversation ID used to associate the sent message with an existing thread. Optional; applies to send_outlook only.
CC (advanced)
Type: short-input — comma-separated CC recipient addresses. Optional; applies to send_outlook and draft_outlook.
BCC (advanced)
Type: short-input — comma-separated BCC recipient addresses. Optional; applies to send_outlook and draft_outlook.
Folder (basic mode)
Type: folder-selector — interactive picker for an Outlook mail folder. Applies to read_outlook only. Uses the same OAuth credential; requires scopes Mail.ReadWrite, Mail.ReadBasic, Mail.Read.
Folder (advanced mode — manualFolder)
Type: short-input — manually enter a folder name (e.g. INBOX, SENT, or a custom folder name). Applies to read_outlook only. When provided, overrides the folder selector. Defaults to INBOX if neither field is set.
Message ID
Type: short-input — a specific message ID to fetch directly, overriding the folder selection. Applies to read_outlook only.
Number of Emails
Type: short-input — how many emails to retrieve (default: 1). Applies to read_outlook only.
Include Attachments
Type: switch — when enabled, downloads and returns file attachments alongside the email content. Applies to read_outlook only.
Trigger Configuration
Type: trigger-config — visible only when the block is used in trigger mode. Configures the outlook_poller trigger so that new incoming emails start the workflow automatically.
Inputs & Outputs
Inputs:
operation(string) — Operation to perform (send_outlook,draft_outlook, orread_outlook)credential(string) — Outlook OAuth access tokento(string) — Recipient email address (send and draft operations)subject(string) — Email subject (send and draft operations)body(string) — Email content (send and draft operations)folder(string) — Email folder selected via the folder picker (read operation)manualFolder(string) — Manual folder name override (read operation, advanced mode)messageId(string) — Specific message ID to fetch (read operation)maxResults(number) — Maximum number of emails to retrieve (read operation)includeAttachments(boolean) — Whether to download and include email attachments (read operation)
Outputs:
content(string) — Email body text content (read operation)metadata(json) — Email metadata including id, from, to, cc, subject, date, hasAttachments, attachmentCount, isRead, importance, bodyPreview (read operation)attachments(json) — Array of email attachments (read operation)message(string) — Success or error response message (send and draft operations)messageId(string) — ID of the sent message or created draft (send and draft operations)status(string) — Delivery or draft status (send and draft operations)email(json) — Full email data from trigger: id, subject, from, to, body, attachments (trigger mode)rawEmail(json) — Complete raw email data from the Microsoft Graph API (trigger mode)
Tools
- Outlook Send (
outlook_send) — Sends an email via the Microsoft Graph API (POST /me/sendMailorPOST /me/messages/{id}/replyfor threaded replies). Acceptsto,subject,body, and optionalcc,bcc,replyToMessageId,conversationId. Returns a success message and timestamp. - Outlook Draft (
outlook_draft) — Creates a draft email in the authenticated user's mailbox (POST /me/messages). Acceptsto,subject,body, and optionalcc,bcc. Returns the draftmessageId, subject, status, and timestamp. - Outlook Read (
outlook_read) — Reads emails from the authenticated user's mailbox (GET /me/mailFolders/{folder}/messagesorGET /me/messages/{id}). Acceptsfolder,maxResults,messageId, andincludeAttachments. Returnscontent,metadata, andattachments.
YAML Example
outlook_1:
type: outlook
name: "Outlook"
inputs:
operation: "send_outlook"
credential: "{{oauthBlock.accessToken}}"
to: "recipient@example.com"
subject: "Workflow notification"
body: "{{start.input}}"
connections:
outgoing:
- target: next-block-id