Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PowerShell) Microsoft Teams - Create Team (complex request)Create a team with multiple channels, installed apps, and pinned tabs using delegated permissions For more information, see https://docs.microsoft.com/en-us/graph/api/team-post?view=graph-rest-1.0&tabs=http#example-3-create-a-team-with-multiple-channels-installed-apps-and-pinned-tabs-using-delegated-permissions
Add-Type -Path "C:\chilkat\ChilkatDotNet47-9.5.0-x64\ChilkatDotNet47.dll" # This example assumes the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $http = New-Object Chilkat.Http # Build the following HTTP request: # POST https://graph.microsoft.com/v1.0/teams # Content-Type: application/json # # { # "template@odata.bind": "https://graph.microsoft.com/v1.0/teamsTemplates('standard')", # "visibility": "Private", # "displayName": "Sample Engineering Team", # "description": "This is a sample engineering team, used to showcase the range of properties supported by this API", # "channels": [ # { # "displayName": "Announcements", # "isFavoriteByDefault": true, # "description": "This is a sample announcements channel that is favorited by default. Use this channel to make important team, product, and service announcements." # }, # { # "displayName": "Training", # "isFavoriteByDefault": true, # "description": "This is a sample training channel, that 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/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" # } # } # ] # }, # { # "displayName": "Planning", # "description": "This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu.", # "isFavoriteByDefault": false # }, # { # "displayName": "Issues and Feedback", # "description": "This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu." # } # ], # "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 # }, # "installedApps": [ # { # "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.vsts')" # }, # { # "teamsApp@odata.bind": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('1542629c-01b3-4a6d-8f76-1938b779e48d')" # } # ] # } # Use this online tool to generate code from sample JSON: # Generate Code to Create JSON $json = New-Object Chilkat.JsonObject $json.UpdateString("`"template@odata.bind`"","https://graph.microsoft.com/v1.0/teamsTemplates('standard')") $json.UpdateString("visibility","Private") $json.UpdateString("displayName","Sample Engineering Team") $json.UpdateString("description","This is a sample engineering team, used to showcase the range of properties supported by this API") $json.UpdateString("channels[0].displayName","Announcements") $json.UpdateBool("channels[0].isFavoriteByDefault",$true) $json.UpdateString("channels[0].description","This is a sample announcements channel that is favorited by default. Use this channel to make important team, product, and service announcements.") $json.UpdateString("channels[1].displayName","Training") $json.UpdateBool("channels[1].isFavoriteByDefault",$true) $json.UpdateString("channels[1].description","This is a sample training channel, that is favorited by default, and contains an example of pinned website and YouTube tabs.") $json.UpdateString("channels[1].tabs[0].`"teamsApp@odata.bind`"","https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.web')") $json.UpdateString("channels[1].tabs[0].name","A Pinned Website") $json.UpdateString("channels[1].tabs[0].configuration.contentUrl","https://docs.microsoft.com/microsoftteams/microsoft-teams") $json.UpdateString("channels[1].tabs[1].`"teamsApp@odata.bind`"","https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.youtube')") $json.UpdateString("channels[1].tabs[1].name","A Pinned YouTube Video") $json.UpdateString("channels[1].tabs[1].configuration.contentUrl","https://tabs.teams.microsoft.com/Youtube/Home/YoutubeTab?videoId=X8krAMdGvCQ") $json.UpdateString("channels[1].tabs[1].configuration.websiteUrl","https://www.youtube.com/watch?v=X8krAMdGvCQ") $json.UpdateString("channels[2].displayName","Planning") $json.UpdateString("channels[2].description","This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu.") $json.UpdateBool("channels[2].isFavoriteByDefault",$false) $json.UpdateString("channels[3].displayName","Issues and Feedback") $json.UpdateString("channels[3].description","This is a sample of a channel that is not favorited by default, these channels will appear in the more channels overflow menu.") $json.UpdateBool("memberSettings.allowCreateUpdateChannels",$true) $json.UpdateBool("memberSettings.allowDeleteChannels",$true) $json.UpdateBool("memberSettings.allowAddRemoveApps",$true) $json.UpdateBool("memberSettings.allowCreateUpdateRemoveTabs",$true) $json.UpdateBool("memberSettings.allowCreateUpdateRemoveConnectors",$true) $json.UpdateBool("guestSettings.allowCreateUpdateChannels",$false) $json.UpdateBool("guestSettings.allowDeleteChannels",$false) $json.UpdateBool("funSettings.allowGiphy",$true) $json.UpdateString("funSettings.giphyContentRating","Moderate") $json.UpdateBool("funSettings.allowStickersAndMemes",$true) $json.UpdateBool("funSettings.allowCustomMemes",$true) $json.UpdateBool("messagingSettings.allowUserEditMessages",$true) $json.UpdateBool("messagingSettings.allowUserDeleteMessages",$true) $json.UpdateBool("messagingSettings.allowOwnerDeleteMessages",$true) $json.UpdateBool("messagingSettings.allowTeamMentions",$true) $json.UpdateBool("messagingSettings.allowChannelMentions",$true) $json.UpdateBool("discoverySettings.showInTeamsSearchAndSuggestions",$true) $json.UpdateString("installedApps[0].`"teamsApp@odata.bind`"","https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('com.microsoft.teamspace.tab.vsts')") $json.UpdateString("installedApps[1].`"teamsApp@odata.bind`"","https://graph.microsoft.com/v1.0/appCatalogs/teamsApps('1542629c-01b3-4a6d-8f76-1938b779e48d')") $http.SetRequestHeader("Content-type","application/json") # Adds the "Authorization: Bearer ACCESS_TOKEN" header. $http.AuthToken = "ACCESS_TOKEN" $resp = $http.PostJson3("https://graph.microsoft.com/v1.0/teams","application/json",$json) if ($http.LastMethodSuccess -eq $false) { $($http.LastErrorText) exit } # A successful response is indicated by a 202 response status code and an empty response body. $("Response Status Code: " + $resp.StatusCode) $("Response Body:") $($resp.BodyStr) if ($resp.StatusCode -ge 400) { $("Response Header:") $($resp.Header) $("Failed.") } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.