Athena connects to Teams with a tenant-restricted, per-user OAuth flow against
Microsoft Graph. Each channel or chat you connect becomes a catalog you can
open in Drive, reference in chat with
@, and use with Athena’s tools and
agents.What connecting Teams unlocks
- Read channel threads — list your teams and channels, read messages and their replies.
- Read chats — list and read your 1:1 and group chats.
- Send messages — post to a channel or reply in a chat from a session or an agent.
- Teams toolkit in any session —
list_teams_channels,read_teams_channel,send_teams_message,list_teams_chats,read_teams_chat,send_teams_chat_message.
Step 1 — Register the Entra ID app (admin, once)
Athena uses the customer’s own Entra ID (Azure AD) app registration, so your tenant keeps full control of consent, conditional access, and revocation.1
Create the app registration
In the Azure Portal, go to App registrations →
New registration.
- Name: e.g.
Athena Microsoft Teams - Supported account types: Accounts in this organizational directory only (single tenant)
- Redirect URI: platform Web, value:
2
Add the Microsoft Graph delegated permissions
Under API permissions → Add a permission → Microsoft Graph → Delegated
permissions, add every permission below, then click Grant admin consent
for <tenant>.
Athena requests the
https://graph.microsoft.com/.default scope, so the
permissions above must be present on the registration and admin-consented
before anyone connects — there is no incremental consent at sign-in time.
For a read-only connection, omit ChannelMessage.Send and
ChatMessage.Send; everything else still works.3
Create a client secret
Under Certificates & secrets → New client secret, create a secret and
copy its Value immediately (Azure only shows it once).
4
Collect the three values Athena needs
From the app’s Overview page plus the secret you just created:
- Directory (tenant) ID
- Application (client) ID
- Client secret
Step 2 — Enable Teams in Athena (admin, once)
This step is done by an Athena workspace admin or owner, and it applies to
the entire workspace — the app registration from Step 1 is saved once,
centrally, and every member then connects against it. Individual members
cannot do this themselves: until an Athena admin completes this step, the
Microsoft Teams connect option stays unavailable for everyone in the
workspace. This is a separate person from the Entra ID (Azure) administrator
in Step 1, though it may be the same person if they hold both roles.
1
Turn the integration on
Toggle Microsoft Teams on. The connect card only appears on the
Integrations page for members while this toggle is on.
2
Fill in the credentials and save
- Azure AD Tenant ID — restricts sign-in to accounts in your tenant only
- Client ID
- Client Secret — stored encrypted at rest; never returned by the API
Step 3 — Connect your channels and chats (each member)
Go to Integrations and click Microsoft Teams (Direct OAuth) → Connect Microsoft Teams (Direct).1
Sign in with Microsoft
A Microsoft sign-in popup opens, restricted to your tenant. Approve the
requested access.
2
Pick channels and chats
Athena shows the teams, channels, and chats your account can see. Select the
ones you want to connect — each becomes a catalog you can open in Drive,
reference with
@ in chat, and use with the Teams toolkit and agents.Troubleshooting
- “Configuration Required” dialog on Connect — the workspace toggle is on but the tenant ID / client ID / secret have not been saved yet. Finish Step 2.
- Sign-in fails with a tenant error — the account is not in the tenant configured in Step 2, or the app registration is not single-tenant.
- Sign-in succeeds but no teams or channels are listed — admin consent has
not been granted for
Team.ReadBasic.AllandChannel.ReadBasic.All. - Reading a channel fails while listing works —
ChannelMessage.Read.Allis missing or not admin-consented. - Redirect / reply URL mismatch — the app registration must have
https://api.athenaintel.com/api/teams-direct/oauth/callbackregistered under the Web platform.

