Language: English
In this tutorial we set up an automation that posts a message to a Microsoft Teams channel each time a new record is added to a form — directly from ActivityInfo, with no intermediary service. It uses ActivityInfo's built-in webhook step to post the message.
We assume the role of a coordinator whose team works in a Teams channel. The team tracks projects in a Projects form, and wants each newly submitted project announced in the channel as it arrives.
What you need
- A form to watch. Ours is a Projects form with a text field Project Name with the code
NAMEand a reference field Partner with the codePARTNER, but any form will do — adjust the field references to yours. - Permission to design the database in ActivityInfo.
- A Microsoft Teams channel, and permission to add a workflow to it. Teams receives webhooks through the Workflows app (the older "Incoming Webhook" Office 365 connectors have been retired by Microsoft).
Step 1: Create a webhook workflow in Microsoft Teams
In Teams, go to the channel that should receive the messages and click ⋯ (More options) next to the channel name and select Workflows.
Workflows Choose the webhook template — named "Send webhook alerts to a channel" or "Post to a channel when a webhook request is received", depending on your Teams version.
Send webhook alerts to a channel Select the "Team" and "Channel".
Team and Channel Copy the webhook link.
Copy webhook link
Step 2: Add the automation
In ActivityInfo, open the database, select the Database Settings.
Database Settings Select Projects form, and then select Automations in the form's detail pane.
Automations Select Add automation and name it "Announce new projects in Teams Chat".
Add automation Select Click here to get started and choose the On record added trigger.
On record added trigger Label the trigger and Select form.
Label the trigger Choose the Projects form and Select form.
Select Projects form Select Done.
Done
Step 3: Add the webhook step
Select Add a new step.
Add new step Select Action.
Action Select Fire webhook.
Fire webhook Give the step a label, for example "Post to Teams channel".
Paste the Teams workflow URL into the Webhook URL field.
Set the Payload format to Custom, so we can write exactly the message body the Teams workflow expects.
Label, webhook and payload format
Step 4: Write the message
Select Edit payload.
Edit payload Enter the message body. The Teams workflow accepts Adaptive Cards, which can carry headings, bold text, facts, columns, and buttons linking back to ActivityInfo. Design the card, then paste it into the payload editor wrapped in a message envelope, adding
${...}references where the record's values belong:Adaptive Card text renders
**double asterisks**as bold.{ "type": "message", "attachments": [ { "contentType": "application/vnd.microsoft.card.adaptive", "content": { "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.4", "body": [ { "type": "TextBlock", "size": "Medium", "weight": "Bolder", "text": "New project submitted" }, { "type": "TextBlock", "text": "**${NAME}** by ${PARTNER.NAME}, added by ${_user.name}", "wrap": true } ] } } ] }
Custom payload editor Select Done to close the payload editor, and Done again to close the step.
Complete configuration Select Save. The automation is now active.
Save automation
Step 5: Test
Add a test record to the Projects form.
Add record Within moments, the message appears in the Teams channel with the project's details filled in.
ActivityInfo notification received in Microsoft Teams
Going further
- Announce only some projects: add a filter step between the trigger and the webhook — for example
CONTAINS(SECTORS, "Health")to announce only health-sector projects. - Announce status changes instead: use the On record edited trigger with the filter
STATUS != _previous.STATUS, and include both values in the message:${_previous.STATUS} → ${STATUS}.
Related articles
- Webhook step — all payload formats in detail
- Send a message to Google Chat when a record is added
- Post a workflow when a webhook request is received in Teams (external link)
- Adaptive Cards designer (external link)