Skip to main content
Microsoft Outlook is a comprehensive email and calendar management platform used by millions of professionals worldwide. With Relevance AI’s Outlook integration, you can seamlessly connect your Outlook account to your AI agents, enabling them to manage emails, calendar events, contacts, and more, making your communication workflows more efficient and intelligent.
The Outlook integration in Relevance AI was built by Relevance AI, and is therefore supported by our team, not Microsoft. If you have a question or issue with using Outlook in Relevance AI, please reach out to our support team. If you have a question or issue that is only about Outlook, you can reach out to Microsoft support.

Connect the integration

Connecting your Outlook account to Relevance AI is a straightforward process:
  1. Go to the “Integrations & API Keys” page in the sidebar of your Relevance AI dashboard.
  2. Click on “Outlook” from the available integrations.
  3. Click on the “Add Integration” button.
  4. In the pop-up window, sign into your Microsoft account.
  5. Grant the necessary permissions for Relevance AI to access your Outlook data.
  6. Once authenticated, your Outlook account will appear as a connected integration.
After connecting, you can use Outlook as a trigger for your agents to automatically respond to incoming emails, or use Outlook tool steps in your custom tools to manage emails, calendar events, and contacts.

Tool steps for Outlook

The Outlook integration provides a comprehensive set of actions that your agents can use to interact with your emails, calendar, and contacts. These actions can be incorporated into your agent’s workflows as tool steps, enabling sophisticated communication automation capabilities.

Email Management

Find Email

Search for specific emails in your mailbox

List Folders

Retrieve all email folders in your account

List Labels

Get all email labels/categories

Add Label

Add a label or category to an email

Remove Label

Remove a label or category from an email

Move Email to Folder

Move an email to a different folder

Send Email

Send an email from your Outlook account

Calendar Management

Check Availability

Check if a time slot is available

Create Event

Create a new calendar event

Delete Event

Delete an existing calendar event

List Events

List calendar events within a date range

Update Event

Update an existing calendar event

Get Free/Busy Schedule

Retrieve free/busy schedule information

Contact Management

Create Contact

Create a new contact in your address book

Find Contact

Search for a specific contact

List Contacts

List all contacts in your address book

Update Contact

Update an existing contact’s information

Advanced Operations

Microsoft Outlook API Call

Make custom API calls to Microsoft Graph API
Type “Outlook” in the tool step search bar to see all available Outlook actions when building your tools.

Use the integration’s API tool step (Advanced)

In addition to the pre-built actions available in the tool directory, you can build custom tools that perform Outlook-specific activities using the Microsoft Outlook API Call tool step. This gives you access to the full Microsoft Graph API for advanced email, calendar, and contact operations.

How to use the Microsoft Outlook API Call tool step

1

Create a new tool

Create a new tool in Relevance AI or open an existing tool you want to add Outlook functionality to.
2

Add the Microsoft Outlook API Call tool step

  1. Scroll down to Tool-steps
  2. Search for “Microsoft Outlook API Call” in the tool step search bar
  3. Add the Microsoft Outlook API Call tool step to your workflow
3

Select your Outlook account

Select your connected Outlook account from the dropdown menu.
4

Configure the API endpoint

Configure the API endpoint, method, and parameters according to your needs:
  • Method: Select the HTTP method (GET, POST, PUT, DELETE, PATCH)
  • Endpoint: Enter the API endpoint path (e.g., /me/messages, /me/calendar/events)
  • Body: Add any required request body data
  • Headers: Add any custom headers if needed
5

Test your API call

Test your configuration to ensure it works correctly before deploying.

Example: Creating a Calendar Event with Custom Properties

Here’s a practical example of using the Microsoft Outlook API Call tool step to create a calendar event with custom properties: API Endpoint: POST /me/calendar/events Configuration:
{
  "method": "POST",
  "endpoint": "/me/calendar/events",
  "body": {
    "subject": "Team Sync Meeting",
    "body": {
      "contentType": "HTML",
      "content": "Discuss Q4 objectives and team priorities"
    },
    "start": {
      "dateTime": "2024-12-01T14:00:00",
      "timeZone": "Pacific Standard Time"
    },
    "end": {
      "dateTime": "2024-12-01T15:00:00",
      "timeZone": "Pacific Standard Time"
    },
    "location": {
      "displayName": "Conference Room A"
    },
    "attendees": [
      {
        "emailAddress": {
          "address": "colleague@example.com",
          "name": "Colleague Name"
        },
        "type": "required"
      }
    ]
  }
}
This configuration:
  • Uses the POST method to create a new event
  • Specifies the event details including subject, body, and location
  • Sets the start and end times with timezone information
  • Adds attendees to the meeting
You can find Microsoft Graph API’s complete documentation at https://learn.microsoft.com/en-us/graph/api/overview.

Common Microsoft Graph API Endpoints for Outlook

Here are some commonly used Microsoft Graph API endpoints you can use with the API Call tool step:
  • List messages: GET /me/messages
  • Get message: GET /me/messages/{id}
  • Send email: POST /me/sendMail
  • Reply to email: POST /me/messages/{id}/reply
  • Forward email: POST /me/messages/{id}/forward
  • Delete email: DELETE /me/messages/{id}
  • Mark as read: PATCH /me/messages/{id} with {"isRead": true}
View API Documentation
  • List events: GET /me/calendar/events
  • Get event: GET /me/events/{id}
  • Create event: POST /me/calendar/events
  • Update event: PATCH /me/events/{id}
  • Delete event: DELETE /me/events/{id}
  • Get schedule: POST /me/calendar/getSchedule
View API Documentation
  • List contacts: GET /me/contacts
  • Get contact: GET /me/contacts/{id}
  • Create contact: POST /me/contacts
  • Update contact: PATCH /me/contacts/{id}
  • Delete contact: DELETE /me/contacts/{id}
View API Documentation
  • List folders: GET /me/mailFolders
  • Get folder: GET /me/mailFolders/{id}
  • Create folder: POST /me/mailFolders
  • Move message: POST /me/messages/{id}/move
  • Copy message: POST /me/messages/{id}/copy
View API Documentation
  • Search messages: GET /me/messages?$search="subject:meeting"
  • Filter messages: GET /me/messages?$filter=from/emailAddress/address eq 'user@example.com'
  • Order results: GET /me/messages?$orderby=receivedDateTime desc
  • Select fields: GET /me/messages?$select=subject,from,receivedDateTime
View API Documentation
Use the $filter, $search, $orderby, and $select query parameters to refine your API calls and retrieve exactly the data you need.

Set up Outlook as a trigger

You can configure your agents to automatically respond to incoming Outlook emails by setting up Outlook as a trigger.

How to set up the Outlook trigger

1

Open agent settings

Navigate to your agent’s settings page.
2

Add Outlook trigger

  1. Click on “Integrations & API Keys” in the sidebar
  2. Under “Triggers”, click on the Outlook button
  3. Select your connected Outlook account
3

Configure email filters (optional)

Choose whether to filter emails that trigger your agent. Without a search filter, your agent will receive every email sent to your connected account.You can use Microsoft Graph search query syntax to filter emails:
  • subject:ask us anything - Subject contains “ask us anything”
  • body:book a demo - Body contains “book a demo”
  • from:*apple.com - Only emails from apple.com domain
  • hasAttachments:true - Only emails with attachments
  • received:07/23/2018 - Only emails received on this date
View full search syntax documentation
4

Create a response tool

Build a tool that uses the “Send Email (Outlook)” tool step to respond to emails. Equip your agent with this tool in the agent settings.
5

Configure tool permissions

Set the tool permissions to “approval mode” initially so your agent asks for permission before sending emails. Switch to autopilot once you’re confident in the responses.
6

Write agent instructions

In the “Core Instructions” section of your agent settings, write a prompt that guides your agent on how to respond to emails.
It can take up to 30 minutes for the first email to come through after setting up the trigger.

Example use cases

Here are some ways you can leverage the Outlook integration with your agents:
Create an agent that automatically responds to customer support emails, categorizes inquiries, searches your knowledge base for relevant information, and provides helpful responses. The agent can escalate complex issues to human team members and track response times.
Build an agent that manages your calendar by finding available time slots, scheduling meetings with attendees, sending calendar invites, and handling rescheduling requests. The agent can check multiple calendars for conflicts and suggest optimal meeting times.
Deploy an agent that automatically organizes incoming emails by moving them to appropriate folders, adding labels based on content, flagging urgent messages, and archiving newsletters or promotional emails according to your preferences.
Create an agent that qualifies leads from incoming emails, extracts key information (company size, budget, timeline), updates your CRM, and schedules follow-up calls with qualified prospects while sending polite responses to unqualified leads.
Build an agent that sends meeting summaries and action items to attendees after calendar events, tracks follow-up tasks, and sends reminders for pending action items. The agent can integrate with your project management tools.
Deploy an agent that manages your email newsletter by collecting subscriber information, organizing contact lists, scheduling newsletter sends, and tracking engagement metrics like open rates and click-throughs.
Create an agent that handles emails while you’re away by sending personalized auto-responses, forwarding urgent messages to colleagues, categorizing emails for later review, and scheduling follow-ups for when you return.
Build an agent that automatically processes invoices and receipts received via email, extracts key information (amount, date, vendor), saves attachments to cloud storage, and updates your accounting system or expense tracking tools.
Deploy an agent that handles event registrations via email, confirms attendance, sends calendar invites with event details, manages waitlists, and sends reminder emails before the event.
Create an agent that keeps your contacts synchronized across platforms, enriches contact information from email signatures, updates contact details when changes are detected, and removes duplicate entries.

Frequently asked questions (FAQs)

This issue occurs because new Microsoft Teams scopes have been added to the Outlook integration (OnlineMeetingTranscript.Read.All and MailBoxSettings.Read).Solution: Update the permission type filter to select the Microsoft Teams option. This will allow you to see and select your Outlook account that now includes the expanded Microsoft Teams permissions.If you continue to experience issues, try reconnecting your Outlook account through the Integrations & API Keys page to ensure all the latest permissions are granted.
The integration requires permissions to read and write emails, manage calendar events, access contacts, and read mailbox settings. This includes Microsoft Teams scopes for meeting transcripts and mailbox settings. You can review the specific permissions during the authentication process.
After setting up the Outlook trigger, it can take up to 30 minutes for the first email to come through to your agent. Subsequent emails should be processed more quickly, typically within a few minutes.
Yes! You can use Microsoft Graph search query syntax to filter emails. For example:
  • Filter by subject: subject:customer inquiry
  • Filter by sender: from:*company.com
  • Filter by attachments: hasAttachments:true
  • Combine filters: subject:urgent AND from:*vip.com
View full search syntax documentation
Yes, you can connect multiple Outlook accounts through the Integrations & API Keys page. When building tools or setting up triggers, you can select which account to use from the dropdown menu. This is useful for managing different email addresses or separating personal and business communications.
Set your email-sending tools to “approval mode” in the agent settings. This ensures your agent will always ask for permission before sending an email. You can review the draft, make edits if needed, and then approve or reject the send action.
Yes, if you have the appropriate permissions, your agent can access shared mailboxes. You’ll need to use the Microsoft Graph API Call tool step with endpoints like /users/{userId}/messages instead of /me/messages. Make sure your connected account has delegated access to the shared mailbox.
Pre-built tool steps (like “Send Email” or “Create Event”) are designed for specific, common tasks and have simplified interfaces with guided inputs. The Microsoft Outlook API Call tool step gives you full access to Microsoft Graph API, allowing you to implement any functionality available in the API, including advanced operations not covered by pre-built steps.
Yes, Microsoft Graph API enforces rate limits. The specific limits depend on your Microsoft 365 subscription and the type of requests being made. Your agents should be designed to handle rate limiting gracefully. Microsoft typically returns a 429 Too Many Requests status code when limits are exceeded.
Yes, you can access email attachments using the Microsoft Graph API. Use the endpoint GET /me/messages/{id}/attachments to list attachments, and GET /me/messages/{id}/attachments/{attachmentId} to download specific attachments. The attachment content is returned as base64-encoded data.
To remove the Outlook integration:
  1. Open your agent settings
  2. Navigate to “Integrations & API Keys”
  3. Click the three dots menu next to your connected Outlook trigger
  4. Click “Remove”
Once removed, your agent will no longer receive emails or have access to your Outlook data. You can also disconnect the integration entirely from the main Integrations & API Keys page.
Yes! The Outlook integration works with Outlook.com, Office 365, and Microsoft 365 accounts. All these services use the same Microsoft Graph API, so the integration functions identically across all Microsoft email platforms.