Connect Outlook to Definable AI

Outlook is Microsoft's email and calendaring platform integrating contacts and scheduling, enabling users to manage communications and events in a unified workspace

About Outlook

Outlook is a productivity tool. Connect it to Definable AI with one-click OAuth2 — no API keys or custom code required.

What you can automate with Outlook

Use Definable AI's agent platform to trigger workflows from Outlook, process results with 50+ AI models, and sync data across 900+ connected apps.

Tools & Actions (64 available)

  • Add event attachment: Adds an attachment to a specific Outlook calendar event. Use when you need to attach a file or nested item to an existing event.
  • Add mail attachment: Tool to add an attachment to an email message. Use when you have a message ID and need to attach a small (<3 MB) file or reference.
  • Batch move messages: Batch-move up to 20 Outlook messages to a destination folder in a single Microsoft Graph $batch call. Use when moving multiple messages to avoid per-message move API calls.
  • Batch update messages: Batch-update up to 20 Outlook messages per call using Microsoft Graph JSON batching. Use when marking multiple messages read/unread or updating other properties to avoid per-message PATCH calls.
  • Create Calendar Event: Creates a new Outlook calendar event, ensuring `start_datetime` is chronologically before `end_datetime`.
  • Create Email Rule: Create email rule filter with conditions and actions
  • Create a draft reply: Creates a draft reply in the specified user's Outlook mailbox to an existing message (identified by a valid `message_id`), optionally including a `comment` and CC/BCC recipients.
  • Create attachment upload session: Tool to create an upload session for large (>3 MB) message attachments. Use when you need to upload attachments in chunks.
  • Create calendar: Tool to create a new calendar in the signed-in user's mailbox. Use when organizing events into a separate calendar.
  • Create contact: Creates a new contact in a Microsoft Outlook user's contacts folder.
  • Create contact folder: Tool to create a new contact folder in the user's mailbox. Use when needing to organize contacts into custom folders.
  • Create email draft: Creates a new Outlook email draft with subject, body, recipients, and an optional attachment. This action creates a standalone draft for new conversations. To create a draft reply to an existing conversation/message, use the OUTLOOK_CREATE_DRAFT_REPLY action instead.
  • Create mail folder: Tool to create a new mail folder. Use when you need to organize email into a new folder.
  • Create master category: Tool to create a new category in the user's master category list. Use after selecting a unique display name.
  • Decline calendar event: Tool to decline an invitation to a calendar event. Use when the user wants to decline a meeting or event invitation. The API returns 202 Accepted with no content on success.
  • Delete Calendar Event: Deletes an existing calendar event, identified by its unique `event_id`, from a specified user's Microsoft Outlook calendar. For meetings, the API automatically sends cancellation notifications to attendees (use the cancel endpoint if you need to include a custom message).
  • Delete Contact: Permanently deletes an existing contact, using its `contact_id` (obtainable via 'List User Contacts' or 'Get Contact'), from the Outlook contacts of the user specified by `user_id`.
  • Delete Email Rule: Delete an email rule
  • Delete Message: Tool to permanently delete an Outlook email message by its message_id. Use when removing unwanted messages, cleaning up drafts, or performing mailbox maintenance.
  • Delete mail folder: Delete a mail folder from the user's mailbox. Use when you need to remove an existing mail folder.
  • Delete master category: Tool to delete a category from the user's master category list. Use when removing unused or obsolete categories from the mailbox.
  • Download Outlook attachment: Downloads a specific file attachment from an email message in a Microsoft Outlook mailbox; the attachment must contain 'contentBytes' (binary data) and not be a link or embedded item.
  • Find Meeting Times: Suggests meeting times based on organizer and attendee availability, time constraints, and duration requirements. Use when you need to find optimal meeting slots across multiple participants' schedules.
  • Forward message: Tool to forward a message. Use when you need to send an existing email to new recipients.
  • Get Calendar View: Get events ACTIVE during a time window (includes multi-day events). Use for "what's on my calendar today/this week" or availability checks. Returns events overlapping the time range. For keyword search or filters by category, use OUTLOOK_LIST_EVENTS instead.
  • Get Outlook profile: Retrieves the Microsoft Outlook profile for a specified user.
  • Get calendar event: Retrieves the full details of a specific calendar event by its ID from a user's Outlook calendar, provided the event exists.
  • Get contact: Retrieves a specific Outlook contact by its `contact_id` from the contacts of a specified `user_id` (defaults to 'me' for the authenticated user).
  • Get contact folders: Tool to retrieve a list of contact folders in the signed-in user's mailbox. Use after authentication when you need to browse or select among contact folders.
  • Get email message: Retrieves a specific email message by its ID from the specified user's Outlook mailbox. Use the 'select' parameter to include specific fields like 'internetMessageHeaders' for filtering automated emails.
  • Get mail delta: Retrieve incremental changes (delta) of messages in a mailbox. FIRST RUN: Returns ALL messages in folder (use top=50 to limit). Response has @odata.deltaLink. SUBSEQUENT: Pass stored deltaLink to get only NEW/UPDATED/DELETED messages since last sync. Properties available: id, subject, from, receivedDateTime, isRead, etc. NOT available: internetMessageHeaders, full body, attachment content (response size limits).
  • Get mail tips: Tool to retrieve mail tips such as automatic replies and mailbox full status. Use when you need to check recipient status before sending mail.
  • Get mailbox settings: Tool to retrieve mailbox settings. Use when you need to view settings such as automatic replies, time zone, and working hours for the signed-in or specified user.
  • Get master categories: Tool to retrieve the user's master category list. Use when you need to get all categories defined for the user.
  • Get schedule: Retrieves free/busy schedule information for specified email addresses within a defined time window.
  • Get supported languages: Tool to retrieve supported languages in the user's mailbox. Use when you need to display or select from available mailbox languages.
  • Get supported time zones: Tool to retrieve supported time zones in the user's mailbox. Use when you need a list of time zones to display or choose from for event scheduling.
  • List Email Rules: List all email rules from inbox
  • List Messages: Retrieves a list of email messages from a specified mail folder in an Outlook mailbox, with options for filtering (including by conversationId to get all messages in a thread), pagination, and sorting; ensure 'user_id' and 'folder' are valid, and all date/time strings are in ISO 8601 format.
  • List Outlook attachments: Lists metadata (like name, size, and type, but not `contentBytes`) for all attachments of a specified Outlook email message.
  • List Outlook calendars: Tool to list calendars in the signed-in user's mailbox. Use when you need to retrieve calendars with optional OData queries.
  • List Outlook contacts: Retrieves a user's Microsoft Outlook contacts, from the default or a specified contact folder.
  • List Teams chats: Tool to list Teams chats. Use when you need chat IDs and topics to select a chat for further actions.
  • List chat messages: Tool to list messages in a Teams chat. Use when you need message IDs to select a specific message for further actions.
  • List child mail folders: Tool to list subfolders (childFolders) under a specified Outlook mail folder. Use when navigating nested folder hierarchies or checking if a folder has subfolders.
  • List event attachments: Tool to list attachments for a specific Outlook calendar event. Use when you have an event ID and need to view its attachments.
  • List event reminders: Tool to retrieve reminders for events occurring within a specified time range. Use when you need to see upcoming reminders between two datetimes.
  • List events: Retrieves events from a user's Outlook calendar via Microsoft Graph API. Supports primary/secondary/shared calendars, pagination, filtering, property selection, sorting, and timezone specification. Use calendar_id to access non-primary calendars.
  • List mail folder messages: Tool to list messages from a specific mail folder including subfolders. Use when you need to retrieve messages from a particular folder or subfolder by its ID or well-known name.
  • List mail folders: Tool to list a user's top-level mail folders. Use when you need folders like Inbox, Drafts, Sent Items; set include_hidden_folders=True to include hidden folders.
  • List users: Tool to list users in Microsoft Entra ID. Use when you need to retrieve a paginated list of users, optionally filtering or selecting specific properties.
  • Move message to folder: Move a message to another folder within the specified user's mailbox. This creates a new copy of the message in the destination folder and removes the original message.
  • Permanently Delete Message: Permanently deletes an Outlook message by moving it to the Purges folder in the dumpster. Unlike standard DELETE, this action makes the message unrecoverable by the user. IMPORTANT: This is NOT the same as DELETE - permanentDelete is irreversible and availability differs by national cloud deployments (not available in US Government L4, L5 (DOD), or China (21Vianet)).
  • Pin message: Tool to pin a message in an Outlook chat. Use when you want to mark an important message for quick access.
  • Query Emails: Query Outlook emails within a SINGLE folder using OData filters. Build precise server-side filters for dates, read status, importance, subjects, attachments, and conversations. Best for structured queries on message metadata within a specific folder. Returns up to 100 messages per request with pagination support. • Searches SINGLE folder only (inbox, sentitems, etc.) - NOT across all folders • For cross-folder/mailbox-wide search: Use OUTLOOK_SEARCH_MESSAGES • Server-side filters: dates, importance, isRead, hasAttachments, subjects, conversationId • CRITICAL: Always check response['@odata.nextLink'] for pagination • Limitations: Recipient/body filtering requires OUTLOOK_SEARCH_MESSAGES
  • Reply to Email: Sends a plain text reply to an Outlook email message, identified by `message_id`, allowing optional CC and BCC recipients.
  • Search Outlook messages: Search Outlook messages using powerful KQL syntax. Supports sender (from:), recipient (to:, cc:), subject, date filters (received:, sent:), attachments, and boolean logic. Only works with Microsoft 365/Enterprise accounts (no @hotmail.com/@outlook.com). Examples: 'from:[email protected] AND received>=2025-10-01', 'to:[email protected] AND subject:invoice', 'received>today-30 AND hasattachment:yes'
  • Send draft: Tool to send an existing draft message. Use after creating a draft when you want to deliver it to recipients immediately. Example: Send a draft message with ID 'AAMkAG…'.
  • Send email: Sends an email with subject, body, recipients, and an optional attachment via Microsoft Graph API. Supports comma-separated email addresses in the to_email field for multiple recipients. Attachments require a non-empty file with valid name and mimetype.
  • Update Contact: Updates an existing Outlook contact, identified by `contact_id` for the specified `user_id`, requiring at least one other field to be modified.
  • Update Email Rule: Update an existing email rule
  • Update calendar event: Updates specified fields of an existing Outlook calendar event. Implementation note: To avoid unintentionally clearing properties, the action first fetches the existing event, merges only the provided fields, and then PATCHes the merged updates. Unspecified fields remain unchanged.
  • Update email message: Updates specified properties of an existing email message; `message_id` must identify a valid message within the specified `user_id`'s mailbox.
  • Update mailbox settings: Tool to update mailbox settings for the signed-in user. Use when you need to configure automatic replies, default time zone, language, or working hours. Example: schedule automatic replies for vacation.

How to connect Outlook

  1. Sign in to Definable AI and go to Apps
  2. Search for Outlook and click Connect
  3. Authorize via OAuth2 — takes under 30 seconds
  4. Use Outlook actions in your AI agents and workflows