Skip to main content

Integration: Send Message on Microsoft Teams

The Send Microsoft Teams Message node allows your workflow to send automatic messages directly to Microsoft Teams team channels. Use this node to notify teams, communicate approval results, alert about new form responses, or any other relevant event in your process — all without leaving the Hashdata platform.

With this node, you keep teams informed in real time, reducing communication delays and centralizing notifications in the channels where people already work.

Prerequisite: Configure Teams Connection

Before using the Send Microsoft Teams Message node, you need to configure a connection with your Microsoft 365 account via the OAuth flow. Follow the steps below:

  1. Access Settings in the platform's side menu.
  2. Click on Integrations.
  3. Click on New connection and select Microsoft Teams.
  4. A Microsoft authorization window will open. Log in with the Microsoft 365 account that has access to the desired teams and channels.
  5. Grant the requested permissions so that Hashdata can send messages on behalf of the account.
  6. After authorization, the connection will appear in the list of available integrations.
Microsoft 365 account authorization

The Microsoft 365 account used in the connection needs to have permission to post messages in the team channels you want to use in the workflow. Connections created by a user are available for all workflows in the same space. If the connection expires or is revoked, ongoing instances that try to execute the node will fail — renew the connection on the integrations page when needed.

Node Configuration

When adding the Send Microsoft Teams Message node to the workflow canvas, the side panel will display the configuration fields below.

FieldDescriptionRequired
ConnectionSelect the Teams connection configured in the space integrations. The connection defines which Microsoft 365 account will be used to send messages.Yes
TeamSelect the Microsoft Teams team where the message will be sent. The team list is automatically loaded from the connected account.Yes
ChannelSelect the channel within the chosen team. After selecting the team, available channels are automatically loaded.Yes
Message titleText displayed as the title in the message card sent to Teams. Supports the use of {{variable}} for dynamic personalization.Yes
Message contentBody of the message sent to the channel. Supports the use of {{variable}} to include form data or data from previous workflow steps.Yes
Action buttonsAdd interactive buttons to the message (optional). Each button has a label and a destination URL. Use buttons to direct recipients to forms, approval links, or external pages.No
Use variables to personalize messages

In the Title and Content fields you can reference form responses and data from previous steps using the {{field_name}} syntax. For example: New request from {{requester_name}} received on {{response_date}}. Click the variable icon within the field to see all variables available for that workflow point.

Node Outputs

The Send Microsoft Teams Message node has two possible outputs on the canvas, allowing you to handle each scenario independently:

OutputWhen it occursWhat to do
SuccessThe message was successfully sent to the configured Teams channel.Continue the flow normally with the next workflow nodes.
ErrorFailed to send the message. Can occur due to expired connection, insufficient permissions, removed channel, or temporary instability of the Microsoft API.Connect a Send Email or Set Status node to record the error or notify a responsible person. Also check the connection validity in integrations.

By connecting nodes to both outputs, your workflow remains robust even in situations of failure in the Teams integration.

Difference from Slack

Although the Send Slack Message node and the Send Microsoft Teams Message node fulfill similar functions, there is an important difference in the message destination structure:

AspectSlackMicrosoft Teams
Destination structureChannel or direct user (one level of selection)Team → Channel (two mandatory levels of selection)
AuthenticationOAuth with Slack accountOAuth with Microsoft 365 account
Direct message to userSupported (type "user")Not available in this node (team channels only)
Action buttonsSupported (optional)Supported (optional)

In Teams, every message is published within a channel, which in turn belongs to a team. This means you will always need to select both levels — team and channel — before configuring the message content. In Slack, you can send the message directly to a channel or to a specific user, without the "team" layer.

This additional Teams hierarchy reflects the Microsoft platform's own organization and is important to consider when designing your workflows: make sure the selected team and channel exist and are accessible by the connected account.

Usage Example

Imagine an expense approval workflow where, after the manager's approval, the finance team needs to be notified in Teams. You can:

  1. Start the workflow with the Trigger: Form Response node (expense request form).
  2. Add an Approval node for the manager to review.
  3. Connect the approval output to the Send Microsoft Teams Message node.
  4. Configure the node to send to the #finance channel of the Finance and Accounting team with the title Expense approved: {{expense_title}} and content including the request details via variables.
  5. Handle the Error output with a Send Email node to notify the administrator in case the Teams send fails.

This way, the finance team is automatically notified in the correct channel, with no manual action needed after the approval.