Skip to main content

Microsoft Teams Integration - Setup Guide

Connect your Microsoft Teams account to Goodweek to manage channels, messages, chats, meetings, teams, and shift scheduling directly from your AI workspace.

A
Written by Antoine Stempien

Connect your Microsoft Teams account to Goodweek to manage channels, messages, chats, meetings, teams, and shift scheduling directly from your AI workspace.

ℹ️ Governance note

Goodweek will never exceed the access levels granted to the user within Microsoft Teams, guaranteeing alignment with your organization's governance policies. Outcomes and available features may vary depending on each user's specific permissions and authenticated access.

📋 Prerequisites

Before any user can see and connect the Microsoft Teams integration, your organization admin must first enable it from the Goodweek Admin Panel under the Integrations tab.

Admin Setup

The Microsoft Teams integration uses Microsoft OAuth 2.0 via Microsoft Entra ID. To allow users to connect, a Microsoft Entra tenant admin must grant admin consent for the application. Without this step, users may see a permission error during the connection flow.

There are three typical scenarios depending on your Entra ID configuration:

  1. Admin consent has already been granted. Users can connect directly without any additional steps.

  2. User consent is disabled in your tenant. An Entra admin must grant consent on behalf of the organization before users can connect. Go to Microsoft Entra admin center → Enterprise Applications → Composio → Permissions → Grant admin consent for [your organization].

  3. Access to Teams or messaging data is restricted at the resource level. Depending on your organization's Teams policies, additional permissions may need to be configured before the integration can access channel or chat content.

⚠️ Important: Microsoft admin session edge case

If a Microsoft Entra tenant admin completes the OAuth connection flow themselves, Microsoft may apply admin consent automatically and link the integration to the admin's account rather than to their individual user account. This is a Microsoft behavior and cannot be changed at the OAuth level.

Recommended approach: The admin should pre-approve the app in Entra ID (Enterprise Applications → Composio → Permissions → Grant admin consent for your organization) before any user — including the admin — goes through the Goodweek connection flow. Once pre-approved, any user including the admin can complete the flow and the integration will be linked to their individual account.

Alternatively, a non-admin user can complete the connection flow first to avoid this issue.

User Connection

  1. In Goodweek, go to Integrations.

  2. Find Microsoft Teams and click Connect.

  3. You will be redirected to Microsoft, where you will be asked to sign in with your Microsoft account and authorize access.

  4. Click Accept to grant access and return to Goodweek.

Important Notes

  • Each user must connect their own account individually.

  • Goodweek can only access the teams, channels, and chats that your individual account has permission to see. Private channels and restricted content follow Teams access controls.

  • You can revoke Goodweek's access at any time from Microsoft account → My Account → Privacy → Apps and services → Composio → Remove access.


Available Tools

Tool

Description

Type

List Teams

Retrieves Microsoft Teams accessible by the authenticated user with optional filtering.

Read

Get Team

Retrieves full details of a specific team by its ID.

Read

Create Team

Creates a new Microsoft Teams team with optional template, channels, and members.

Write

Update Team

Updates team settings such as member, messaging, fun, and guest permissions.

Write

Archive Teams Team

Archives a Microsoft Teams team to remove it from active view while preserving its data.

Write

Unarchive Teams Team

Restores an archived Microsoft Teams team to active state.

Write

Clone Team

Creates a copy of an existing Microsoft Teams team.

Read

List Team Channels

Retrieves channels for a specified Microsoft Teams team with optional filtering.

Read

Get Team Channel

Retrieves details of a specific channel within a team.

Read

Create a Channel

Creates a new standard, private, or shared channel within a Microsoft Teams team.

Write

Update Teams Channel

Updates channel properties such as display name and description.

Write

Archive Channel

Archives a channel within a Microsoft Teams team.

Write

Unarchive Channel

Restores an archived channel to active state.

Write

List Channel Messages

Lists messages in a Teams channel when team ID and channel ID are known.

Read

Get Teams Channel Message

Retrieves a specific message from a Microsoft Teams channel by team, channel, and message IDs.

Read

Send Channel Message

Posts a new top-level message to a channel in Microsoft Teams.

Write

Reply to Teams Channel Message

Sends a reply to an existing message within a specific channel.

Write

List Channel Message Replies

Lists all replies to a specific message in a Teams channel.

Read

Search Teams Messages

Searches Microsoft Teams messages using KQL syntax including sender, date, and attachment filters.

Read

Get All Chats

Lists a specified user's Microsoft Teams chats with optional filtering.

Read

Get Chat

Retrieves details about a specific chat by its ID.

Read

Create Chat

Creates a new chat. If a one-on-one chat with the specified members already exists, returns its details.

Write

Send Message to Teams Chat

Sends a message (text or HTML) to an existing Microsoft Teams chat.

Write

List User Chat Messages

Retrieves messages from a specific chat for a given user.

Read

List Pinned Messages

Retrieves the list of pinned messages in a Microsoft Teams chat.

Read

Pin Message in Chat

Pins a message in a Microsoft Teams chat for quick reference.

Read

List Team Members

Lists members of a specific Microsoft Teams team.

Read

Get Team Member

Retrieves details about a specific team member by their membership ID.

Read

Add Member to Team

Adds a user to a Microsoft Teams team.

Write

Add Team Members (Bulk)

Adds multiple members to a Microsoft Teams team in a single operation.

Write

Update Team Member

Updates a team member's role or properties within the team.

Write

Add Member to Channel

Adds a user to a Microsoft Teams channel.

Write

List Users

Lists all users in the organization via Microsoft Graph with optional filtering.

Read

List User Joined Teams

Lists the Teams that a specified user is a direct member of.

Read

Get User Profile

Retrieves a user's profile including ID, UPN, mail, and display name.

Read

Get User Presence

Retrieves a user's current presence information including availability and activity status.

Read

Create Online Meeting

Schedules a new standalone Microsoft Teams online meeting not linked to a calendar event.

Write

Get Online Meeting

Retrieves details of a specific Microsoft Teams online meeting by its ID.

Read

Update Online Meeting

Updates properties of an existing Microsoft Teams online meeting.

Write

List Meeting Transcripts

Lists all transcripts associated with a specific Microsoft Teams online meeting.

Read

Get Meeting Transcript Content

Retrieves the raw text content for a Microsoft Teams meeting transcript.

Read

List Meeting Recordings

Lists recordings for a scheduled, non-expired Microsoft Teams online meeting.

Read

Get Meeting Recording Content

Retrieves up to 256 MiB of video content for a Teams meeting recording.

Read

Search Teams Files

Searches files in Microsoft Teams using KQL syntax by name, type, content, or author.

Read

Get Channel Files Folder

Retrieves the files folder metadata for a specific channel in a Teams team.

Read

List Shifts

Lists all shifts for a team's schedule with optional date filtering.

Read

Create Team Schedule Shift

Creates a new work shift in a Microsoft Teams team schedule.

Write

Create Time Off

Creates a new approved time off entry in a team's schedule.

Write

Create Time Off Request

Creates a new time off request in a team's schedule for a team member.

Write

List Time Off Requests

Lists all time off requests from a Microsoft Teams team schedule.

Read

Add Tab to Channel

Adds a new tab (app or website) to a Microsoft Teams channel.

Write

List Channel Tabs

Lists all tabs configured in a Microsoft Teams channel.

Read

Delete Teams Team

Permanently deletes a Microsoft Teams team.

⚠️ Destructive

Delete Team Channel

Permanently deletes a channel from a Microsoft Teams team.

⚠️ Destructive

Soft-delete Teams Channel Message

Soft-deletes a message in a Teams channel without permanently removing it.

⚠️ Destructive

Remove Team Member

Removes a user from a Microsoft Teams team.

⚠️ Destructive

Remove Chat Member

Removes a member from a Microsoft Teams chat conversation.

⚠️ Destructive

Delete User Online Meeting

Permanently deletes an online meeting from a user's account.

⚠️ Destructive

Use Cases

  • Send messages and manage channel conversations. Post messages to Teams channels or send messages in chats directly from Goodweek conversations, keeping communication in context with other work without switching to Teams.

  • Retrieve meeting transcripts and recordings. Access the transcript or recording content from a past Teams meeting from Goodweek to extract action items, summarize discussions, or reference specific decisions.

  • Manage team membership and channels. Add or remove team members, create new channels, and update channel properties from Goodweek to keep team structures organized without navigating the Teams admin interface.

  • Schedule meetings and manage shift planning. Create online meetings, manage team schedules, and handle time off requests from Goodweek to coordinate work across the team efficiently.


Troubleshooting

Permission error during connection

Your Microsoft Entra tenant admin may need to grant consent for the application. Ask your admin to follow the Admin Setup steps above before attempting to reconnect.

Integration connected but private channels are not visible

Microsoft Teams private channels are only accessible to their members. If you are not a member of a private channel, it will not appear through the integration. Ask the channel owner to add you.

Integration not visible in Goodweek

Make sure your organization admin has enabled the Microsoft Teams integration from the Goodweek Admin Panel under the Integrations tab.

References

Did this answer your question?