microsoft-teams-api
API package for Microsoft Teams
Decision gist · record as of 2026-08-14
Yes, if you are building a Teams bot or integration. The package is actively maintained, has low install friction, carries a permissive MIT license, and provides the core typed API surface needed for Teams Bot Framework work. No known vulnerabilities as of 2026-08-14. Requires Python 3.11+.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.11 or later; async/await usage requires an async runtime context.
- Low install friction with a pure-Python wheel distribution.
- Active maintenance with a recent commit on 2026-08-13 and a release 10 days ago.
License · maintenance · safety
MIT (permissive) — MIT license permits commercial and private use with minimal restrictions, making it suitable for most deployment scenarios.
last release 2026-08-04 (10 days) · last repo commit 2026-08-13 · 62 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,033,734 downloads/mo, #4,464 on PyPI
Alternatives
Verify before relying
pip install microsoft-teams-api
from microsoft_teams.api import ClientCredentials, ApiClient
credentials = ClientCredentials(client_id="app-id", client_secret="app-secret")
api = ApiClient("https://smba.trafficmanager.net/amer/")
token_response = await api.bots.token.get(credentials)- Whether TokenCredentials accepts a callable or requires pre-fetched tokens
- Scope and completeness of Teams Bot Framework API coverage relative to official Microsoft SDKs
- Whether all API clients support async/await or only specific ones
What it is and what it does
microsoft-teams-api is a Python client library for integrating with Microsoft Teams via the Bot Framework. It wraps HTTP communication to Teams APIs and provides typed Pydantic models for activities, authentication flows (ClientCredentials and TokenCredentials), and specialized clients for bots, users, conversations, teams, and meetings. The library handles JWT token operations and validates incoming activity payloads against defined schemas.
Developers use it to build Teams bots and integrations that need to authenticate with Microsoft services, send and receive typed messages, and interact with Teams resources. It depends on microsoft-teams-cards, microsoft-teams-common, pydantic for validation, and pyjwt for token handling. The package targets Python 3.11+ and is maintained actively within the microsoft/teams.py monorepo.
Use it for
- Build a Teams bot that receives and responds to messages using typed Activity models for validation
- Authenticate with Microsoft Teams APIs using ClientCredentials for service-to-service scenarios
- Fetch bot and user tokens from Teams infrastructure for downstream Graph API calls
- Validate and deserialize incoming Teams activities in a webhook handler
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you are building a Teams bot or integration.
The package is actively maintained, has low install friction, carries a permissive MIT license, and provides the core typed API surface needed for Teams Bot Framework work. No known vulnerabilities as of 2026-08-14. Requires Python 3.11+.
Install
microsoft-teams-api on PyPI
Before you install
Low install friction with a pure-Python wheel distribution. Active maintenance with a recent commit on 2026-08-13 and a release 10 days ago. Requires Python 3.11 or later.
Requires Python 3.11 or later; async/await usage requires an async runtime context.
License in practice
MIT license permits commercial and private use with minimal restrictions, making it suitable for most deployment scenarios.
Quickstart
pip install microsoft-teams-api
from microsoft_teams.api import ClientCredentials, ApiClient
credentials = ClientCredentials(client_id="app-id", client_secret="app-secret")
api = ApiClient("https://smba.trafficmanager.net/amer/")
token_response = await api.bots.token.get(credentials)
Verify before relying
- Whether TokenCredentials accepts a callable or requires pre-fetched tokens
- Scope and completeness of Teams Bot Framework API coverage relative to official Microsoft SDKs
- Whether all API clients support async/await or only specific ones
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release <4.0,>=3.11 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 4 packagesmicrosoft-teams-cardsmicrosoft-teams-commonpydanticpyjwt |
| Maintenance | Actively maintained 10 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,033,734 / month, #4,464 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: microsoft_teams_api-2.0.15-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “microsoft teams bot api client”
- microsoft-teams-apiHTTP client library for Microsoft Teams Bot Framework APIs, providing…
- microsoft-teams-commonProvides shared utilities for Microsoft Teams SDK packages, including…
- microsoft-teams-appsFramework for building Microsoft Teams applications with…
Give your agent the search over MCP, or paste the wish link into any chat.
More WWW/HTTP packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
h11 is a pure-Python HTTP/1.1 protocol implementation that handles parsing and serializing HTTP messages without any built-in I/O, letting you integrate it with any network layer you choose.
HTTPX is a fully featured HTTP client library for Python that provides both sync and async APIs, with support for HTTP/1.1 and HTTP/2, plus an integrated command-line client.
Install it if you are building new projects or modernizing existing ones that rely on HTTP.
A minimal low-level HTTP client library that sends HTTP requests with thread-safe and task-safe connection pooling, supporting HTTP/1.1, HTTP/2, proxies, and both sync and async interfaces.
aiohttp is an async HTTP client and server framework built on asyncio, supporting both WebSockets and middleware-based routing for building concurrent web applications.
Install it if you need async HTTP client or server capabilities in asyncio-based applications.
See also microsoft-teams-apps · microsoft-agents-hosting-teams · stravalib · microsoft-agents-activity · pymsteams · microsoft-teams-cards · botframework-connector · mattermostwrapper · wandelbots_api_client · microsoft-agents-copilotstudio-client