Microsoft Teams
The Microsoft Teams node integrates with Microsoft Teams through the Microsoft Graph API v1.0. You can manage team channels, send messages to channels and chats, query team membership, and retrieve conversation history.
Common uses include:
- Incident notifications and war room channel creation.
- Deployment status updates to team channels.
- Approval workflows with direct messages.
- Audit and reporting on channel activity.
Before You Use This Node​
| What you need | Where to set it up | Why it matters |
|---|---|---|
| Microsoft Teams connection | Connections | Provides OAuth 2.0 credentials for Graph API access. |
| Team IDs, channel IDs | Global Variables | Avoid hardcoding IDs — store them as variables and reference with expressions. |
Connection​
Requires a Microsoft Teams connection in the Global Configurator. Supports two grant types:
| Grant Type | When to Use |
|---|---|
client_credentials (app-only) | Service-to-service automation with no user context |
password (delegated) | Workflows that act on behalf of a specific user |
Connection fields:
| Field | Required | Description |
|---|---|---|
tenantId | Yes | Azure AD tenant ID |
clientId | Yes | Application (client) ID from Azure AD app registration |
clientSecret | Yes | Client secret value |
username | For delegated | User principal name (e.g., user@contoso.com) |
password | For delegated | User password |
grantType | No | client_credentials or password. Auto-detected if omitted |
Required Graph API permissions: Team.ReadBasic.All, Channel.ReadBasic.All, Channel.Create, Channel.Delete.All, ChannelMessage.Read.All, ChannelMessage.Send, Chat.ReadWrite, User.Read
Actions​
| Action | Description |
|---|---|
teams:createChannel | Create a new channel in a team |
teams:deleteChannel | Delete a channel from a team |
teams:getChannel | Get details of a specific channel |
teams:updateChannel | Update a channel's name or description |
teams:listChannels | List all channels in a team |
teams:getChannelMessages | Retrieve messages from a channel |
teams:sendMessageToChannel | Post a message to a channel |
teams:listChats | List the authenticated user's chats |
teams:getChatMessage | Retrieve a specific chat message |
teams:sendOneToOneMessage | Send a direct message in a chat |
teams:listMyTeams | List teams the current user belongs to |
teams:whoami | Identify the authenticated user or app |
Channel Operations​
teams:createChannel​
Creates a new channel within a team.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | Yes | The ID of the team |
displayName | string | Yes | Display name for the new channel |
description | string | No | Channel description |
membershipType | string | No | standard or private. Defaults to standard |
teams:deleteChannel​
Deletes a channel from a team. This action is irreversible.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | Yes | The ID of the team |
channelId | string | Yes | The ID of the channel to delete |
teams:getChannel​
Retrieves details of a specific channel.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | No | The ID of the team |
channelId | string | Yes | The ID of the channel |
teams:updateChannel​
Updates a channel's display name, description, or both. At least one of displayName or description must be provided.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | No | The ID of the team |
channelId | string | Yes | The ID of the channel to update |
displayName | string | No | New display name |
description | string | No | New description |
teams:listChannels​
Lists all channels in a team.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | Yes | The ID of the team |
Message Operations​
teams:getChannelMessages​
Retrieves messages from a channel.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | Yes | The ID of the team |
channelId | string | Yes | The ID of the channel |
teams:sendMessageToChannel​
Posts a message to a Teams channel. Supports plain text and HTML content.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teamId | string | Yes | The ID of the team |
channelId | string | Yes | The ID of the channel |
body | string | Yes | Content type — select from dropdown |
content | string | Yes | Message content (plain text or HTML) |
teams:getChatMessage​
Retrieves a specific message from a chat, or all messages if no message ID is provided.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
chatId | string | Yes | The ID of the chat |
messageId | string | No | Specific message ID. If omitted, returns all messages |
teams:sendOneToOneMessage​
Sends a direct message in an existing chat conversation.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
chatId | string | Yes | The ID of the chat |
body | string | Yes | Content type |
content | string | Yes | Message content |
Team & Identity Operations​
teams:listMyTeams​
Lists all teams the current user belongs to. Uses delegated authentication.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teams:listChats​
Lists the authenticated user's recent chats with participant details.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
teams:whoami​
Returns identity information about the authenticated user or service principal. Auto-detects delegated vs app-only auth from the connection.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
connectionId | string | Yes | Microsoft Teams connection reference |
Error Handling​
| Error Type | Cause | Retryable |
|---|---|---|
VALIDATION_ERROR | Missing or invalid required parameters | No |
NOTFOUND_ERROR | Connection ID not found in Global Configurator | No |
GENERAL_ERROR | Unexpected exception from Graph API or network | Yes, if transient |
Transient errors (timeouts, connection resets, TLS failures) are automatically retryable with retry strategies.
Output​
All actions return JSON results. Response keys from the Graph API are sanitized — dots (.) become underscores (_) and @ symbols are removed — so downstream steps can reference any field without issues.