For the complete documentation index, see llms.txt. This page is also available as Markdown.

Outlook

Your Toolhouse AI Worker can connect to Outlook using 301 specialized tools.

Auth Connection

This service requires an auth connection to use its tools. You can set this up in your Toolhouse dashboard under Auth Connections.

Tools (301)

Outlook Accept Event

Integration name: OUTLOOK_ACCEPT_EVENT

Accepts or tentatively accepts a calendar meeting invite on behalf of a user. Use this action when a user has received a meeting invitation and wants to indicate their attendance status (either confirmed or tentative). The organizer will receive a notification of the acceptance unless send_response is set to false.

Parameters

Parameter
Type
Required
Example
Description

comment

string

"I'll be there!"

Optional text message to include with the response, sent to the organizer.

user_id

string

"me"

The user ID or userPrincipalName of the calendar owner. If not provided, uses the authenticated user (/me).

event_id

string

"AAMkAGI2TG9tYVyGdUHg=="

The unique identifier of the calendar event to respond to.

response_type

string

"accept"

Type of response: accept to accept the invite, tentative to tentatively accept.

send_response

boolean

true

Whether to send the response to the organizer. Set to false to accept without notifying.


Outlook Add Event Attachment

Integration name: OUTLOOK_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.

Parameters

Parameter
Type
Required
Example
Description

item

object

The nested item payload; required when @odata.type is itemAttachment.

name

string

"menu.txt"

The display name of the attachment.

user_id

string

"me"

The user's email address or me for the authenticated user.

event_id

string

"AAMkAGI1AAAt9AHjAAA="

The unique opaque identifier of the calendar event (NOT an email address).

odata_type

string

Attachment type: #microsoft.graph.fileAttachment requires contentBytes; #microsoft.graph.itemAttachment requires item.

content_bytes

string

"aGVsbG8gd29ybGQ="

MUST be base64-encoded file contents (not plain text); required when @odata.type is fileAttachment.


Outlook Add Mail Attachment

Integration name: OUTLOOK_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.

Parameters

Parameter
Type
Required
Example
Description

item

object

Embedded item (e.g., message, event) for itemAttachment; must include its own @odata.type.

name

string

"report.pdf"

Display name of the attachment (e.g., file name). Required when using content_bytes. When using the attachment field, the name is automatically inferred.

user_id

string

"me"

The user's principal name or me for the authenticated user.

isInline

boolean

Set to true if the attachment should appear inline in the message body.

contentId

string

Content ID for inline attachments, used in HTML body references.

attachment

object

File to attach to the email. Either provide this field OR use content_bytes. Cannot be used together with content_bytes.

message_id

string

"AAMkAGI2TAAA="

Unique Microsoft Graph message ID (opaque string like AAMkAGI2TAAA=). NOT an email address.

odata_type

string

"#microsoft.graph.fileAttachment"

The OData type of the attachment.

contentType

string

"application/pdf"

MIME type of the attachment. Required when using content_bytes.

contentBytes

string

"SGVsbG8gd29ybGQh"

Base64-encoded content of the file attachment (max size 3 MB).

contentLocation

string

URL location or path for reference attachments.


Outlook Batch Move Messages

Integration name: OUTLOOK_BATCH_MOVE_MESSAGES

Batch-move up to 20 Outlook messages to a destination folder in a single Microsoft Graph $batch call.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

The UPN of the user whose messages to move, or me for the currently authenticated user.

message_ids

array

Array of message IDs to move. Maximum 20 items per batch.

destination_id

string

"deleteditems"

The destination folder ID, or a well-known folder name.

response_detail

string

Controls how much each move sub-request returns. minimal (default) returns 204 No Content; full returns the moved message body.


Outlook Batch Update Messages

Integration name: OUTLOOK_BATCH_UPDATE_MESSAGES

Batch-update up to 20 Outlook messages per call using Microsoft Graph JSON batching.

Parameters

Parameter
Type
Required
Example
Description

updates

array

Array of message updates to perform. Maximum 20 items per batch.

user_id

string

"me"

The UPN of the user whose messages to update, or me for the currently authenticated user.

response_detail

string

Controls how much each PATCH sub-request returns. minimal (default) or full.


Outlook Calendar Create Event

Integration name: OUTLOOK_CALENDAR_CREATE_EVENT

Creates a new Outlook calendar event, ensuring start_datetime is chronologically before end_datetime.

Parameters

Parameter
Type
Required
Example
Description

body

string

"Weekly team synchronization meeting."

The body of the event.

is_html

boolean

Specifies whether the body content is HTML.

show_as

string

"busy"

The status to show on the calendar for the duration of the event.

subject

string

"Team Sync"

The subject of the calendar event.

user_id

string

"me"

The user identifier for the calendar owner.

location

string

"Conference Room A"

The physical location of the event.

time_zone

string

"UTC"

The time zone for the start and end times of the event.

categories

array

["Project Alpha","Urgent"]

A list of category names to associate with the event.

importance

string

"low"

The importance of the event.

recurrence

object

{"range":{"type":"endDate","endDate":"2025-12-31","startDate":"2025-01-01"},"pattern":{"type":"daily","interval":1}}

The recurrence pattern and range for an event.

calendar_id

string

"AQMkADAwATM0MDAAMI05YjhkLWI3NjgtMDACLTAwCgBGAAADKjFWj6npsUCnbqW0j-afBAcAj7rsw6i8BEKl3_l14AMAUAAAAgEGAAAAj7rsw6i8BEKl3_l14AMAUAAAAEaASyEAAAA="

The ID of a specific calendar to create the event in.

end_datetime

string

"2025-01-03T11:00:00"

The end date and time of the event in ISO 8601 format.

attendees_info

array

["user@example.com","another@example.com"]

A list of attendees for the event.

start_datetime

string

"2025-01-03T10:00:00"

The start date and time of the event in ISO 8601 format.

is_online_meeting

boolean

Set to true to indicate that the event is an online meeting.

online_meeting_provider

string

"teamsForBusiness"

Specifies the online meeting provider.


Outlook Cancel Calendar Event

Integration name: OUTLOOK_CANCEL_CALENDAR_EVENT

Tool to cancel an event in a specific calendar for a specified user and send cancellation notifications to all attendees.

Parameters

Parameter
Type
Required
Example
Description

Comment

string

"Meeting canceled due to scheduling conflict."

Optional text message sent to all attendees explaining the cancellation.

user_id

string

"me"

The user ID or userPrincipalName of the calendar owner.

event_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ0AAADGTYrvat2PSKIu8IS9hMqyAAAAU0mNQQAAAA=="

The unique identifier of the event to cancel.

calendar_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQYAAADGTYrvat2PSKIu8IS9hMqyAAACHO0AAAA="

The unique identifier of the calendar containing the event.


Outlook Copy Mail Folder

Integration name: OUTLOOK_COPY_MAIL_FOLDER

Tool to copy a user's mail folder and its contents to another folder.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"6640adbb5cb743b0"

Identifier of the user.

destination_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQwAAAA="

The folder ID or a well-known folder name where the folder should be copied to.

mail_folder_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQ8AAAA="

The ID of the mail folder to copy.


Outlook Copy Me Mail Folder

Integration name: OUTLOOK_COPY_ME_MAIL_FOLDER

Tool to copy a child mail folder to a destination folder.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

User's id, userPrincipalName, or me for the signed-in user.

destination_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACARMAAAA="

The folder ID of the destination folder, or a well-known folder name.

mail_folder_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAACAQwAAAA="

The ID of the parent mail folder containing the child folder to copy.

child_folder_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAAAU0mZKAAAAA=="

The ID of the child folder to copy.


Outlook Copy Message

Integration name: OUTLOOK_COPY_MESSAGE

Tool to copy an email message to another folder within the user's mailbox.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

User's email address, UPN, or me for the currently authenticated user.

message_id

string

"AAMkAGI2TAAA="

Unique ID of the Outlook email message to copy.

destination_id

string

"deleteditems"

The destination folder ID, or a well-known folder name.


Outlook Create Draft

Integration name: OUTLOOK_CREATE_DRAFT

Creates a new Outlook email draft with subject, body, recipients, and an optional attachment.

Parameters

Parameter
Type
Required
Example
Description

body

string

"Let's meet to discuss the project."

Content of the email draft.

is_html

boolean

Specifies if the body is HTML.

subject

string

"Team Meeting"

Subject line for the email draft.

user_id

string

"43f0c14d-bca8-421f-b762-c3d8dd75be1f"

User ID (GUID) or user principal name (email) for S2S authentication.

attachment

Optional file(s) to attach.

cc_recipients

array

["manager@example.com"]

Optional list of CC recipient email addresses.

to_recipients

array

["johndoe@example.com","janedoe@example.com"]

Optional list of primary To recipient email addresses.

bcc_recipients

array

["stakeholder@example.com"]

Optional list of BCC recipient email addresses.


Outlook Create Email Rule

Integration name: OUTLOOK_CREATE_EMAIL_RULE

Create email rule filter with conditions and actions.

Parameters

Parameter
Type
Required
Example
Description

actions

object

Actions to take when the rule conditions are met.

user_id

string

"43f0c14d-bca8-421f-b762-c3d8dd75be1f"

User ID or principal name for app-only authentication.

sequence

integer

1

Order in which the rule is executed.

conditions

object

Conditions that must be met for the rule to apply.

is_enabled

boolean

Whether the rule is enabled.

display_name

string

"High Priority Filter"

Display name for the email rule.


Outlook Delete Email Rule

Integration name: OUTLOOK_DELETE_EMAIL_RULE

Delete an email rule permanently; deletion is irreversible.

Parameters

Parameter
Type
Required
Example
Description

rule_id

string

"AAMkAGExampleRuleIdPlaceholder000000000000000000000000000000000000000000000000000000000000000000000=="

ID of the email rule to delete.

user_id

string

"me"

The unique identifier of the user.


Outlook Get Message

Integration name: OUTLOOK_GET_MESSAGE

Retrieves a specific email message by its ID from the specified user's Outlook mailbox.

Parameters

Parameter
Type
Required
Example
Description

select

array

["id","subject","from","receivedDateTime","webLink"]

List of message properties to include in the response.

user_id

string

"me"

User's email address, UPN, or me for the currently authenticated user.

message_id

string

"AAMkAGI2TAAA="

Unique ID of the Outlook email message to retrieve.


Outlook List Messages

Integration name: OUTLOOK_LIST_MESSAGES

Retrieves a list of email messages from a specified mail folder in an Outlook mailbox, with options for filtering, pagination, and sorting.

Parameters

Parameter
Type
Required
Example
Description

top

integer

"10"

Maximum number of messages to return per request.

skip

integer

"0"

Number of messages to skip.

folder

string

"inbox"

ID or well-known name of the mail folder.

search

string

"budget report"

Full-text search query using Microsoft Graph $search syntax.

select

array

["subject","from","receivedDateTime"]

Message properties to include.

is_read

boolean

true

Filter by read status.

orderby

array

["receivedDateTime desc"]

Properties to sort results by.

subject

string

"Project Update Q3"

Filter by exact match of the subject line.

user_id

string

"me"

Target user's email or me for authenticated user.

categories

array

["Work","Urgent"]

Filter by categories.

importance

string

"high"

Filter by importance.

from_address

string

"sender@example.com"

Filter by the sender's exact email address.

conversation_id

string

"AQQkADAwATY3ZmYAZS1hYQAzNC1lODkwLTAwAi0wMAoAEADJzjh8m93SQbP6BUCZcIuc"

Filter messages by conversation ID.

has_attachments

boolean

Filter by attachment presence.

response_detail

string

Level of detail in the response.

subject_contains

string

"budget"

Filter messages where the subject contains the specified substring.

subject_endswith

string

"- Confidential"

Filter messages where the subject ends with the specified string.

sent_date_time_gt

string

"2023-01-10T14:30:00Z"

Filter messages sent after this ISO 8601 timestamp.

sent_date_time_lt

string

"2023-02-20T10:00:00Z"

Filter messages sent before this ISO 8601 timestamp.

subject_startswith

string

"[Action Required]"

Filter messages where the subject starts with the specified string.

received_date_time_ge

string

"2023-03-15T08:00:00Z"

Filter messages received on or after this ISO 8601 timestamp.

received_date_time_gt

string

"2023-01-01T00:00:00Z"

Filter messages received after this ISO 8601 timestamp.

received_date_time_le

string

"2023-03-31T23:59:59Z"

Filter messages received on or before this ISO 8601 timestamp.

received_date_time_lt

string

"2023-04-01T00:00:00Z"

Filter messages received before this ISO 8601 timestamp.


Outlook Search Messages

Integration name: OUTLOOK_SEARCH_MESSAGES

Search Outlook messages using powerful KQL syntax.

Parameters

Parameter
Type
Required
Example
Description

size

integer

Number of search results to return per page.

query

string

"project report"

KQL search query string.

region

string

"US"

Geographic region for the search query.

subject

string

"Project Update"

Text to search for within the message subject line.

fromEmail

string

"manager@example.com"

Filter messages by sender email address or domain.

from_index

integer

The 0-based starting index for pagination.

hasAttachments

boolean

Filters messages based on the presence of attachments.

enable_top_results

boolean

If true, sorts results by relevance.


Outlook Send Draft

Integration name: OUTLOOK_SEND_DRAFT

Tool to send an existing draft message.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

The user's email address or me to represent the authenticated user.

message_id

string

"AAMkAGVi..."

The unique identifier of the draft message to send.


Outlook Send Email

Integration name: OUTLOOK_SEND_EMAIL

Sends an email with subject, body, recipients, and optional attachments via Microsoft Graph API.

Parameters

Parameter
Type
Required
Example
Description

to

string

"recipient@example.com"

The primary recipient's email address(es).

body

string

"Hello team, please find the attached report."

The content of the email body as plain text or HTML.

is_html

boolean

"true"

Specifies if the email body is HTML.

subject

string

"Project Update"

The subject line of the email.

to_name

string

"Valued Customer"

The display name of the primary recipient.

user_id

string

"me"

The user's email address or the alias me.

cc_emails

array

["jane.doe@example.com","cc.recipient@example.com"]

List of email addresses for CC recipients.

attachment

File(s) to attach.

bcc_emails

array

["manager@example.com","supervisor@example.com"]

List of email addresses for BCC recipients.

from_address

string

"shared.mailbox@contoso.com"

Optional From address to set on the message (send as/on behalf).

save_to_sent_items

boolean

"true"

Indicates if the email should be saved in Sent Items.


Outlook Update Calendar Event

Integration name: OUTLOOK_UPDATE_CALENDAR_EVENT

Updates specified fields of an existing Outlook calendar event. Unspecified fields remain unchanged.

Parameters

Parameter
Type
Required
Example
Description

body

object

Event body with content type (Text or HTML) and the content.

show_as

string

"busy"

Availability status for the event.

subject

string

"Updated Team Meeting"

New subject for the event.

user_id

string

The identifier of the user whose calendar event is to be updated.

event_id

string

"AAMkAGI2TAAA="

The unique identifier of the calendar event to be updated.

location

"Conference Room A"

Event location.

attendees

array

Attendee list for the event.

time_zone

string

"America/Los_Angeles"

Time zone for the provided start_datetime and/or end_datetime.

categories

array

Category names to associate with the event.

recurrence

object

The recurrence pattern for an event.

end_datetime

string

"2024-05-01T10:00:00"

New end date and time for the event.

start_datetime

string

"2024-05-01T09:00:00"

New start date and time for the event.


Outlook Update User Calendar

Integration name: OUTLOOK_UPDATE_USER_CALENDAR

Tool to update the properties of a user's calendar.

Parameters

Parameter
Type
Required
Example
Description

name

string

"Work Calendar"

The new display name for the calendar.

color

string

Color theme options for calendars in Outlook.

user_id

string

"me"

The user ID or userPrincipalName of the user whose calendar to update.


Outlook Update User Contacts Extensions

Integration name: OUTLOOK_UPDATE_USER_CONTACTS_EXTENSIONS

Tool to update an open extension on a contact in a user's contact folder.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

The unique identifier of the user.

contact_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ4AAADGTYrvat2PSKIu8IS9hMqyAAAAU0nIvgAAAA=="

The unique identifier of the contact to which the extension belongs.

extension_id

string

"Com.Contoso.ContactData"

The unique identifier of the extension to update.

extension_name

string

"Com.Contoso.ContactData"

The name of the extension.

contact_folder_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAC4AAAPLkCuWz0mbS4RvWyTvc1LKAQDGTYrvat2PSKIu8IS9hMqyAAAAU0mZOgAAAA=="

The unique identifier of the contact folder containing the contact.

custom_properties

object

{"notes":"VIP client with priority support","lastUpdated":"2026-02-23","accountValue":15000,"customerType":"Enterprise"}

Custom properties to update or add to the extension.


Outlook Update User Calendar Permission

Integration name: OUTLOOK_UPDATE_USER_CALENDAR_PERMISSION

Tool to update calendar permission levels for a specific user's calendar.

Parameters

Parameter
Type
Required
Example
Description

role

string

"write"

The permission level to change to for the calendar share recipient or delegate.

user_id

string

"me"

The user ID or principal name of the user whose calendar permission to update.

calendar_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQYAAADGTYrvat2PSKIu8IS9hMqyAAACHO0AAAA="

The unique identifier of the calendar.

permission_id

string

"ZGU5NWQyODQtZTA3ZS00YzMxLTljMjAtY2JhNTI5ZTFjOTcx"

The unique identifier of the calendar permission to update.


Outlook Update User Calendar Event

Integration name: OUTLOOK_UPDATE_USER_CALENDAR_EVENT

Tool to update an event in a specific user's calendar.

Parameters

Parameter
Type
Required
Example
Description

end

object

Date, time, and timezone information.

body

object

Message content associated with the event.

start

object

Date, time, and timezone information.

showAs

string

"free"

Status to show.

subject

string

"Updated Team Meeting"

Subject/title of the event.

user_id

string

"user@example.com"

The unique identifier or userPrincipalName of the user whose calendar event to update.

event_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAA=="

The unique identifier of the event to update.

isAllDay

boolean

Set to true if the event lasts all day.

location

object

Location information for an event.

attendees

array

Array of attendee objects.

categories

array

["Work","Important"]

Categories associated with the event.

importance

string

"low"

The importance of the event.

recurrence

object

Recurrence pattern for recurring events.

sensitivity

string

"normal"

Sensitivity level.

isReminderOn

boolean

Set to true if an alert reminds the user of the event.

isOnlineMeeting

boolean

True if event has online meeting information.

reminderMinutesBeforeStart

integer

15

Minutes before event start when reminder alert occurs.


Outlook Update User Mail Folder Message

Integration name: OUTLOOK_UPDATE_USER_MAIL_FOLDER_MESSAGE

Tool to update properties of a message in a specific mail folder for a user.

Parameters

Parameter
Type
Required
Example
Description

body

object

The body of the message.

flag

object

The flag value that indicates the status, start date, due date, or completion date for the message.

from

object

Represents information about a user in the sending or receiving end of a message.

isRead

boolean

Whether the message has been read.

sender

object

Represents information about a user in the sending or receiving end of a message.

replyTo

array

The email addresses to use when replying. Only updatable if isDraft=true.

subject

string

The subject of the message. Only updatable if isDraft=true.

user_id

string

"me"

The unique identifier of the user whose mailbox contains the message.

categories

array

["Work","Important"]

The categories associated with the message.

importance

string

Importance level of the message.

message_id

string

"AAMkAGI2TAAA="

The unique identifier of the message to update within the specified mail folder.

ccRecipients

array

The Cc recipients for the message.

toRecipients

array

The To recipients for the message.

bccRecipients

array

The Bcc recipients for the message.

mail_folder_id

string

"inbox"

The unique identifier of the mail folder containing the message.

internetMessageId

string

The message ID in RFC2822 format.

isReadReceiptRequested

boolean

Whether a read receipt is requested for the message.

inferenceClassification

string

Classification of the message based on inferred relevance or importance.

isDeliveryReceiptRequested

boolean

Whether a delivery receipt is requested for the message.


Outlook Update User Message Extension

Integration name: OUTLOOK_UPDATE_USER_MESSAGE_EXTENSION

Tool to update an open extension on a user's message.

Parameters

Parameter
Type
Required
Example
Description

user_id

string

"me"

The unique identifier of the user.

message_id

string

"AQMkADAwATMwMAExLTlmNjktOWVmYS0wMAItMDAKAEYAAAPLkCuWz0mbS4RvWyTvc1LKBwDGTYrvat2PSKIu8IS9hMqyAAACAQ8AAADGTYrvat2PSKIu8IS9hMqyAAAAU0lyEAAAAA=="

The unique identifier of the message containing the extension.

extension_id

string

"Com.Contoso.TestExtension"

The unique identifier or name of the extension to update.

extension_name

string

"Com.Contoso.TestExtension"

The name of the extension.

custom_properties

object

{"status":"active","dealValue":250000,"companyName":"Contoso Updated","expirationDate":"2027-12-31"}

Custom properties to update in the extension.


The full Outlook tool reference continues in the same format for the remaining tools.