Skip to content
Talk to an Engineer Dashboard

Outlook

Connect to Microsoft Outlook. Manage emails, calendar events, contacts, and tasks

Connect to Microsoft Outlook. Manage emails, calendar events, contacts, and tasks

Outlook logo

Supports authentication: OAuth 2.0

Create a new calendar event in the user’s Outlook calendar. Supports attendees, recurrence, reminders, online meetings, multiple locations, and event properties.

NameTypeRequiredDescription
subjectstringYesEvent title/summary
start_datetimestringYesEvent start time in RFC3339 format (e.g. 2026-01-27T14:00:00)
start_timezonestringYesTimezone for the start time (e.g. UTC)
end_datetimestringYesEvent end time in RFC3339 format (e.g. 2026-01-27T15:00:00)
end_timezonestringYesTimezone for the end time (e.g. UTC)
attendees_requiredstringNoComma-separated email addresses for required attendees
attendees_optionalstringNoComma-separated email addresses for optional attendees
attendees_resourcestringNoComma-separated email addresses for resources (meeting rooms, equipment)
body_contentstringNoEvent description/body content
body_contentTypestringNoContent type of the body: HTML or Text
hideAttendeesbooleanNoWhen true, each attendee only sees themselves in the attendee list
importancestringNoEvent importance level: low, normal, or high
isAllDaybooleanNoMark as all-day event
isOnlineMeetingbooleanNoCreate an online meeting (Teams/Skype)
isReminderOnbooleanNoEnable or disable reminder (default: true)
locationstringNoPhysical or virtual location display name
locationsstringNoJSON array of location objects with displayName, address, and coordinates
onlineMeetingProviderstringNoOnline meeting provider: teamsForBusiness, skypeForBusiness, or skypeForConsumer
recurrence_typestringNoRecurrence pattern type: daily, weekly, monthly, or yearly
recurrence_intervalintegerNoHow often the event recurs (e.g. 2 for every 2 weeks)
recurrence_days_of_weekstringNoComma-separated days for weekly recurrence (e.g. monday,wednesday,friday)
recurrence_range_typestringNoHow the recurrence ends: endDate, noEnd, or numbered
recurrence_start_datestringNoStart date for recurrence in YYYY-MM-DD format
recurrence_end_datestringNoEnd date for recurrence in YYYY-MM-DD format (required when recurrence_range_type is endDate)
recurrence_occurrencesintegerNoNumber of occurrences (required when recurrence_range_type is numbered)
reminderMinutesBeforeStartintegerNoMinutes before event start to show reminder (default: 15)
sensitivitystringNoEvent sensitivity/privacy level: normal, personal, private, or confidential
showAsstringNoFree/busy status: free, tentative, busy, oof, or workingElsewhere

Update an existing Outlook calendar event. Only provided fields will be updated. Supports time, attendees, location, reminders, online meetings, recurrence, and event properties.

NameTypeRequiredDescription
event_idstringYesThe ID of the calendar event to update
subjectstringNoEvent title/summary
start_datetimestringNoEvent start time in RFC3339 format (e.g. 2026-01-27T09:00:00)
start_timezonestringNoTimezone for the start time
end_datetimestringNoEvent end time in RFC3339 format (e.g. 2026-01-27T10:00:00)
end_timezonestringNoTimezone for the end time
attendees_requiredstringNoComma-separated required attendee emails
attendees_optionalstringNoComma-separated optional attendee emails
attendees_resourcestringNoComma-separated resource emails (meeting rooms, equipment)
body_contentstringNoEvent description/body
body_contentTypestringNoContent type of body: HTML or Text
categoriesstringNoComma-separated categories to tag the event
hideAttendeesbooleanNoWhen true, each attendee only sees themselves
importancestringNoEvent importance level: low, normal, or high
isAllDaybooleanNoMark as all-day event
isOnlineMeetingbooleanNoCreate an online meeting (Teams/Skype)
isReminderOnbooleanNoEnable or disable reminder
locationstringNoPhysical or virtual location
locationsstringNoJSON array of location objects with displayName, address, and coordinates
onlineMeetingProviderstringNoOnline meeting provider: teamsForBusiness, skypeForBusiness, or skypeForConsumer
recurrence_typestringNoRecurrence pattern type: daily, weekly, monthly, or yearly
recurrence_intervalintegerNoHow often the event recurs (e.g. 2 for every 2 weeks)
recurrence_days_of_weekstringNoComma-separated days for weekly recurrence (e.g. monday,wednesday,friday)
recurrence_range_typestringNoHow the recurrence ends: endDate, noEnd, or numbered
recurrence_start_datestringNoStart date for recurrence in YYYY-MM-DD format
recurrence_end_datestringNoEnd date for recurrence in YYYY-MM-DD format
recurrence_occurrencesintegerNoNumber of occurrences
reminderMinutesBeforeStartintegerNoMinutes before event start to show reminder
sensitivitystringNoEvent sensitivity/privacy level: normal, personal, private, or confidential
showAsstringNoFree/busy status: free, tentative, busy, oof, or workingElsewhere

Retrieve an existing calendar event by ID from the user’s Outlook calendar.

NameTypeRequiredDescription
event_idstringYesThe ID of the calendar event to retrieve

List calendar events from the user’s Outlook calendar with filtering, sorting, pagination, and field selection.

NameTypeRequiredDescription
filterstringNoOData filter expression to filter events (e.g. startsWith(subject,'Meeting'))
orderbystringNoOData orderby expression to sort events (e.g. start/dateTime desc)
selectstringNoComma-separated list of properties to include in the response (e.g. subject,start,end,location)
topnumberNoMaximum number of events to return
skipnumberNoNumber of events to skip for pagination

Delete a calendar event by ID.

NameTypeRequiredDescription
event_idstringYesThe ID of the calendar event to delete

Send an email message. The message is saved in the Sent Items folder by default.

NameTypeRequiredDescription
subjectstringYesSubject line of the email
bodystringYesBody content of the email
toRecipientsarray<string>YesArray of recipient email addresses
bodyTypestringNoContent type of the body: Text or HTML
ccRecipientsarray<string>NoArray of email addresses to CC
bccRecipientsarray<string>NoArray of email addresses to BCC
saveToSentItemsbooleanNoSave the message in Sent Items folder (default: true)

Reply to an existing email message. The reply is automatically sent to the original sender and saved in the Sent Items folder.

NameTypeRequiredDescription
messageIdstringYesThe unique identifier of the message to reply to
commentstringYesReply message content

List all messages in the user’s mailbox with support for filtering, pagination, and field selection. Returns 10 messages by default.

NameTypeRequiredDescription
$filterstringNoOData filter expression to narrow results (e.g. isRead eq false)
$orderbystringNoProperty to sort by (e.g. receivedDateTime desc)
$selectstringNoComma-separated list of properties to return (e.g. subject,from,receivedDateTime)
$topintegerNoNumber of messages to return, 1–1000 (default: 10)
$skipintegerNoNumber of messages to skip for pagination

Search messages by keywords across subject, body, sender, and other fields.

NameTypeRequiredDescription
querystringYesSearch query string (searches across subject, body, from, to)
$selectstringNoComma-separated list of properties to return (e.g. subject,from,receivedDateTime)
$topintegerNoNumber of messages to return, 1–1000 (default: 10)
$skipintegerNoNumber of messages to skip for pagination

Create a new contact in the user’s mailbox.

NameTypeRequiredDescription
givenNamestringYesFirst name of the contact
surnamestringYesLast name of the contact
emailAddressesarray<object>NoArray of email address objects with address and optional name fields
businessPhonesarray<string>NoArray of business phone numbers
mobilePhonestringNoMobile phone number
jobTitlestringNoJob title
companyNamestringNoCompany name

List all contacts in the user’s mailbox with support for filtering, pagination, and field selection.

NameTypeRequiredDescription
$filterstringNoOData filter expression to narrow results (e.g. emailAddresses/any(a:a/address eq 'user@example.com'))
$orderbystringNoProperty to sort by (e.g. displayName)
$selectstringNoComma-separated list of properties to return (e.g. displayName,emailAddresses,phoneNumbers)
$topintegerNoNumber of contacts to return (default: 10)
$skipintegerNoNumber of contacts to skip for pagination