WebHooks are automated messages sent from apps when something happens. They have a message—or payload— and are sent to a unique URL; named WebHook URL. This article will serve to assist with sending WebHook notifications to a Microsoft Teams channel.
Before setting up notifications to Teams, please read over our Alerts article to learn basic concepts and useful tips.
In order to set up WebHook notifications to Teams, you will need:
- A team created and channel (within the team) that you want messages to arrive in.
- Admin or super-admin user role within Hudu.
At any time, you can come back to the Hudu admin area >> Alerts >> edit specific alert to make changes to the alert.
Guides
Enabling Alerts
- Navigate to your Hudu admin area >> Alerts.
- Click (( + New Alert )).
- Give your alert a name.
- Select the expiration type from the choices and complete the required fields (see Alerts for more information).
- Click Configure WebHook and obtain the required Workflow URL from Teams.
- Provide payload delivery information in the WebHook payload field (must be valid JSON format).
- Save the alert by clicking Create Alert.
Obtaining Workflow URL in Teams
- Navigate to Microsoft Teams, and into the team & channel that you'd like messages to be sent to.
- Click on your Channel name >> Workflows.
- Or navigate to Apps on the left-hand side bar and search for and open Workflows, then select Create from the tab at the top.
- Find "Post to a channel when a webhook request is received" in the list of Teams templates.
- Make sure all apps have a valid connection.
- Click Next.
- Confirm the Team and Channel to post the card to.
- Click Add workflow.
- Copy the newly generated URL into Hudu WebHook alert settings exactly.
The existing Microsoft 365 connectors across all cloud platforms are being deprecated, and the creation of new Microsoft 365 connectors will soon be blocked. For more information, here is an article on the Retirement of Office 365 connectors with Microsoft Teams.
Transition from Office 365 connectors to Workflows
If you are currently using Office 365 connectors in Microsoft Teams, you will need to migrate your existing connectors to Workflows.
- Go the Workflows app in Teams and click on the "Create" tab at the top.
- Choose the type of workflow you want either from a template or from scratch.
- If you choose to create from a template, you can search for a workflow template that matches your Office connectors' functionality.
- If you choose to create from scratch, you can select the trigger and action for your workflow.
- The Workflows app can be accessed within a chat or channel by right-clicking on the conversation, or by clicking on More options (...).
WebHook Payloads
In order to have a message generated in Microsoft Teams, you will need to deliver a payload. A payload is a piece of essential information in a data block that you send to or receive from the server when making API requests. The payload must be sent or received in JSON format:
{
"type":"message",
"attachments":[
{
"contentType":"application/vnd.microsoft.card.adaptive",
"content":{
"type":"AdaptiveCard",
"body":[
{
"type": "TextBlock",
"wrap":true,
"text": "For Samples and Templates, see [https://adaptivecards.io/samples](https://adaptivecards.io/samples)"
}
]
}
}
]
}
Here are some examples of WebHook payloads that can be placed in the "text" property of the "TextBlock" element for the Adaptive Card sent to Teams:
Expirations
{"text": "There are *$EXPIRATIONS_COUNT* expirations expiring within *$TRIGGER_DAYS* days. View: [$EXPIRATIONS_HUDU_URL]($EXPIRATIONS_HUDU_URL)"}
Websites
{"text": "*$WEBSITE_NAME* appears to be down. View: [$WEBSITE_HUDU_URL]($WEBSITE_HUDU_URL)"}
Records
{"text": "*$RECORD_NAME* [*$RECORD_TYPE*] has been *$ACTIONd*. View: [Link to Hudu]($HUDU_URL)"}
Testing WebHooks
- Navigate to your Hudu admin area >> Alerts and find your created alert from the list.
- Click on Test WebHook.
We are only testing your connection and payload, not your variables; sample variables will be filled in.
Alternative Guides
The guides below will serve to assist with setting up WebHook notifications to alternative common providers.