# Teams SDK - Python Documentation > Microsoft Teams SDK - A comprehensive framework for building AI-powered Teams applications using Python. Using this SDK, you can easily build and integrate a variety of features in Microsoft Teams by building Agents or Tools. The documentation here helps by giving background information and code samples on how best to do this. IMPORTANT THINGS TO REMEMBER: - This SDK is NOT based off of BotFramework (which the _previous_ version of the Teams SDK was based on). This SDK is a completely new framework. Use this guide to find snippets to drive your decisions. - When scaffolding new applications, using the CLI is a lot simpler and preferred than doing it all by yourself. See the Quickstart guide for that. - It's a good idea to run `pyright` to make sure the code is correctly typed and fix any type errors. YOU MUST FOLLOW THE ABOVE GUIDANCE. ### 🚀 Getting Started - [Quickstart](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/quickstart.txt): Quick start guide for Teams SDK using the Teams CLI to create and run your first agent. - [Code Basics](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/code-basics.txt): Understanding the structure and key components of a Teams SDK application including the Application class, dependency injection, and project organization. ### Essentials - [App Basics](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/app-basics.txt): Comprehensive guide to the App class, the main entry point for Teams SDK agents that handles server hosting, request routing, authentication, and plugin management. - [Essentials](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/essentials.txt): Introduction to the core concepts of Teams SDK applications including events, activities, handlers, and the reactive paradigm for building intelligent agents. - [Listening To Events](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/listening-to-events.txt): Understanding how to listen to and handle events in Teams SDK applications, including user actions and application server events. - [App Authentication](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/app-authentication.txt): Configure app authentication in your Teams SDK application using client secrets, user managed identities, or federated identity credentials - [Teams API Client](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/teams-api-client.txt): Overview of the Teams API Client and how to use it to interact with conversations, meetings, and teams in your application. - [Graph API Client](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/graph-api-client.txt): Guide to using the Microsoft Graph API client to access Microsoft 365 data and services from your Teams SDK application. - Listening to Activities - [Listening To Activities](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/listening-to-activities.txt): Guide to handling Teams-specific activities like chat messages, card actions, and installs using the fluent router API. - Sending Messages - [Proactive Messaging](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/proactive-messaging.txt): Learn how to send proactive messages to users without waiting for them to initiate the conversation, including storing conversation IDs and sending notifications. - [Sending Messages](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/sending-messages.txt): Guide to sending messages from your Teams SDK agent, including replies, proactive messages, and different message types. - App Configuration - [Service URL Validation](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/service-url-validation.txt): How the Teams SDK validates service URLs to prevent outbound requests to unauthorized endpoints ### In-Depth Guides - [In-Depth Guides](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/in-depth-guides.txt): Advanced guides covering complex topics like AI integration, adaptive cards, dialogs, message extensions, and user authentication. - [🔒 User Authentication](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/user-authentication.txt): API guide to implement User Authentication with SSO in Teams Apps. - [Feedback](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/feedback.txt): Guide to implementing user feedback functionality in Teams applications, covering feedback UI components, event handling, and storage mechanisms for gathering and managing user responses to improve application performance. - [Meeting Events](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/meeting-events.txt): Guide to handling meeting events in Teams applications, covering meeting lifecycle events such as meeting start, meeting end, participant join, and participant leave events. - Adaptive Cards - [Building Adaptive Cards](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/building-adaptive-cards.txt): Guide to building Adaptive Cards with builder helpers for type-safe, maintainable UI development. - [Adaptive Cards](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/adaptive-cards.txt): Introduction to Adaptive Cards in Teams SDK applications for creating rich, interactive user experiences across various scenarios. - [Executing Actions](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/executing-actions.txt): How to implement interactive elements in Adaptive Cards through actions like buttons, links, and input submission triggers. - Dialogs - [Creating Dialogs](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/creating-dialogs.txt): :::tip If you're not familiar with how to build Adaptive Cards, check out the cards guide. Understan... - [Handling Dialog Submissions](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/handling-dialog-submissions.txt): Guide to processing dialog submissions in Teams applications, showing how to handle form data from both Adaptive Cards and web pages using dialog submission event handlers. - [Dialogs](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/dialogs.txt): Dialogs are a helpful paradigm in Teams which improve interactions between your agent and users. Whe... - [Handling Multi-Step Forms](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/handling-multi-step-forms.txt): Tutorial on implementing multi-step dialogs in Teams, demonstrating how to create dynamic form flows that adapt based on user input, with examples of handling state between steps and conditional navigation. - Message Extensions - [Action commands](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/action-commands.txt): Learn how to create action commands for message extensions that present modal dialogs to collect or display information in Teams. - [🔍 Search commands](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/search-commands.txt): Create search commands that allow users to search external systems and insert results as cards in Teams messages. - [📖 Message Extensions](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/message-extensions.txt): Overview of message extensions for enhancing user productivity with quick access to information and actions within Teams. - [⚙️ Settings](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/settings.txt): Add configurable settings pages to your message extensions to allow users to customize app behavior. - [🔗 Link unfurling](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/link-unfurling.txt): Enable your app to respond when users paste URLs by creating preview cards with additional information and actions. - Observability - [Middleware](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/middleware.txt): Create middleware for logging, validation, and other cross-cutting concerns using the app.use method. - [🗃️ Custom Logger](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/custom-logger.txt): Configure custom loggers in your Teams app to control log levels and output destinations. - [Observability](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/observability.txt): Monitor and track your Teams app performance with logging, middleware, and observability tools. - Ai - Server - [Static Pages](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/static-pages.txt): Shows how to host web apps. - [Self-Managing Your Server](https://microsoft.github.io/teams-sdk/llms_docs/docs_python/self-managing-your-server.txt): How to self-manage the HTTP server — bring your own Express, FastAPI, or any framework by implementing the HttpServerAdapter interface.