> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.airweave.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.airweave.ai/_mcp/server.

# Teams

> Teams integration with Airweave

{/* AUTO-GENERATED CONTENT START */}

<img src="https://fdr-prod-docs-files-public.s3.us-east-1.amazonaws.com/airweave.docs.buildwithfern.com/2026-05-20T11%3A36%3A51.367Z/docs/pages/connectors/teams/icon.svg?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Content-Sha256=UNSIGNED-PAYLOAD&X-Amz-Credential=AKIA6KXJSKKNFOCF7G4B%2F20260807%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20260807T163035Z&X-Amz-Expires=604800&X-Amz-Signature=f8366ac11ecae23ee2af632291af68e9a0fd53ddd93f94bbe9747a8300e70e22&X-Amz-SignedHeaders=host&x-amz-checksum-mode=ENABLED&x-id=GetObject" alt="Teams logo" width="48" height="48" />

<h1>
  Teams
</h1>

This connector enables AI agents and RAG systems to retrieve context from Teams through Airweave's unified search layer.

## Configuration

Microsoft Teams source connector integrates with the Microsoft Graph API.

Synchronizes data from Microsoft Teams including teams, channels, chats, and messages.

It provides comprehensive access to Teams resources with proper token refresh
and rate limiting.

#### [View Source Code](https://github.com/airweave-ai/airweave/tree/main/backend/airweave/platform/sources/teams.py)

Explore the Teams connector implementation

### Authentication

This connector uses **OAuth 2.0 authentication**. You can connect through the Airweave UI or API using the OAuth flow.

**Supported authentication methods:**

* OAuth Browser Flow (recommended for UI)
* OAuth Token (for programmatic access)
* Auth Provider (enterprise SSO)

### Configuration Options

This connector does not have any additional configuration options.

## Data Models

The following data models are available for this connector:

#### TeamsUserEntity

Schema for a Microsoft Teams user.

Based on the Microsoft Graph user resource.
Reference: [https://learn.microsoft.com/en-us/graph/api/resources/user](https://learn.microsoft.com/en-us/graph/api/resources/user)

| Field                 | Type           | Description                                                                                    |
| --------------------- | -------------- | ---------------------------------------------------------------------------------------------- |
| id                    | str            | User ID from Microsoft Graph.                                                                  |
| display\_name         | str            | The name displayed in the address book for the user.                                           |
| user\_principal\_name | Optional\[str] | The user principal name (UPN) of the user (e.g., [user@contoso.com](mailto:user@contoso.com)). |
| mail                  | Optional\[str] | The SMTP address for the user.                                                                 |
| job\_title            | Optional\[str] | The user's job title.                                                                          |
| department            | Optional\[str] | The department in which the user works.                                                        |
| office\_location      | Optional\[str] | The office location in the user's place of business.                                           |
| web\_url\_override    | Optional\[str] | Link to the user in Microsoft 365.                                                             |

#### TeamsTeamEntity

Schema for a Microsoft Teams team.

Based on the Microsoft Graph team resource.
Reference: [https://learn.microsoft.com/en-us/graph/api/resources/team](https://learn.microsoft.com/en-us/graph/api/resources/team)

| Field              | Type            | Description                                                               |
| ------------------ | --------------- | ------------------------------------------------------------------------- |
| id                 | str             | Team ID from Microsoft Graph.                                             |
| display\_name      | str             | The name of the team.                                                     |
| description        | Optional\[str]  | An optional description for the team.                                     |
| visibility         | Optional\[str]  | The visibility of the group and team (Public, Private, HiddenMembership). |
| is\_archived       | Optional\[bool] | Whether this team is in read-only mode.                                   |
| classification     | Optional\[str]  | Classification for the team (e.g., low, medium, high business impact).    |
| specialization     | Optional\[str]  | Indicates whether the team is intended for a particular use case.         |
| internal\_id       | Optional\[str]  | A unique ID for the team used in audit logs.                              |
| web\_url\_override | Optional\[str]  | Link to open the team in Microsoft Teams.                                 |

#### TeamsChannelEntity

Schema for a Microsoft Teams channel.

Based on the Microsoft Graph channel resource.
Reference: [https://learn.microsoft.com/en-us/graph/api/resources/channel](https://learn.microsoft.com/en-us/graph/api/resources/channel)

| Field                     | Type            | Description                                                        |
| ------------------------- | --------------- | ------------------------------------------------------------------ |
| id                        | str             | Channel ID.                                                        |
| team\_id                  | str             | ID of the team this channel belongs to.                            |
| display\_name             | str             | Channel name as it appears to users.                               |
| description               | Optional\[str]  | Optional textual description for the channel.                      |
| email                     | Optional\[str]  | The email address for sending messages to the channel.             |
| membership\_type          | Optional\[str]  | The type of the channel (standard, private, shared).               |
| is\_archived              | Optional\[bool] | Indicates whether the channel is archived.                         |
| is\_favorite\_by\_default | Optional\[bool] | Indicates whether the channel is recommended for all team members. |
| web\_url\_override        | Optional\[str]  | A hyperlink that goes to the channel in Microsoft Teams.           |

#### TeamsChatEntity

Schema for a Microsoft Teams chat (1:1, group, or meeting chat).

Based on the Microsoft Graph chat resource.
Reference: [https://learn.microsoft.com/en-us/graph/api/resources/chat](https://learn.microsoft.com/en-us/graph/api/resources/chat)

| Field              | Type           | Description                                           |
| ------------------ | -------------- | ----------------------------------------------------- |
| id                 | str            | Chat ID.                                              |
| chat\_type         | str            | Type of chat (oneOnOne, group, meeting).              |
| topic\_label       | str            | Display label for the chat.                           |
| topic              | Optional\[str] | Subject or topic for the chat (only for group chats). |
| web\_url\_override | Optional\[str] | The URL for the chat in Microsoft Teams.              |

#### TeamsMessageEntity

Schema for a Microsoft Teams message (in channel or chat).

Based on the Microsoft Graph chatMessage resource.
Reference: [https://learn.microsoft.com/en-us/graph/api/resources/chatmessage](https://learn.microsoft.com/en-us/graph/api/resources/chatmessage)

| Field                  | Type                       | Description                                                |
| ---------------------- | -------------------------- | ---------------------------------------------------------- |
| id                     | str                        | Message ID.                                                |
| team\_id               | Optional\[str]             | ID of the team (if this is a channel message).             |
| channel\_id            | Optional\[str]             | ID of the channel (if this is a channel message).          |
| chat\_id               | Optional\[str]             | ID of the chat (if this is a chat message).                |
| reply\_to\_id          | Optional\[str]             | ID of the parent message (for replies).                    |
| message\_type          | Optional\[str]             | Type of message (message, chatEvent, systemEventMessage).  |
| created\_datetime      | Optional\[datetime]        | When the message was created.                              |
| subject                | str                        | The subject of the chat message.                           |
| body\_content          | Optional\[str]             | The content of the message body.                           |
| body\_content\_type    | Optional\[str]             | The type of the content (html or text).                    |
| from\_user             | Optional\[Dict\[str, Any]] | Details of the sender of the message.                      |
| last\_edited\_datetime | Optional\[datetime]        | Timestamp when edits to the message were made.             |
| deleted\_datetime      | Optional\[datetime]        | Timestamp at which the message was deleted.                |
| importance             | Optional\[str]             | The importance of the message (normal, high, urgent).      |
| mentions               | List\[Dict\[str, Any]]     | List of entities mentioned in the message.                 |
| attachments            | List\[Dict\[str, Any]]     | References to attached objects like files, tabs, meetings. |
| reactions              | List\[Dict\[str, Any]]     | Reactions for this message (e.g., Like).                   |
| web\_url\_override     | Optional\[str]             | Link to the message in Microsoft Teams.                    |

{/* AUTO-GENERATED CONTENT END */}