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
Ready to try sample 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
Scenario specific samples
Try it yourself - experience the Apps in your Microsoft Teams client
Here are all the samples which are deployed on Microsoft Azure and you can try it yourself by uploading respective app packages (.zip files links below) to one of your teams and/or as a personal app. (Sideloading must be enabled for your tenant; see steps here .) These apps are running on the free Azure tier, so it may take a while to load (warm up) if you haven't used it recently and it goes back to sleep quickly if it's not being used. Rest assured, once it's loaded it's pretty snappy.
Sample Name
Description
Manifest
1
SSO Demo
Microsoft Teams app SSO for Tab, Bot, ME - search, action, linkunfurl
View
2
Complete sample Demo
Complete sample to showcase various capabilities including bots, tabs, messaging extension
View
3
Task Module Demo
Sample app showing off the Teams Task Module, a way to invoke custom code from a bot, a tab, or both
View
4
Connectors
Sample Office 365 Connector generating notifications to teams channel.
View
5
Tabs with Adaptive Cards
Microsoft Teams tab sample code which demonstrates how to Build tabs with Adaptive Cards.
View
6
Meetings Stage View Demo
Enable and configure your apps for Teams meetings to use in stage view.
View
7
Meeting Events
Microsoft Teams sample app to get real time meeting events.
View
8
Channel messages with RSC permissions
Demonstrating on how a bot can receive all channel messages with RSC without @mention.
View
9
Meeting Recruitment App
Sample app showing meeting app experience for interview scenario.
View
10
App installation using QR code
Sample app that generates a QR or installs app using the QR code.
View
11
App checkin location
Demonstrating feature where user can checkin with current location and view all previous checkins.
View
12
Teams tab graph toolkit
This sample demos building teams tab using microsoft graph toolkit
View
13
Product inspection
Demonstrating a feature where user can scan a product and mark it as approved/rejected.
View
14
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
15
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
16
Message reminder setup through messaging extension
This sample demos a feature where user can schedule a task from messaging extension action command and get a reminder card at scheduled date and time.
View
17
Task approval using activity feed notification
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
18
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
19
Incoming Webhook
This sample is used to send card using incoming webhook.
View
20
People picker control in Adaptive Cards
This sample shows the feature of people picker control in Adaptive Cards.
View
21
App complete auth
This sample demos authentication feature in bot,tab and messaging extension.
View
22
Meeting signing programmatic share to stage
Demonstrating the programmatic share to stage feature, by means of a document signing in a meeting.
View
23
Tab people picker
This is an tab app which shows the feature of client sdk people picker.
View
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
1
Hello World
Microsoft Teams hello world sample app.
View
View
Sample Name
Description
C#
TypeScript
JavaScript
1
Personal tabs
Sample app showing custom personal Tab with ASP. NET Core
MVC , Razor
Yeoman Generator
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
5
Channel and group tab quick-start
Sample channel and group tab hello world app.
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 ,Teams Toolkit
9
Config Tab Authentication
Microsoft Teams sample app for config tabs Azure AD authentication
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
13
Build tabs with Adaptive Cards
Microsoft Teams tab sample code which demonstrates how to Build tabs with Adaptive Cards
View
View
14
Tab in stage view
Microsoft Teams tab sample app for demonstrating tab in stage view
View
View
15
Create Conversational tab
Microsoft Teams tab sample app for demonstrating create conversation tab
View
View
16
Product inspection
Demonstrating a feature where user can scan a product and mark it as approved/rejected.
View
View
17
Staggered Permission
This sample demos to get staggered graph api permissions.
View
View
18
Tab people picker
This is an tab app which shows the feature of client sdk people picker.
View
View
19
Tab channel context
This sample shows the contents of tab context object in a private and shared channel.
View
20
Tab meeting context
This sample shows the contents of meeting tab context object.
View
21
Tab app monetization
This sample shows how to open purchase dialog and trigger purchase flow using teams-js sdk.
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 Core
JavaScript
Python
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.
View
View
View
4
Message Reactions
Demonstrates how to create a simple bot that responds to Message Reactions
View
View
5
Authentication with OAuthPrompt
Authentication and basic messaging in Bot Framework v4.
View
View
View
6
Teams File Upload
Exchanging files with a bot in a one-to-one conversation.
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
8
Start new thread in a channel
Demonstrating how to create a new thread in a channel.
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
11
Channel messages with RSC permissions
Demonstrating on how a bot can receive all channel messages with RSC without @mention.
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
14
People picker control in Adaptive Cards
This sample shows the feature of people picker control in Adaptive Cards.
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
Sample Name
Description
.NET Core
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 Core
JavaScript
Python
1
Messaging extensions - search quick-start
Hello world Messaging Extension that accepts search requests and returns results.
View
2
Messaging extensions - search
Messaging Extension that accepts search requests and returns results.
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
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
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
6
Messaging extensions - auth and config
Messaging Extension that has a configuration page, accepts search requests and returns results with SSO.
View
7
Messaging extensions - action preview
Demonstrates how to create a Preview and Edit flow for a Messaging Extension.
View
View
View
8
Link unfurling
Messaging Extension that performs link unfurling.
View
View
View
Sample Name
Description
.NET Core
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
1
Resource Specific Consent (RSC)
This sample illustrates how you can use Resource Specific Consent (RSC) to call Graph APIs. .
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
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
8
Change Notification
This sample app demonstrates sending change notifications to user presence in Teams based on user presence status.
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
Scenario specific samples
Sample Name
Description
C#
JavaScript
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
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
Meetings Extensibility
Microsoft Teams meeting extensibility sample: token passing
View
View
5
Meetings Content Bubble Bot
Microsoft Teams meeting extensibility sample for iteracting with Content Bubble Bot in-meeting
View
View
6
Meetings SidePanel
Microsoft Teams meeting extensibility sample for iteracting with Side Panel in-meeting
View
View
7
Region Selection App
This app contains a bot and Tab which is helpful to set the region
View
8
App Localization
Microsoft Teams app localization using Bot and Tab
View
View
9
Details Tab in Meetings
Microsoft Teams meeting extensibility sample for iteracting with Details Tab in-meeting
View
View
10
App SSO
Microsoft Teams app SSO for Tab, Bot, ME - search, action, linkunfurl
View
View
11
Meetings Stage View
Enable and configure your apps for Teams meetings to use in stage view
View
View
12
Meeting Events
Get real time meeting events
View
View
13
Meeting Recruitment App
Sample app showing meeting app experience for interview scenario.
View
View
14
App Installtion using QR code
This sample demos app installation using QR code of application's app id
View
View
15
Archive groupchat messages
Demonstrating on how a bot can archive groupchat messages and send it to user as a file.
View
View
16
App check in location
Demonstrating feature where user can checkin with current location and view all previous checkins.
View
View
17
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
18
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
19
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
20
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
21
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
22
Activity feed broadcast
Demonstrating a feature to notify any message to all members of the organisation using activity feed notification .
View
View
23
App complete auth
This sample demos authentication feature in bot,tab and messaging extension.
View
24
App identity linking with sso
This sample demos mapping with aad id, facebook, and google account of user in bot, ME and tab.
View
25
Meeting signing programmatic share to stage
Demonstrating the programmatic share to stage feature, by means of a document signing in a meeting.
View
26
Live coding interview using Shared meeting stage
This sample demos a live coding in a teams meeting stage.
View
View
27
Release Management
This is a sample used to send workitem notification using Azure webhook.
View
View
28
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
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
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.