Overview
Add Microsoft Outlook to any ModuleX agent or workflow. Send, draft, search, and organize email; manage contacts, folders, and categories in Microsoft Outlook via Microsoft Graph (graph.microsoft.com/v1.0). Uses delegated permissions on behalf of an authenticated Microsoft 365 user.
Authentication
OAuth2 Authentication
Connect with your Microsoft account using OAuth 2.0 against the Microsoft identity platform.Step 1
Step 2
Step 3
Step 4
Step 5
Required Credentials
OAuth Configuration
- Authorization URL:
https://login.microsoftonline.com/common/oauth2/v2.0/authorize - Token URL:
https://login.microsoftonline.com/common/oauth2/v2.0/token - Scopes:
offline_access,User.Read,User.ReadBasic.All,Mail.ReadWrite,Mail.Send,MailboxSettings.Read,Contacts.ReadWrite
Available Actions
add_label_to_email — Adds a label/category to an email in Microsoft Outlook.
add_label_to_email — Adds a label/category to an email in Microsoft Outlook.
approve_workflow — Send an email containing approve/cancel URLs to a recipient so they can resume or cancel a workflow externally. The caller (workflow engine) is responsible for generating the resume/cancel URLs and passing them in.
approve_workflow — Send an email containing approve/cancel URLs to a recipient so they can resume or cancel a workflow externally. The caller (workflow engine) is responsible for generating the resume/cancel URLs and passing them in.
Parameters
Response
create_contact — Add a contact to the root Contacts folder.
create_contact — Add a contact to the root Contacts folder.
Parameters
Response
create_draft_email — Create a draft email.
create_draft_email — Create a draft email.
Parameters
text)Response
create_draft_reply — Create a draft reply to an email.
create_draft_reply — Create a draft reply to an email.
Parameters
Response
download_attachment — Downloads an attachment from a message and returns it as base64-encoded content with metadata.
download_attachment — Downloads an attachment from a message and returns it as base64-encoded content with metadata.
find_contacts — Finds contacts with the given search string.
find_contacts — Finds contacts with the given search string.
find_email — Search for an email in Microsoft Outlook. $search cannot be combined with $filter or $orderby.
find_email — Search for an email in Microsoft Outlook. $search cannot be combined with $filter or $orderby.
Parameters
100)false)Response
get_current_user — Returns the authenticated Microsoft user's ID, display name, email, and principal name via Microsoft Graph. Call this first when the user says 'my emails', 'my inbox', or needs identity context.
get_current_user — Returns the authenticated Microsoft user's ID, display name, email, and principal name via Microsoft Graph. Call this first when the user says 'my emails', 'my inbox', or needs identity context.
Response
get_message — Retrieve a single email message by its Microsoft Graph message ID.
get_message — Retrieve a single email message by its Microsoft Graph message ID.
list_contacts — Get a contact collection from the default contacts folder.
list_contacts — Get a contact collection from the default contacts folder.
list_folders — Retrieves a list of mail folders in Microsoft Outlook.
list_folders — Retrieves a list of mail folders in Microsoft Outlook.
list_important_mail — Get the most important mail from the user's Inbox (filters by high importance or flagged status).
list_important_mail — Get the most important mail from the user's Inbox (filters by high importance or flagged status).
list_labels — Get all the labels/categories that have been defined for a user.
list_labels — Get all the labels/categories that have been defined for a user.
move_email_to_folder — Moves an email to the specified folder.
move_email_to_folder — Moves an email to the specified folder.
remove_label_from_email — Removes a label/category from an email.
remove_label_from_email — Removes a label/category from an email.
send_email — Send an email to one or multiple recipients.
send_email — Send an email to one or multiple recipients.
Parameters
text)Response
update_contact — Update an existing contact.
update_contact — Update an existing contact.
Parameters
Response
Limits & Quotas
- Microsoft Graph throttles per-app and per-mailbox. Mail endpoints allow approximately 10,000 requests per 10 minutes per app per mailbox; consult Microsoft’s throttling guidance for exact tiers.
- Search uses Microsoft Graph KQL semantics; combining
searchwithfilterororder_byis rejected by Microsoft Graph and short-circuited locally with asuccess=Falseerror. - Attachments are accepted as URLs only; the integration fetches each URL and base64-encodes the bytes for Microsoft Graph’s
fileAttachmentpayload.download_attachmentreturns base64-encoded bytes rather than writing files to disk. - The
approve_workflowaction does not internally suspend a workflow; the caller must supply bothresume_urlandcancel_url. The action only sends the approval email. - Error model: non-2xx responses are caught and returned as
success=False+error; the calling agent can retry or surface the error.