Microsoft provides several Microsoft Teams templates for different kinds of organizations. Currently, these templates are only accessed by using the Microsoft Graph API for creating teams, located at https://graph.microsoft.com/beta/teamsTemplates('<templateName>. When creating a team using a template, you provide the JSON representation of the team and any associated settings in a programmatic fashion and submit it via an HTTP POST call.
For example, the following template can be used to create a team using the standard template with channels named Announcements and Training:
POST https://graph.microsoft.com/beta/teams
Content-Type: application/json
{
"template@odata.bind": "https://graph.microsoft.com/beta/teamsTemplates('standard')",
"visibility": "Private",
"displayName": "Sample Team",
"description": "This is a sample team that configures multiple tabs and properties.",
"channels": [
{
"displayName": "Announcements",
"isFavoriteByDefault": true,
"description": "This Announcements channel is favorited by default."
},
{
"displayName": "Training",
"isFavoriteByDefault": true,
"description": "This Training channel is favorited by default and contains an example of pinned website and YouTube tabs.",
"tabs": [
{
"teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.web')",
"name": "A Pinned Website",
"configuration": {
"contentUrl": "https://docs.microsoft.com/en-us/microsoftteams/microsoft-teams"
}
},
{
"teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.youtube')",
"name": "A Pinned YouTube Video",
"configuration": {
"contentUrl": "https://tabs.teams.microsoft.com/Youtube/Home/YoutubeTab?videoId=X8krAMdGvCQ",
"websiteUrl": "https://www.youtube.com/watch?v=X8krAMdGvCQ"
}
}
]
},
],
"memberSettings": {
"allowCreateUpdateChannels": true,
"allowDeleteChannels": true,
"allowAddRemoveApps": true,
"allowCreateUpdateRemoveTabs": true,
"allowCreateUpdateRemoveConnectors": true
},
"guestSettings": {
"allowCreateUpdateChannels": false,
"allowDeleteChannels": false
},
"funSettings": {
"allowGiphy": true,
"giphyContentRating": "Moderate",
"allowStickersAndMemes": true,
"allowCustomMemes": true
},
"messagingSettings": {
"allowUserEditMessages": true,
"allowUserDeleteMessages": true,
"allowOwnerDeleteMessages": true,
"allowTeamMentions": true,
"allowChannelMentions": true
},
"discoverySettings": {
"showInTeamsSearchAndSuggestions": true
},
}
There are several Teams templates available by default. To use the default Teams templates, update the highlighted value in parentheses in theĀ "template@odata.bind": "https://graph.microsoft.com/beta/teamsTemplates('standard')" section of the JSON POST. You can use any of the following values:
- Standard ('standard')
- Education - Class Team ('educationClass')
- Education - Staff Team ('educationStaff')
- Education - Professional Learning Community ('educationProfessionalLearningCommunity')
- Healthcare - Ward ('healthcareWard')
- Healthcare - Hospital ('healthcareHospital')
- Retail - Store ('retailStore')
- Retail - Manager collaboration ('retailManagerCollaboration')
- Small Business - Executives Team ('SmallBusinessExecutive')
- Small Business - Finance ('SmallBusinessFinance')
Using templates is a great way to provide a standardized team creation experience for your organization.