Microsoft Outlook
Type ID: microsoftOutlook · Kind: Action · Trace: TOOL
Consume the Microsoft Outlook API: send mail and read messages for the authenticated user through Microsoft Graph.
Credentials
Microsoft Outlook
Resources & operations
- Message (
message)- Send (
send) — Send a message. - Read All (
readAll) — Read all messages.
- Send (
Properties
Common
| Property | Key | Type | Required | Default | Possible values | Shown when |
|---|---|---|---|---|---|---|
| Resource | resource | options | No | message | Message (message) | — |
| Operation | operation | options | No | send | Send (send), Read All (readAll) | resource = message |
Message → Send
| Property | Key | Type | Required | Default | Possible values | Shown when |
|---|---|---|---|---|---|---|
| To (Recipients) | toRecipients | string | Yes | '' | Comma-separated primary recipient email addresses | resource = message, operation = send |
| Email Subject | subject | string | No | '' | Free text | resource = message, operation = send |
| Message | bodyContent | string | No | '' | Free text (body content) | resource = message, operation = send |
| Advanced Email Options | additionalFields | object | No | {} | Collection (see below) | resource = message, operation = send |
additionalFields collection options:
| Property | Key | Type | Required | Default | Possible values |
|---|---|---|---|---|---|
| BCC (Hidden Recipients) | bccRecipients | string | No | '' | Comma-separated email addresses |
| CC (Carbon Copy Recipients) | ccRecipients | string | No | '' | Comma-separated email addresses |
| Body Content Format | bodyContentType | options | No | Text | HTML (html), Text (Text) |
| Reply-To Address | replyTo | string | No | '' | Single email address |
| Store in Sent Items | saveToSentItems | boolean | No | true | true / false |
Message → Read All
| Property | Key | Type | Required | Default | Possible values | Shown when |
|---|---|---|---|---|---|---|
| Output | output | options | No | simple | Simplified (simple), Raw (raw), Select Included Fields (fields) | resource = message, operation = readAll |
| Limit | limit | number | Yes | 100 | Max number of results | resource = message, operation = readAll |
| Fields | fields | checkbox | Yes | [] | bccRecipients, body, bodyPreview, categories, ccRecipients, changeKey, conversationId, createdDateTime, flag, from, hasAttachments, importance, inferenceClassification, internetMessageId, isDeliveryReceiptRequested, isDraft, isRead, isReadReceiptRequested, lastModifiedDateTime, parentFolderId, receivedDateTime, replyTo, sender, sentDateTime, subject, toRecipients, webLink | resource = message, operation = readAll, output = fields |
| Filters | userFilters | object | No | {} | Collection (see below) | resource = message, operation = readAll |
userFilters collection options:
| Property | Key | Type | Required | Default | Possible values | Shown when |
|---|---|---|---|---|---|---|
| Filter By | filterBy | options | No | filters | Filters (filters), Search (search) | — |
| Search | search | string | No | '' | Free-text search query | filterBy = search |
| Filters | filters | object | No | {} | Nested collection (see below) | filterBy = filters |
userFilters.filters nested collection options:
| Property | Key | Type | Required | Default | Possible values |
|---|---|---|---|---|---|
| Read Status | readStatus | options | No | unread | Unread and read messages (both), Unread messages only (unread), Read messages only (read) |
| Received After | receivedAfter | dateTime | No | '' | ISO date string or millisecond timestamp |
| Received Before | receivedBefore | dateTime | No | '' | ISO date string or millisecond timestamp |
| Sender | sender | string | No | '' | Sender name or email |
Notes
- Requires a Microsoft Outlook credential; the credential ID is read from
credentials.idand resolved to a bearer token. A missing token raisesWorkflow error, credentials missing. - All requests target Microsoft Graph at
https://graph.microsoft.com/v1.0/me<resource>withAuthorization: Bearer <token>. - Send calls
POST /sendMailwith{ message, saveToSentItems }.bodyContentdefaults to a single space when empty. Recipient strings (toRecipients,ccRecipients,bccRecipients,replyTo) are split on commas and converted to Graph recipient objects ({ emailAddress: { address } }); body is wrapped as{ contentType: bodyContentType, content: bodyContent }.saveToSentItemsdefaults totrue. Output:{ success: true }. - Read All calls
GET /messageswith query params:output = simple→$select=id,conversationId,subject,bodyPreview,from,toRecipients,categories,hasAttachments.output = fields→$selectis the comma-joined selectedfields.output = raw→ no$select(full message objects).filterBy = search→$search="<query>".filterBy = filters→ builds$filterfrom sender (from/emailAddress/addressorfrom/emailAddress/name),readStatus(isRead eq true|false, omitted whenboth),receivedAfter(receivedDateTime ge …),receivedBefore(receivedDateTime le …), joined withand.$topis set fromlimit(default 100).- Output:
{ success: true, data: result.value ?? result }.
- On error the handler throws
Microsoft API request failed (<status>): <message>.