Overview
Enable your agents to access and manage Outlook emails, calendar events, and contacts. Send emails, retrieve messages, manage calendar events, and organize contacts with AI-powered automation.Prerequisites
Before using the Microsoft Outlook integration, ensure you have:- A CrewAI AMP account with an active subscription
- A Microsoft account with Outlook access
- Connected your Microsoft account through the Integrations page
Setting Up Microsoft Outlook Integration
1. Connect Your Microsoft Account
- Navigate to CrewAI AMP Integrations
- Find Microsoft Outlook in the Authentication Integrations section
- Click Connect and complete the OAuth flow
- Grant the necessary permissions for mail, calendar, and contact access
- Copy your Enterprise Token from Integration Settings
2. Install Required Package
Available Actions
microsoft_outlook/get_messages
microsoft_outlook/get_messages
Description: Get email messages from the user’s mailbox.Parameters:
top
(integer, optional): Number of messages to retrieve (max 1000). Default is10
.filter
(string, optional): OData filter expression (e.g., “isRead eq false”).search
(string, optional): Search query string.orderby
(string, optional): Order by field (e.g., “receivedDateTime desc”). Default is “receivedDateTime desc”.select
(string, optional): Select specific properties to return.expand
(string, optional): Expand related resources inline.
microsoft_outlook/send_email
microsoft_outlook/send_email
Description: Send an email message.Parameters:
to_recipients
(array, required): Array of recipient email addresses.cc_recipients
(array, optional): Array of CC recipient email addresses.bcc_recipients
(array, optional): Array of BCC recipient email addresses.subject
(string, required): Email subject.body
(string, required): Email body content.body_type
(string, optional): Body content type. Enum:Text
,HTML
. Default isHTML
.importance
(string, optional): Message importance level. Enum:low
,normal
,high
. Default isnormal
.reply_to
(array, optional): Array of reply-to email addresses.save_to_sent_items
(boolean, optional): Whether to save the message to Sent Items folder. Default istrue
.
microsoft_outlook/get_calendar_events
microsoft_outlook/get_calendar_events
Description: Get calendar events from the user’s calendar.Parameters:
top
(integer, optional): Number of events to retrieve (max 1000). Default is10
.skip
(integer, optional): Number of events to skip. Default is0
.filter
(string, optional): OData filter expression (e.g., “start/dateTime ge ‘2024-01-01T00:00:00Z’”).orderby
(string, optional): Order by field (e.g., “start/dateTime asc”). Default is “start/dateTime asc”.
microsoft_outlook/create_calendar_event
microsoft_outlook/create_calendar_event
Description: Create a new calendar event.Parameters:
subject
(string, required): Event subject/title.body
(string, optional): Event body/description.start_datetime
(string, required): Start date and time in ISO 8601 format (e.g., ‘2024-01-20T10:00:00’).end_datetime
(string, required): End date and time in ISO 8601 format.timezone
(string, optional): Time zone (e.g., ‘Pacific Standard Time’). Default isUTC
.location
(string, optional): Event location.attendees
(array, optional): Array of attendee email addresses.
microsoft_outlook/get_contacts
microsoft_outlook/get_contacts
Description: Get contacts from the user’s address book.Parameters:
top
(integer, optional): Number of contacts to retrieve (max 1000). Default is10
.skip
(integer, optional): Number of contacts to skip. Default is0
.filter
(string, optional): OData filter expression.orderby
(string, optional): Order by field (e.g., “displayName asc”). Default is “displayName asc”.
microsoft_outlook/create_contact
microsoft_outlook/create_contact
Description: Create a new contact in the user’s address book.Parameters:
displayName
(string, required): Contact’s display name.givenName
(string, optional): Contact’s first name.surname
(string, optional): Contact’s last name.emailAddresses
(array, optional): Array of email addresses. Each item is an object withaddress
(string) andname
(string).businessPhones
(array, optional): Array of business phone numbers.homePhones
(array, optional): Array of home phone numbers.jobTitle
(string, optional): Contact’s job title.companyName
(string, optional): Contact’s company name.
Usage Examples
Basic Microsoft Outlook Agent Setup
Email Management and Search
Calendar and Contact Management
Troubleshooting
Common Issues
Authentication Errors- Ensure your Microsoft account has the necessary permissions for mail, calendar, and contact access.
- Required scopes include:
Mail.Read
,Mail.Send
,Calendars.Read
,Calendars.ReadWrite
,Contacts.Read
,Contacts.ReadWrite
. - Verify that the OAuth connection includes all required scopes.
- Ensure
to_recipients
,subject
, andbody
are provided forsend_email
. - Check that email addresses are properly formatted.
- Verify that the account has
Mail.Send
permissions.
- Ensure
subject
,start_datetime
, andend_datetime
are provided. - Use proper ISO 8601 format for datetime fields (e.g., ‘2024-01-20T10:00:00’).
- Verify timezone settings if events appear at incorrect times.
- For
create_contact
, ensuredisplayName
is provided as it’s required. - When providing
emailAddresses
, use the proper object format withaddress
andname
properties.
- Use proper OData syntax for
filter
parameters. - For date filters, use ISO 8601 format (e.g., “receivedDateTime ge ‘2024-01-01T00:00:00Z’”).
Getting Help
Need Help?
Contact our support team for assistance with Microsoft Outlook integration setup or troubleshooting.