Skip to main content
Tag @Devin AI in Microsoft Teams as soon as bugs, feature requests, and questions come in. Devin responds with updates and questions when it’s tagged.

Get started

Installation

Setting up Microsoft Teams has two parts: connecting your Microsoft 365 tenant to Devin, then installing the Devin app in the teams where you want to use it.

1. Connect your tenant

  1. Go to Settings > Connections and select Microsoft Teams
  2. Click Connect and sign in with a Microsoft account that has the Teams Administrator or Global Administrator role.
  3. Complete the Microsoft prompts. You’re returned to the Microsoft Teams settings page, and your own Microsoft Teams user is linked to your Devin user.
Your tenant must allow the Devin AI app to receive an application token so Devin can read messages where it’s installed (access is scoped per team or chat through resource-specific consent, granted when the app is installed). If Microsoft Entra ID blocks it, ask a Cloud Application Administrator (or higher) to allow the app, then connect again.

2. Install Devin in a team

  1. On the Microsoft Teams settings page, find the Connected teams section
  2. Click Install in team to open the Devin app in Microsoft Teams, then add it to the team or chat you want. Team owners can also add Devin directly from the Teams store.
  3. Once installed, the team appears under Connected teams
  1. Every user who wants to use Devin from Teams must link their own Microsoft Teams identity. On the Microsoft Teams settings page, click Link user profile and sign in with Microsoft.
  2. To message Devin in a 1:1 chat (DM), each user must also install the Devin AI app for themselves: in Microsoft Teams, open Apps, search for Devin AI, and click Add. Installing Devin in a team or group chat does not add it to anyone’s personal chats. Teams admins can pre-install it for users with an app setup policy in the Teams admin center.
  3. Mention @Devin AI in a Team channel or group chat, or message Devin AI in a 1:1 chat, to start a session
Note: For Devin to work for each user, every individual must link their own account in the Devin dashboard (Settings > Connections > Microsoft Teams). This lets Devin associate their Microsoft Teams identity with their Devin user.

How to use Devin from Microsoft Teams

Once you’ve installed the Microsoft Teams integration, simply trigger Devin with @Devin AI in any Team channel or group chat, or message Devin AI directly in a 1:1 chat. In Team channels, Devin replies in the thread of your message. In 1:1 and group chats, which don’t have threads, Devin replies directly in the chat. You can communicate back and forth just like in the regular Devin chat interface.
In shared channels, the Devin AI app must also be enabled for the channel (installing it in the host Team is not enough), and Devin only replies in the thread when it’s @mentioned. Private channels are not supported.
Note that Devin may make mistakes. Please double-check responses.

Inline Teams Keywords & Functions

Mode keywords (!fast, !lite, !ultra, !fusion, !swe, !swe2, !normal) are recognized anywhere in your message and are stripped from the prompt Devin receives. A keyword inside an inline or fenced code span is treated as literal text. Sending a mode keyword in an active Devin thread or chat switches that session’s mode mid-session.

Pricing

If you don’t yet have a Devin account, you can learn more about pricing and plans here.

Privacy

Our privacy policy is available here.

Support

If you run into issues with the Microsoft Teams integration, have questions, or come across any objectionable AI-generated content, contact us and we’ll open a support ticket for you:
  • Email: support@cognition.ai — include your organization name, the Teams tenant, and a description or screenshot of the problem.
  • Enterprise customers: you can also reach out to your Cognition account team.

Authentication Flow

The diagram below illustrates the high-level authentication architecture for the Microsoft Teams integration, showing how authentication flows from Teams through various layers to create authenticated Devin sessions.

Permissions Details

Below is a summary of the Microsoft Teams and Microsoft Graph permissions our integration requires—what each grants, why we need it, and where it’s used.
At a glance
  • Microsoft sign-in (delegated User.Read): connecting your tenant (Teams Administrator or Global Administrator) and linking individual users.
  • Post as yourself (delegated ChannelMessage.Send, ChatMessage.Send, offline_access): requested when a user links their profile, so Devin can post that user’s web app messages to Teams under their own name. Users can choose Link without posting as you to link with only User.Read.
  • Teams bot RSC (per Team/Chat): scoped access to messages/members/settings only where the bot is installed or present.
  • No tenant-wide Microsoft Graph application permissions: Devin never requires tenant-wide admin consent in Microsoft Entra ID.
These are granted per Team/Chat at install time (do not apply tenant-wide).
Team-scoped (Team/Channel)
Chat-scoped (1:1 and group chats)
RSC guardrails: Access is limited to the specific Team/Chat where the app is installed or participates. Removing the app from a Team/Chat revokes that access.

Delegated Permissions (post as yourself)

These are granted by each user for themselves when they link their user profile. They’re optional: choosing Link without posting as you links the profile with only User.Read, and messages from the Devin web app are then posted as “User Name by Devin”. Devin uses them only to post that user’s messages from the Devin web app into the Teams thread or chat of a session started from Teams.
These permissions don’t require admin consent by default. If your tenant’s user consent settings in Microsoft Entra ID don’t allow users to consent to them, users see an admin approval prompt when they link their profile; they can still link with Link without posting as you.

Example: Certificate-Based Authentication for Microsoft Graph

The diagram below illustrates our app-only, certificate-based authentication with Microsoft Graph. Using an X.509 client certificate, the service acquires an access token for your tenant and then calls Graph for a resource where the Devin app is installed, for example reading a team’s details (GET /v1.0/teams/). Access is granted by the resource-specific consent (RSC) permissions in the app manifest, so the token only works for Teams and chats where the app is installed.
Credential note: We use an X.509 certificate (client assertion) rather than a client secret for service-to-service authentication. This applies to the RSC-scoped Microsoft Graph calls, bot communications with the Bot Framework adapter, and any app-only API calls from the integration.

Complete Message Processing Flow (Teams → Cognition)

The diagram below shows the complete end-to-end flow when a user sends a message to Devin in Microsoft Teams, including token validation and bot processing.
Credential note: We use an X.509 certificate (client assertion) rather than a client secret for service-to-service authentication. This applies to the RSC-scoped Microsoft Graph calls, bot communications with the Bot Framework adapter, and any app-only API calls from the integration.
  1. Tenant connection
    • A Teams Administrator or Global Administrator signs in with delegated User.Read. No tenant-wide admin consent is granted.
  2. Targeted Installation
    • From Connected teams > Install in team, you open the Devin AI app in Microsoft Teams and add it to a specific Team or chat. Team owners can also add it from the Teams store.
    • During installation, the RSC scopes are granted only to that Team (or to the specific Chat when invoked in a chat).
  3. User linking
    • Each user signs in with delegated User.Read, and consents for themselves to ChannelMessage.Send, ChatMessage.Send, and offline_access so Devin can post as them. With Link without posting as you, only User.Read is requested.
  4. Operation
    • Reading/sending messages and reading members/settings rely on RSC within installed surfaces.
    • Messages a user sends from the Devin web app are posted with that user’s delegated token when they granted it; otherwise they are posted by the bot as “User Name by Devin”.

Least-Privilege Notes

  • Connecting Devin to Teams only requires delegated User.Read and the RSC permissions above; no tenant-wide Graph permission is needed.
  • Posting as a user relies on that user’s own delegated consent and only sends messages; it doesn’t read messages, files, or other data.
  • Message content is accessed exclusively via RSC and only where the bot is installed/present.
  • No mailbox, files, or calendar permissions are requested.

Revocation & Uninstallation

  • Uninstall from Teams: Remove the Devin app from a Team/Chat in Microsoft Teams to revoke RSC for that resource; the team disappears from Connected teams in the Devin dashboard.
  • Post as yourself: disconnecting Microsoft Teams from your Settings > Connections deletes the stored user token. If a user or admin revokes the delegated permissions in Microsoft Entra ID, Devin falls back to posting as “User Name by Devin”.
  • Previously granted admin consent: if your tenant granted tenant-wide admin consent to Devin in the past, a tenant admin can remove the app’s enterprise application permissions in Entra ID. Devin no longer uses them.
  • Data Handling: On uninstall, our integration stops processing events for that Team/Chat and cleans up related subscriptions/links.

Extend Devin with Microsoft 365

The Teams integration lets you talk to Devin from Teams. To let Devin also work with your Microsoft 365 content during a session, install the Microsoft 365 plugins from the marketplace. For example, you can ask Devin to read a spec from SharePoint, summarize an email thread, or schedule a follow-up meeting. Each plugin signs in with your Microsoft account and uses delegated Microsoft Graph permissions, so Devin can only access what the signed-in account can access. Depending on your tenant’s settings, an admin may need to grant consent for those permissions. You can install only the plugins you need. See MCP servers and marketplace to install and configure them.

Known issues

Messages in a 1:1 chat with Devin AI show “Failed to send.” This happens when an older version of the Devin AI app is still installed. To fix it, update the Devin AI app to the latest version everywhere it’s installed: your personal app, and every Team and group chat where it was added.
Microsoft Teams chat with Devin AI showing a "Failed to send." error
Some group chat members can’t see or @mention Devin AI. When someone adds an app to a group chat, every other member needs permission to use that app in order to see it in the chat roster or in the @mention picker. If the tenant’s app permission policy in the Teams admin center blocks third-party apps (globally or for specific users/groups), only users who are allowed to use the app will see it. For everyone else, the bot is effectively invisible and can’t be tagged, even though it’s technically in the chat. To fix it, a Teams admin should go to Teams admin center > Teams apps > Manage apps, make sure “Devin AI” is allowed, and check the app permission policies assigned to the affected users so the app is permitted for them. Once that’s done, the other members may need to refresh their Teams client for the bot to show up in the @mention picker.