--- id: pymsteams version: "0.2.5" license: Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) license_treatment: permissive maintenance: active --- # pymsteams — Format messages and post to Microsoft Teams. License: permissive · Maintenance: active · Downloads: 7.6M/mo ## What it is and what it does pymsteams is a Python wrapper around Microsoft Teams' webhook connector API that lets you send formatted messages to Teams channels programmatically. It abstracts the JSON structure of Teams' Connector Card format, letting you build messages with text, titles, sections, images, facts, buttons, and interactive actions through simple method calls rather than hand-crafted JSON. The library supports both synchronous and asynchronous sending (via asyncio). You construct a connectorcard object with your webhook URL, add content and formatting through chainable methods, and call send() to post it. The package handles HTTP communication via requests and exposes the underlying response for debugging. It's commonly used for alerts, notifications, and automated reporting into Teams channels. Use it for: - Send deployment notifications or build alerts from CI/CD pipelines to a Teams channel. - Post monitoring or error alerts from applications directly to a Teams channel for visibility. - Generate formatted daily reports or summaries and deliver them to Teams automatically. - Create interactive cards with buttons and input fields for team workflows or approvals. - Notify teams of scheduled events, reminders, or status updates from backend systems. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Sends formatted messages to Microsoft Teams channels via webhook connectors, supporting plain text, rich cards with sections, buttons, and interactive actions. Yes. The package is stable (Production/Stable status), has low install friction, no known vulnerabilities, and solves a common need cleanly. The single dependency (requests) is widely trusted. The only caveat is that the project is actively seeking new maintainers, so verify that the maintenance status meets your long-term support expectations before relying on it for critical workflows. ## Install pip install pymsteams uv add pymsteams poetry add pymsteams ## Installing pymsteams Before you install: Low friction install with a single runtime dependency (requests). Active maintenance as of 2026-08-10, though the project is actively seeking new maintainers. License in practice: Apache License 2.0 is permissive; you can use, modify, and distribute this package freely provided you include the license text and note any changes. Quickstart: pip install pymsteams import pymsteams myTeamsMessage = pymsteams.connectorcard("https://your-webhook-url") myTeamsMessage.text("this is my text") myTeamsMessage.send() Requires a valid Microsoft Teams webhook URL obtained from your Teams channel connector settings. Verify before relying: - Whether async support (python 3.6+) is still available or if it requires a separate install extra. - Current status of the maintainer search and whether active development continues beyond bug fixes. ## Package facts - License: Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for… (full text in the JSON record) (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 7.6M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags microsoft teams webhook, teams connector card, send messages to teams, teams notification library, teams api wrapper, teams-integration, webhooks, notifications [View on SkillFed](https://skillfed.io/packages/pymsteams) · [View on PyPI](https://pypi.org/project/pymsteams/)