NOTE: These samples are designed to help understand Microsoft Teams platform capabilities and scenarios. If you are looking for production ready apps then please visit App Templates for Microsoft Teams
The easy way to browse through all the samples is to visit the Microsoft 365 Sample Solution Gallery
Ready to try sample app manifests
Teams Toolkit samples
Getting Started Samples and Tutorials
Tabs samples
Bots samples (using the v4 SDK)
Messaging Extensions samples (using the v4 SDK)
Webhooks and Connectors samples
Graph APIs
Calls and online meetings bots
Meetings samples
Actions Preview
Scenario specific samples
The Teams Toolkit is an extension on Visual Studio Code and Visual Studio. It enable Teams developers to create and deploy Teams apps with integrated identity, access to cloud storage, data from Microsoft Graph, and other services in Azure and M365 with a "zero-configuration" approach to the developer experience. And Sample Apps are provided in Teams Toolkit. Download and try it by today! Learn more about Teams Toolkit .
Sample Name
Description
C#
TypeScript
App Manifest
1
Hello World
Microsoft Teams hello world sample app.
View
View
View
Sample Name
Description
C#
TypeScript
JavaScript
App Manifest
1
Personal tabs
Sample app showing custom personal Tab with ASP. NET Core
MVC , Razor
Yeoman Generator
View
2
Personal tab quick-start
Sample personal tab quick-start app.
View
View
3
Personal tab with SSO quick-start
Sample personal tab with SSO hello world app.
View
View
View
4
Channel and group tabs
Sample app showing custom group and channel Tab with ASP. NET Core
MVC , Razor
Yeoman Generator
View
5
Channel and group tab quick-start
Sample channel and group tab hello world app.
View
View
View
6
Channel and group tab with SSO quick-start
Sample channel and group tab with SSO hello world app.
View
View
View
7
SPFx Tab
Sample app showing Microsoft Teams tabs using SharePoint Framework
View
8
Tab SSO
Microsoft Teams sample app for tabs Azure AD SSO
View
View
9
Config Tab Authentication
Microsoft Teams sample app for config tabs Azure AD authentication
View
View
10
Deep Link consuming Subentity ID
Microsoft Teams sample app for demonstrating deeplink from Bot chat to Tab consuming Subentity ID
View
View
11
Integrate graph toolkit component in teams tab
Microsoft Teams tab sample app for demonstrating graph toolkit component
View
View
12
Device permissions
Microsoft Teams tab sample app for demonstrating device permissions
View
View
13
Build tabs with Adaptive Cards
Microsoft Teams tab sample code which demonstrates how to Build tabs with Adaptive Cards
View
View
View
14
Tab in stage view
Microsoft Teams tab sample app for demonstrating tab in stage view
View
View
View
15
Create Conversational tab
Microsoft Teams tab sample app for demonstrating create conversation tab
View
View
View
16
Product inspection
Demonstrating a feature where user can scan a product and mark it as approved/rejected.
View
View
View
17
Staggered Permission
This sample demos to get staggered graph api permissions.
View
View
View
18
Tab people picker
This is an tab app which shows the feature of client sdk people picker.
View
View
View
19
Tab channel context
This sample shows the contents of tab context object in a private and shared channel.
View
20
Tab app monetization
This sample shows how to open purchase dialog and trigger purchase flow using teams-js sdk.
View
21
Personal Tab with Nav-Bar menu
Add multiple actions to the upper right in Nav-Bar and build an overflow menu for extra actions in an app.
View
22
App Caching in Meetings
This sample shows how to improve the subsequent loading time of an App.
View
23
Tab Multi Hub
Interact with the user's calendar, mail, profile, geolocation from personal tabs app.
View
24
tab-ui-templates
This sample app can help you better understand how apps should look and behave in Microsoft Teams. The app includes examples of tested, high-quality UI templates that work across common Teams use cases (such as dashboards or forms).
View
25
Tab External Auth
This sample illustrates how to implement Google auth using external auth providers.
View
26
Tab Meeting Tanscript Recording
This sample shows meeting transcripts and recordings.
View
View
NOTE:
Visit the Bot Framework Samples repository to view Microsoft Bot Framework v4 SDK task-focused samples for C#, JavaScript, TypeScript, and Python.
Sample Name
Description
.NET
JavaScript
Python
Java
App Manifest
1
Teams Conversation Bot quick-start
Messaging and conversation event handling hello world.
View
2
Teams Conversation Bot SSO quick-start
Messaging and conversation event handling hello world with SSO.
View
View
3
Teams Conversation Bot
Messaging and conversation event handling also includes read receipt event functionality in personal scope.
View
View
View
View
View
4
Message Reactions
Demonstrates how to create a simple bot that responds to Message Reactions
View
View
View
View
5
Authentication with OAuthPrompt
Authentication and basic messaging in Bot Framework v4.
View
View
View
View
View
6
Teams File Upload
Exchanging files with a bot in a one-to-one conversation.
View
View
View
View
View
7
Task Module
Demonstrating how to retrieve a Task Module and values from cards in it, for a Messaging Extension.
View
View
View
View
View
8
Start new thread in a channel
Demonstrating how to create a new thread in a channel.
View
View
View
View
View
9
Universal bots
Teams catering bot demonstrating how to use Universal bots in Teams
View
10
Sequential workflow adaptive cards
Demonstrating on how to implement sequential flow, user specific view and upto date adaptive cards in bot.
View
View
View
11
Channel messages with RSC permissions
Demonstrating on how a bot can receive all channel messages with RSC without @mention.
View
View
View
12
Bot with SharePoint file to view in Teams file viewer
This sample demos a bot with capability to upload files to SharePoint site and same files can be viewed in Teams file viewer.
View
View
13
Type ahead search control on Adaptive Cards
This sample shows the feature of type ahead search (static and dynamic) control in Adaptive Cards.
View
View
View
14
People picker control in Adaptive Cards
This sample shows the feature of people picker control in Adaptive Cards.
View
View
View
15
Proactive Messaging sample
This sample shows how to save user's conversation reference information to send proactive reminder message using Bots. This uses Teams toolkit for Visual Studio Code to provide scaffolding experience.
View
16
Proactive Tab Conversations
Using a bot to create and store conversations that can be later used inside a sub-entity, tab conversation. This sample includes the details required to proactively message a channel from a bot, set-up and store details for channel tab conversations, and viewing channel conversations from a personal app.
View
17
Suggested Actions Bot
This sample shows the feature where user can send suggested actions using bot.
View
View
View
18
Adaptive Card Actions Bot
This sample shows the feature where user can send adaptive card with different actions using bot.
View
View
View
19
SSO for your Adaptive Cards
This sample code demonstrates how to get enable SSO authentication for your Adaptive Cards Universal Actions in bot.
View
View
20
Different formatting on cards
This sample feature shows how to use different formatting on cards using bot.
View
View
21
Different types of cards using bot
This sample shows the feature where user can interact with different types of cards using bot like Adaptive, hero, list, Office 365 Connector, receipt, sign in, and thumbnail cards and card collections.
View
View
22
User specific views in Adaptive cards
This sample shows the different ways developers can consume user specific views in Adaptive cards.
View
View
23
Bot configuration app with type ahead search control.
This sample demonstrates the features of bot configuration and reconfiguration for both teams and group chats, including a type-ahead search (static and dynamic) control on Adaptive Cards.
View
24
Tag mention bot
This sample app demonstrates the use of tag mention funtionality in teams scope using Bot Framework.
View
View
Sample Name
Description
.NET
JavaScript
1
Proactive Messaging
Sample to highlight solutions to two challenges with building proactive messaging apps in Microsoft Teams.
View
2
Sharepoint List Bot
This sample app shows the interaction between teams bot and SharePoint List, Bot saves the specified details in SharePoint List as back-end
View
3
Teams Virtual Assistant
Customized virtual assistant template to support teams capabilities.
View
NOTE:
Visit the Bot Framework Samples repository to view Microsoft Bot Framework v4 SDK task-focused samples for C#, JavaScript, TypeScript, and Python.
Sample Name
Description
.NET
JavaScript
Python
Java
App Manifest
1
Messaging extensions - search quick-start
Hello world Messaging Extension that accepts search requests and returns results.
View
View
2
Messaging extensions - search
Messaging Extension that accepts search requests and returns results.
View
View
View
View
View
3
Messaging extensions - action quick-start
Hello world Messaging Extension that accepts parameters and returns a card. Also, how to receive a forwarded message as a parameter in a Messaging Extension.
View
View
4
Messaging extensions - action
Messaging Extension that accepts parameters and returns a card. Also, how to receive a forwarded message as a parameter in a Messaging Extension.
View
View
View
View
View
5
Messaging extensions - auth and config
Messaging Extension that has a configuration page, accepts search requests and returns results after the user has signed in.
View
View
View
6
Messaging extensions - SSO auth
Messaging Extension that has a configuration page, accepts search requests and returns results with SSO.
View
View
7
Messaging extensions - action preview
Demonstrates how to create a Preview and Edit flow for a Messaging Extension.
View
View
View
View
View
8
Link unfurling
Messaging Extension that performs link unfurling.
View
View
View
View
View
9
Messaging extension - Adaptive Card based loop components
Demonstrates how to create Messaging extension with adaptive card-based loop components.
View
View
View
10
Messaging Extensions AI - Sentiment Analysis
Messaging Extension with AI capability that performs sentiment analysis (positive/negative/neutral) for messages posted in Microsoft Teams chat
View
View
Sample Name
Description
.NET
JavaScript
Python
1
Link unfurling demo of Reddit
Messaging Extension with Link Unfurling Samples for Reddit Links
View
2
Link unfurling - setup a meeting
This sample illustrates a common scenario where a user shares a link to a resource with a group of users, and they collaborate to review it in a meeting.
View
Sample Name
Description
C#
JavaScript
1
Connectors
Sample Office 365 Connector generating notifications to teams channel.
View
View
2
Generic connectors sample
Sample code for a generic connector that's easy to customize for any system which supports webhooks.
View
3
Outgoing Webhooks
Samples to create "Custom Bots" to be used in Microsoft Teams.
View
View
4
Authentication in todo Connector App
This is a sample app which shows connector authentication and sends notification on task creation.
View
5
Incoming Webhook
This is a sample used to send card using incoming webhook.
View
View
Sample Name
Description
C#
JavaScript
App Manifest
1
Resource Specific Consent (RSC)
This sample illustrates how you can use Resource Specific Consent (RSC) to call Graph APIs. .
View
View
View
2
Graph API Channel Life Cycle
This sample illustrates how you can use Graph API Channel Life Cycle to call Graph APIs. .
View
View
3
Graph API Teams App Installation Life Cycle
This sample illustrates how you can use Teams App Installation Life Cycle by calling Microsoft Graph APIs. .
View
View
4
Graph API Teams App Catalog Life Cycle
This sample illustrates how you programmatically manage lifecycle for your teams App in catalog by calling Microsoft Graph APIs. .
View
View
View
5
Graph API Chat Life Cycle
This sample illustrates how you can use Teams App Chat Life Cycle by calling Microsoft Graph APIs. .
View
View
6
Activity Feed Notification
Microsoft Teams sample app for Sending Activity feed notification using Graph API in a Teams Tab.
View
View
7
Proactive installation of App and sending proactive notifications
This sample illustrates how you can use Proactive installation of app for user and send proactive notification by calling Microsoft Graph APIs.
View
View
View
8
Change Notification
This sample app demonstrates sending change notifications to user presence in Teams based on user presence status.
View
View
9
Graph Pinned Message
This is a sample application which demonstrates how to pin messages in chat using Graph api.
View
View
10
Graph Bulk Meetings
This is an sample application which shows how to create Teams meetings in bulk using Graph api.
View
View
11
Graph Meeting Notification
This is a sample application which demonstrates the use of online meeting subscription and sends you the notifications in chat using bot.
View
View
12
Change Notifications Team/Channel
This sample application which demonstrates use of Team/Channel subscription that will post notifications when user create/edit/delete team/channel using Graph api.
View
View
13
graph-teams-tag
This is a sample application which demonstrates how to use CRUD Graph operations within tab related to team tags.
View
View
Sample Name
Description
C#
1
Calling and Meeting bot
This sample app demonstrate how a Bot can create a call, join a meeting and transfer the call
View
2
Local Media Samples
Local media samples give the developer direct access to the inbound and outbound media streams.
View
3
Remote Media Samples
The Incident Bot sample is a Remote Media sample demonstrating a simple incident process workflow started by a Calling Bot..
View
Sample Name
Description
C#
JavaScript
App Manifest
1
Meetings Extensibility
Microsoft Teams meeting extensibility sample: token passing
View
View
2
Meetings notification
Microsoft Teams meeting extensibility sample for interacting with in-meeting notifications
View
View
3
Meetings SidePanel
Microsoft Teams meeting extensibility sample for iteracting with Side Panel in-meeting
View
View
4
Details Tab in Meetings
Microsoft Teams meeting extensibility sample for iteracting with Details Tab in-meeting
View
View
View
5
Meetings Stage View
Enable and configure your apps for Teams meetings to use in stage view
View
View
View
6
Meeting Events
Get real time meeting events
View
View
View
7
Meeting Recruitment App
Sample app showing meeting app experience for interview scenario.
View
View
View
8
Meeting Transcript App
This is a sample application which demonstrates how to get Transcript using Graph API and show it in the task module.
View
View
9
Meeting signing programmatic share to stage
Demonstrating the programmatic share to stage feature, by means of a document signing in a meeting.
View
10
Meeting Live Caption
This is a sample meeting side panel application which demonstrates how to enable live caption in the meeting and using the CART link how to send caption in live meeting.
View
View
11
Anonymous user support
This sample app shows anonymous users support in teams meeting apps.
View
View
12
Live coding interview using Shared meeting stage
This sample demos a live coding in a teams meeting stage.
View
View
13
Meeting-Tabs
This sample shows app stage view, Mute/Unmute Teams meeting audio call and Side panel.
View
View
14
meetings-attendance-report
This is a sample application which demonstrates how to get meeting attendance report using Graph API and send it in meeting chat using bot.
View
View
15
meetings-audio-state
This is an sample tab (side panel) application which shows how to mute/unmute Teams meeting audio using toggle Incoming Client Audio API.
View
16
meetings-context-app
This sample shows the contents of meeting tab context object in a meeting tab and using bot's meeting API, meeting participant details and meeting details are sent to user.
View
View
Sample Name
Description
C#
JavaScript
App Manifest
1
Actions across Microsoft 365
This sample contains preview documentation for (Microsoft 365 extended Teams apps) Actions in Microsoft 365 app(microsoft365.com).
View
Scenario specific samples
Sample Name
Description
C#
JavaScript
App Manifest
1
Task Modules
Sample app showing off the Teams Task Module, a way to invoke custom code from a bot, a tab, or both!
View
View
View
2
Authentication
Sample illustrating seamless inline authentication for Microsoft Teams apps.
View
3
Complete Samples
Sample covering multiple scenarios - dialogs, ME, and facebook auth.
View
View
4
Region Selection App
This app contains a bot and Tab which is helpful to set the region
View
View
5
App Localization
Microsoft Teams app localization using Bot and Tab
View
View
View
6
App SSO
Microsoft Teams app SSO for Tab, Bot, ME - search, action, linkunfurl
View
View
View
7
App Installtion using QR code
This sample demos app installation using QR code of application's app id
View
View
View
8
Archive groupchat messages
Demonstrating on how a bot can archive groupchat messages and send it to user as a file.
View
View
9
App check in location
Demonstrating feature where user can checkin with current location and view all previous checkins.
View
View
View
10
Message reminder setup through messaging extension
Demonstrating a feature where user can schedule a task from messaging extension action command and get a reminder card at a scheduled time
View
View
View
11
Bot daily task reminder
This sample demos a feature where user can schedule a recurring task and get a reminder on the scheduled time
View
View
View
12
Tab request approval
Demonstrating a feature where user can raise the requests and manager will be notified about the requests and manager will be redirected to approve/reject the request from received notification.
View
View
View
13
Bot request approval
Demonstrating a feature where user can send task request to his manager using universal adaptive card and manager can approve/reject the request.
View
View
View
14
Join the Team using QR code
This sample demos a feature where user can join a team using QR code containing the team's id.
View
View
View
15
Activity feed broadcast
Demonstrating a feature to notify any message to all members of the organisation using activity feed notification .
View
View
16
App complete auth
This sample demos authentication feature in bot,tab and messaging extension.
View
17
Release Management
This is a sample used to send workitem notification using Azure webhook.
View
View
18
Link unfurling for 'Share to teams'
This sample demos the feature of link unfurling for Share to teams.
View
19
App Icon Badging In Microsoft Teams Meetings
This sample app shows the feature of sending app icon badging in Teams' meetings.
View
View
20
Teams Open AI Embeddings And Redis Search based On Uploaded File Using Bot
This Open AI sample app demonstrates the user search functionality using Open AI embeddings and completion APIs.
View
21
Combined Tab and Office Add-in
Demonstrates using add-in to take action on specific Office documents and using tab to aggregate data about all those specific actions.
View
View
22
Sharepoint tab request approval
This sample app demonstrates the usage of SharePoint Embedded for storage in teams.
View
App Name
Description
Code
1
QBot
QBot is a solution designed for classroom teaching scenarios which allows teachers, tutors, and students to intelligently answer each other's questions within the Microsoft Teams collaboration platform.
View
2
Resource Hub
Resource Hub is a solution designed for all the help you need to use Teams, all in one place.
View
The issue tracker is for issues , in other words, bugs and suggestions.
If you have a question , feedback or suggestions , please check our support page .
This project welcomes contributions and suggestions. Most contributions require you to agree to a
Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us
the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com .
When you submit a pull request, a CLA bot will automatically determine whether you need to provide
a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions
provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct .
For more information see the Code of Conduct FAQ or
contact [email protected] with any additional questions or comments.