Microsoft has been busy updating the Teams PowerShell module over the past few months. And with each release there is always a mention of “modernized versions” of some commands. What is really happening is each PowerShell module is being rewritten to utilize the Teams Admin API experience. Let’s dig into this new API, start going through what is and isn’t possible. These posts are to help demystify the Teams Admin API experience.
NOTE: Please note these APIs are used by the PowerShell team and TAC. They could change any moment. They are not supported by Microsoft. They are not supported by me. Use at your own risk.
NOTE: I do not know if these are called Teams Admin API. I just picked the name because it sounded good in my head.
Create and Manage Teams using Rest API
These APIs are in addition to the traditional Microsoft Graph API experience. If you are not familiar with Microsoft Graph + Microsoft Teams, please take a moment to check out these articles:
Using the Teams Admin API allows you as the administrator to close the gap in administrative tasks. Imagine that you have taken the steps to automate several business processes using Microsoft Graph API to only discover that many of the policy and management of specific users is not possible today within Graph API. Some examples might includes:
- Enabling a user for Enterprise Voice
- Assigning a telephone number (Line URI)
- Setting and retrieve call forwarding settings
Of course, all these items are available via PowerShell and the Teams Admin Center (TAC). There are of course limitations to using the Teams Admin API. There is limited support for Application Permissions and since these are not officially published – Microsoft could change or remove them at a moment’s notice. Please note that these are the same APIs that are powering the TAC so I do not think we need to worry about them going away.
The following APIs are available for use through the Teams Admin API. As each is documented, we will update the links below:
- Get Teams Users
- Get Team User
- Update Teams User
- Policy Assignment to Teams User
- Batch Policy Assignment to Teams Users
- and more to come!!!