Connect Microsoft Teams to Teamwork Graph

Make all your messages searchable alongside your company knowledge.

Before you begin

This setting controls what data is synced from Microsoft Teams into Atlassian for indexing and search. When you access Microsoft Teams data through Rovo at runtime, your own Microsoft Teams access is used.

  • You need Microsoft Entra admin permissions to connect Teams to Teamwork Graph.

  • We encourage you to review your permissions in Microsoft Teams. By default, the Microsoft Teams connector will index every message in Teams, including private chats and private channels.

What is indexed?

The Microsoft Teams connector indexes these objects:

  • Chats (group chats, meeting chats, direct 1:1 chats)

  • Channels (public, private, and shared)

  • Meeting transcripts (additional setup required)

  • Team and channel membership

  • Metadata of file and link attachments shared in channels

  • Metadata of tabs

The full content of file attachments uploaded through Teams is indexed through the SharePoint connector.

Required permissions

Connecting Teams requires the Microsoft Graph API permissions listed in the table that follows. Your Microsoft Entra admin will be asked to grant these during connector setup.

Permission name

Type

Description

Admin consent required

Calendars.Read

Delegated

Read user calendars

No

Calendars.Read

Application

Read calendars in all mailboxes

Yes

Channel.ReadBasic.All

Delegated

Read the names and descriptions of channels

No

Channel.ReadBasic.All

Application

Read the names and descriptions of all channels

Yes

ChannelMember.Read.All

Application

Read the members of all channels

Yes

ChannelMessage.Read.All

Delegated

Read user channel messages

Yes

ChannelMessage.Read.All

Application

Read all channel messages

Yes

ChannelSettings.Read.All

Application

Read the names, descriptions, and settings of all channels

Yes

Chat.Read

Delegated

Read user chat messages

No

Chat.Read.All

Application

Read all chat messages

Yes

Chat.ReadBasic

Delegated

Read names and members of user chat threads

No

Chat.ReadBasic.All

Application

Read names and members of all chat threads

Yes

Chat.ReadWrite

Delegated

Read and write user chat messages

No

ChatMember.Read.All

Application

Read the members of all chats

Yes

ChatMessage.Read.All

Application

Read all chat messages

Yes

Directory.Read.All

Delegated

Read directory data

Yes

Group.Read.All

Application

Read all groups

Yes

GroupMember.Read.All

Delegated

Read group memberships

Yes

OnlineMeetings.Read

Delegated

Read user's online meetings

No

OnlineMeetings.Read.All

Application

Read online meeting details

Yes

OnlineMeetingTranscript.Read.All

Application

Read all transcripts of online meetings

Yes

Team.ReadBasic.All

Application

Get a list of all teams

Yes

TeamMember.Read.All

Application

Read the members of all teams

Yes

TeamsTab.Read.All

Delegated

Read tabs in Microsoft Teams

Yes

User.Read

Delegated

Sign in and read user profile

No

User.Read.All

Application

Read all users' full profiles

Yes

Connecting Teams to Team work Graph

Who can do this?

Role: Organization admin

Atlassian Cloud: Standard, Premium, Enterprise

Atlassian Government Cloud: Not available

To connect Teams to Teamwork graph:

  1. Go to Atlassian Administration. Select your organization if you have more than one.

  2. Select Apps, then Connectors.

  3. If you have more than one site, pick the site you want to connect, then select Add connector.

  4. Select Microsoft Teams, then select Next.

  5. Get your Tenant ID from your Microsoft Entra account.

    1. In a new browser tab, log in to your Microsoft account at Entra at entra.microsoft.com.

    2. In the side navigation, under Entra ID, select Overview.

    3. Copy the Tenant ID to your clipboard.

  6. Go back to Atlassian Administration, paste the copied tenant ID into the Microsoft Tenant ID field.

  7. (Optional, but recommended) Enable meeting transcripts to configure your application access policy in Entra. See the “Enable meeting transcripts” section below on this page for detailed steps.

  8. Select Authorize Microsoft Teams.

  9. You will be directed to Microsoft to accept the permissions required for the Rovo app.

  10. Complete the steps in the authorization flow.

Microsoft Teams should now be connected to Teamwork Graph.

Enable meeting transcripts

Meeting transcripts are not ingested by default, even if API permissions have been granted. To enable them, your Microsoft admin must configure an application access policy in Microsoft Entra. This lets Rovo crawl specific users' meeting transcripts.

  1. Log into your Azure portal.

  2. Open the Terminal.

  3. Connect to Microsoft Teams:

    Connect-MicrosoftTeams
  4. Create an application access policy. Run the following command, replacing the AppIds argument with your Rovo application ID for Microsoft Teams. Optionally, you can replace the Description argument.

    New-CsApplicationAccessPolicy -Identity Transcripts-rovo-policy -AppIds "<rovo_application_id>" -Description "Enabling Transcripts Globally"
  5. Enable the policy globally (for the whole tenant). The PolicyName argument must be the same as the Identity argument from Step 4.

    Grant-CsApplicationAccessPolicy -PolicyName Transcripts-rovo-policy -Global
  • Rovo ingests a user's transcripts only after the user has authorized themselves.

  • If a user authenticated to the Teams connector before the Microsoft admin enabled transcripts through the access policy, they must authenticate again.

  • The meeting organizer and all invitees (even if they did not attend) on the Microsoft Outlook calendar event can search for the transcript in Rovo.

  • Rovo only indexes meetings on the Outlook calendar. Rovo doesn’t index meetings created in Teams channels.

Required scopes for transcripts

Permission

Type

Admin consent required

Calendars.Read

Delegated

No

Calendars.Read

Application

Yes

OnlineMeetings.Read

Delegated

No

OnlineMeetings.Read.All

Application

Yes

OnlineMeetingTranscript.Read.All

Application

Yes

Adminstrator controls

When you initially set up the Teams connector, you can manage the following in Atlassian Administration:

  • Allowlist and blocklist — restrict which specific Teams and Channels are ingested through the connector.

    • This configuration can be modified after initial setup.

  • Limit by date — set a time window for how far back content is ingested.

    • This configuration can’t be modified after initial setup.

Next steps

After you’ve finished connecting Teams:

  1. Messages, channels, and transcripts (if the administrator configured the application access policy) will start to show in Search incrementally over the next few hours.

  2. Your team members will see Teams show up as a filter option in Search. If they haven’t connected to Teams from their Atlassian account, they may be asked to connect before they can see results. This is required so Teamwork Graph can make sure your teammates only see results they usually have access to.

  3. Depending on the number of objects in Teams, it may take some time for all your objects to be indexed and appear in Search.

Still need help?

The Atlassian Community is here for you.