feat(microsoft-teams): new Microsoft Teams notification integration

Incoming-webhook / Power Automate Workflows, 3 commands: send message,
send Adaptive Card (title/text/facts/action button). Webhook-URL auth, stdlib-only.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Guillaume BOURGEOIS
2026-07-11 23:28:25 +02:00
parent e3c15ae972
commit df4cd98a9e
4 changed files with 258 additions and 0 deletions
@@ -0,0 +1,49 @@
id: microsoft_teams
name: Microsoft Teams
version: 1.0.0
description: "Microsoft Teams (incoming webhook / Power Automate Workflows) — SOC notification: post plain messages and rich Adaptive Cards (title, text, facts, optional action button) to a Teams channel. Webhook-URL authentication; stdlib-only, no extra Python dependencies."
changelog: "1.0.0 — Initial release: send message, send Adaptive Card."
category: notification
# Per-instance configuration. The webhook URL is created in Teams
# (Workflows / 'Post to a channel when a webhook request is received', or a
# classic Incoming Webhook connector). All messages POST to this URL.
config_schema:
properties:
webhook_url:
type: string
description: "Teams incoming webhook / Workflows URL"
x-soar-sensitive: true
required:
- webhook_url
commands:
- id: send_message
name: teams-send-message
description: "Post a plain-text message to the Teams channel."
inputs_schema:
properties:
text: { type: string, description: "Message text (Markdown supported)" }
required: [text]
outputs_schema: { properties: {} }
- id: send_card
name: teams-send-card
description: "Post an Adaptive Card built from a title, body text, optional facts, and an optional action button."
inputs_schema:
properties:
title: { type: string, description: "Card title" }
text: { type: string, description: "Card body text" }
facts: { type: string, description: "Optional key=value pairs, comma-separated (e.g. 'Severity=High,Host=web01')" }
action_title: { type: string, description: "Optional button label" }
action_url: { type: string, description: "Optional button URL (required if action_title is set)" }
required: [title]
outputs_schema: { properties: {} }
- id: test_connection
name: teams-test-connection
description: "Post a small connection-test message to verify the webhook (used by the Test button)."
risk: read
inputs_schema:
properties: {}
required: []
outputs_schema: { properties: {} }