# Teams Webhooks

## Microsoft Teams Setup and Integration

To send rich formatted alerts to your Microsoft Teams platform, follow the instructions below:

**(1)** From the target Teams Channel, click on the three-dot matrix and select **Workflows**:

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FYCj0NRlaGLO0ivJ3P8l5%2FScreenshot%202026-03-09%20104159.png?alt=media&#x26;token=004b2ea2-1d0c-4de4-b9cb-1669e15eda76" alt="Selecting Worfklows for a Teams Channel" width="243"><figcaption></figcaption></figure>

**(2)** Search for Workflows with "webhooks" in their title, and select "**Send webhook alerts to a channel**":

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FMAYORYYivsIOUsOxbwWt%2FScreenshot%202026-03-09%20104234.png?alt=media&#x26;token=241c4b79-ede3-480e-9d86-9a32c802ed46" alt="Adding a webhook workflow to a channel" width="338"><figcaption></figcaption></figure>

**(3)** Select the Team your Channel is in. The initial Channel should populate automatically:

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FcC6gKSrgENSU1cdHaV01%2FScreenshot%202026-03-09%20104250.png?alt=media&#x26;token=7a65013d-e67c-4d80-baa2-73569e6ff969" alt="Select Team and Channel for webhook" width="418"><figcaption></figcaption></figure>

**(4)** On the newly-created Workflow, copy the webhook link:

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FPNel5wBninmGCZNtNyia%2FScreenshot%202026-03-09%20104322.png?alt=media&#x26;token=862ab61e-f02e-4432-baf6-0cebe8f9f8d2" alt=""><figcaption></figcaption></figure>

**(5)** Login to the Keeper Admin Console and visit Reporting & Alerts > Alerts and click on an existing alert or create a new one.

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FW4Bd3lguB0Eoj4mvkLDL%2Fimage.png?alt=media&#x26;token=fda1488b-d857-4ccf-a021-a6856380b110" alt=""><figcaption><p>Add Alert</p></figcaption></figure>

**(6)** Select **Recipients** > **Add Recipients**&#x20;

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FawC1KW2o14hAIizltucw%2Fimage.png?alt=media&#x26;token=9ed17cda-7c12-4e6c-9e88-af247db5145b" alt=""><figcaption><p>Add Recipient (Teams)</p></figcaption></figure>

**(7)** Type in the Recipient Name and email address and click Add Webhook.

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FHvUIVOc3FoyIn72FtNPx%2Fimage.png?alt=media&#x26;token=45a12bb1-f22a-4f99-832a-858a4006ecf0" alt=""><figcaption><p>Add Webhook</p></figcaption></figure>

**(8)** Paste the Webhook URL from **Step 4** and then copy and paste the content for the HTTP body below.

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FvfA5oIYFt1VE9WwkJf2y%2Fimage.png?alt=media&#x26;token=6dfee334-0f18-49eb-adbd-780779c60791" alt=""><figcaption><p>Add URL and HTTP Body</p></figcaption></figure>

Copy this JSON content and paste it into the **HTTP Body** section in the screenshot above.

```
{
    "@type": "MessageCard",
    "@context": "http://schema.org/extensions",
    "themeColor": "0076D7",
    "summary": "Alert: #alert_name",
    "sections": [{
        "activityTitle": "#description",
        "activitySubtitle": "#alert_name",
        "activityImage": "https://keeper-email-images.s3.amazonaws.com/common/Keeper_512x512.png",
        "facts": [{
            "name": "User",
            "value": "#username"
        }, {
            "name": "Timestamp",
            "value": "#timestamp"
        }, {
            "name": "IP Address",
            "value": "#remote_address"
        }],
        "markdown": true
    }]
}
```

**(9)** Click **Save** on the recipient and click **Save** on the alert.

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2FFLtgwE79qdmuOgTYeEi6%2Fimage.png?alt=media&#x26;token=9b7a95db-bd6d-4233-a4e2-ea29a97ca567" alt="" width="375"><figcaption><p>Add Webhook</p></figcaption></figure>

<figure><img src="https://4290574019-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-LO5CAzpxoaEquZJBpYz%2Fuploads%2F3Siz0oJmhJm8NRpP1vgl%2Fimage.png?alt=media&#x26;token=de0606ce-55c9-46e3-bc97-4d56e3c04ec8" alt=""><figcaption></figcaption></figure>

That's it.  Please note that it can take up to 15 minutes for events to start transmitting. You can modify the HTTP Body according to your preferences.  See the [Microsoft Connectors website](https://docs.microsoft.com/en-us/microsoftteams/platform/webhooks-and-connectors/how-to/connectors-using) to customize the look and feel completely.

{% hint style="info" %}
Creating new Webhook body content and editing content may take up to 15 minutes to take effect.
{% endhint %}

## (Optional) Testing Webhooks from the Command Line

For Mac / Linux users, a quick way to test your format is to use curl:

* Put the Webhook content into a test file such as test.json
* Run the Curl command with the following syntax, replacing URL with your Slack or Teams URL

```
# On Mac and Linux:
curl -X POST -H 'Content-type: application/json' -d @test.json <WEBHOOK URL>

# On Windows
curl.exe -H "Content-Type:application/json" -d @test.json <WEBHOOK URL>
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keeper.io/en/enterprise-guide/webhooks/teams-webhooks.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
