AppsPricingBlogTry it
Slack logo
Microsoft Outlook Calendar logo

Connect Slack to Microsoft Outlook Calendar

Use 9 documented Slack triggers to run 16 documented Microsoft Outlook Calendar actions.

9 source triggers
16 target actions
Reverse direction supported

Why Connect Slack & Microsoft Outlook Calendar?

Start with a Slack event

Choose from 9 documented triggers, including New Channel Created (Instant), New Interaction Events (Instant), New Keyword Mention (Instant).

Run a Microsoft Outlook Calendar action

Send the event into one of 16 documented actions, such as Accept Event, Create Calendar Event, Decline Event.

Map and review the workflow

Choose the fields and conditions for the workflow, then test the result before activation.

Available Triggers & Actions

Slack logo

Slack

Triggers (9)

New Channel Created (Instant)

Emit new event when a new channel is created.

webhook
New Interaction Events (Instant)

Emit new events on new Slack interactivity events sourced from Block Kit interactive elements, Slash commands, or Shortcuts.

webhook
New Keyword Mention (Instant)

Emit new event when a specific keyword is mentioned in a channel

webhook
New Message In Channels (Instant)

Emit new event when a new message is posted to one or more channels

webhook
New Private Channel Created

Emit new event when a new private channel is created. See the documentation

polling
New Reaction Added (Instant)

Emit new event when a member has added an emoji reaction to a message

webhook
New Saved Message (Instant)

Emit new event when a message is saved. Note: The endpoint is marked as deprecated, and Slack might shut this off at some point down the line.

webhook
New User Added (Instant)

Emit new event when a new member joins a workspace.

webhook
New User Mention (Instant)

Emit new event when a username or specific keyword is mentioned in a channel

webhook

Actions (24)

Send Message to Channel

Send a message to a public or private channel. See the documentation

Add Emoji Reaction

Add an emoji reaction to a message. See the documentation

Add Reaction

Add an emoji reaction to a message. Accepts a channel ID or channel name (resolved automatically). Use **Get Channel History** or **Search** to find the message timestamp. Emoji name should be without colons (e.g. thumbsup, fire, heart). See the documentation

Approve Workflow

Suspend the workflow until approved by a Slack message. See the documentation

Archive Channel

Archive a channel. See the documentation

Browse Files

List files shared in a channel or across the workspace. Accepts a channel ID or channel name (resolved automatically). Filter by file type (e.g. images, pdfs, snippets). Returns file metadata including name, type, size, and download URL. See the documentation

Build and Send a Block Kit Message

Configure custom blocks and send to a channel, group, or user. See the documentation.

Create a Channel

Create a new channel. See the documentation

Create Reminder

Create a reminder. See the documentation

Delete File

Delete a file. See the documentation

Delete Message

Delete a message. See the documentation

Edit Message

Edit an existing message. Accepts a channel ID or channel name (resolved automatically). Requires the message timestamp (ts) from **Get Channel History** or **Post Message**. You can only edit messages posted by the same token/user. See the documentation

Find Message

Find a Slack message. See the documentation

Find User by Email

Find a user by matching against their email. See the documentation

Find User by ID

Find a user by their ID. Returns user profile information including name, email (requires users:read.email scope), timezone, and status. See the documentation

Get Channel Details

Retrieve details for a Slack channel by selecting it or providing an ID. See the documentation

Get Channel History

Read the recent message history from a specific channel. Accepts a channel ID or channel name (resolved automatically). Use this when you want to see a channel's latest messages — unlike **Search** which finds messages by keyword. Returns messages with text, timestamps (ts), reactions, and user IDs. Message timestamps can be used with **Get Thread Replies**, **Edit Message**, and **Add Reaction**. See the documentation

Get Current User

Retrieve comprehensive context about the authenticated Slack member, combining auth.test, users.info, users.profile.get, and team.info payloads. Returns the user’s profile (name variants, email, locale, timezone, status, admin flags), raw auth test data, and workspace metadata (domain, enterprise info, icons). Ideal when you need to confirm which user token is active, tailor messages to their locale/timezone, or ground an LLM in the member’s role and workspace before executing other Slack actions. See Slack API docs.

Get File

Return information about a file. See the documentation

Get Thread Replies

Retrieve all replies in a message thread. Accepts a channel ID or channel name (resolved automatically). Use **Get Channel History** or **Search** to find the parent message's timestamp (thread_ts). Returns the parent message followed by all replies in chronological order. See the documentation

Get User Details

Retrieve the authenticated user's identity and workspace context. Returns user ID, name, email, timezone, profile, and workspace metadata. Call this first in any session to establish who you are — other tools like **Search** and **List Channels** can then filter by your user ID. See the documentation

Invite User to Channel

Invite a user to an existing channel. See the documentation

Kick User

Remove a user from a conversation. See the documentation

List Channels

Return a list of all channels in a workspace. See the documentation

Microsoft Outlook Calendar logo

Microsoft Outlook Calendar

Triggers (5)

Calendar Event Deleted (Instant)

Emit new event when a Microsoft Outlook Calendar event is deleted. Because deleted events cannot be re-fetched from the Outlook API after deletion, this trigger emits notification metadata only (not the full event object). The emitted payload includes the deleted event identifier (eventId), changeType, subscriptionId, tenantId, and notificationTimestamp. Downstream processors must rely solely on this metadata. See the documentation

webhook
New Calendar Event (Instant)

Emit new event when a new Calendar event is created

webhook
New Calendar Event Update (Instant)

Emit new event when a Calendar event is updated

webhook
New Upcoming Calendar Event

Emit new event when a Calendar event is upcoming, this source is using reminderMinutesBeforeStart property of the event to determine the time it should emit.

polling
New Upcoming Calendar Event (Polling)

Emit new event based on a time interval before an upcoming calendar event. See the documentation

polling

Actions (16)

Accept Event

Accept a calendar event invitation and optionally send a response to the organizer. Use **List Events** or **Get Event** to find the event ID. See the documentation

Create Calendar Event

Create an event in the user's default calendar. Supports one-time and recurring events. See the documentation and recurring event example.

Decline Event

Decline a calendar event invitation and optionally propose an alternate time. Use **List Events** or **Get Event** to find the event ID. To propose a new time, pass proposedNewTime as a JSON string with start and end objects (each with dateTime in ISO 8601 format and timeZone as a Windows timezone name, e.g. "Pacific Standard Time"). Alternate-time proposals are only valid when the event has allowNewTimeProposals: true and sendResponse is true. See the documentation

Delete Calendar Event

Delete an event in the user's default calendar. See the documentation

Delete Recurring Event Instance

Delete an individual instance of a recurring event in the user's default calendar. See the documentation

Find Meeting Times

Suggest meeting times and locations based on organizer and attendee availability. See the documentation

Get Current User

Returns the authenticated Microsoft user's ID, display name, email, and principal name via Microsoft Graph. Call this first when the user says 'my calendar', 'my events', or needs to identify themselves as organizer/attendee. Use id or mail to filter results from **List Events** or set the organizer in **Create Calendar Event**. See the documentation.

Get Event

Retrieve a calendar event by its Microsoft Graph event ID. Pass the id from **List Events** when you need full details (for example body, attendees, or recurrence) that list responses may omit or truncate. See the documentation

Get Free/Busy Schedule

Get the free/busy availability information for a collection of users, distributions lists, or resources (rooms or equipment) for a specified time period. See the documentation

List Events

Get a list of event objects in the user's mailbox. See the documentation

List Time Zone Options

Retrieves available options for the Time Zone field.

Search Contacts

Search for contacts by name from your saved contacts list and retrieve their email addresses. See the documentation

Search People

Retrieve a collection of person objects ordered by their relevance to the user, based on communication and collaboration patterns and business relationships. See the documentation

Tentatively Accept Event

Tentatively accept a calendar event invitation and optionally propose an alternate time. Use **List Events** or **Get Event** to find the event ID. To propose a new time, pass proposedNewTime as a JSON string with start and end objects (each with dateTime in ISO 8601 format and timeZone as a Windows timezone name, e.g. "Pacific Standard Time"). Alternate-time proposals are only valid when the event has allowNewTimeProposals: true and sendResponse is true. See the documentation

Update Calendar Event

Update an event in the user's default calendar. See the documentation

Update Recurring Event Instance

Update an individual instance of a recurring event in the user's default calendar. See the documentation

Integration Features

9 documented Slack triggers
16 documented Microsoft Outlook Calendar actions
Configurable field mapping
Conditional workflow steps
Execution monitoring
A supported Microsoft Outlook Calendar to Slack direction

Capability Examples

Slack trigger → Microsoft Outlook Calendar action

Catalog example
SlackSlack

New Channel Created (Instant)

Microsoft Outlook CalendarMicrosoft Outlook Calendar

Accept Event

Microsoft Outlook Calendar trigger → Slack action

Reverse direction
Microsoft Outlook CalendarMicrosoft Outlook Calendar

Calendar Event Deleted (Instant)

SlackSlack

Send Message to Channel

How It Works

1

Connect Apps

Authenticate your Slack and Microsoft Outlook Calendar accounts

2

Choose a Trigger

Select a documented Slack event

3

Choose an Action

Select the documented Microsoft Outlook Calendar operation to run

Test and Review

Verify field mapping and provider responses before activation

Frequently Asked Questions

Integration Benefits

Trigger-driven Workflows

Start the supported direction from one of 9 documented Slack triggers.

Automated Actions

Run one of 16 documented Microsoft Outlook Calendar actions after the selected trigger fires.

Provider Authentication

Review the authentication requirements published by each provider before activating the workflow.

Guided Configuration

Select a documented trigger, choose a target action, and map the fields required by the workflow.

Field Mapping

Map the fields exposed by the selected trigger and action, then review the required provider inputs.

Execution Review

Test the workflow and review provider responses before relying on it in production.

Microsoft Outlook Calendar logoSlack logo

Reverse Integration Available

Also connect Microsoft Outlook Calendar to Slack for bidirectional automation

View Integration
Slack logo

All Slack Integrations

Explore all available Slack connections

View All Integrations
Microsoft Outlook Calendar logo

All Microsoft Outlook Calendar Integrations

Explore all available Microsoft Outlook Calendar connections

View All Integrations

Ready to Connect Slack & Microsoft Outlook Calendar?

Build this supported workflow in Mazaal AI and test it with your own provider accounts.

Get Started Free