Jeff Brown

Cloud and DevOps Engineer specializing in Microsoft 365, Azure, and PowerShell. Twitter | LinkedIn

When you create a team in Microsoft Teams, Microsoft 365 Groups are also created. These groups are responsible for maintaining group membership as well as the SharePoint site for holding team files.

There are lots of options to create a Microsoft Teams team and groups:

  • The Microsoft 365 admin center when creating a Microsoft 365 Group
  • The Teams admin center
  • From the Teams client
  • Using the Teams PowerShell module

However, as the title implies, not every Microsoft Teams team and group is created equally. In this post, you will learn some of these differences such as if the group is hidden from the address list and Outlook clients or how the email address is formatted.

Creating the Microsoft Teams and Groups

First, let’s walk through a few different ways to create Microsoft Teams and the corresponding Microsoft 365 group.

Microsoft 365 Admin Center

When creating a Microsoft 365 group, you have the option of also enabling it as a team. Required inputs include the team name, an owner, the primary email address, the visibility, and finally the option to add it as a team. Here is what my final team created in the admin center looks like:

Create Microsoft 365 Groups and enabling as a team
Creating a Microsoft 365 Group and enabling as a team

Teams Admin Center

Access the Teams admin center at https://admin.teams.microsoft.com. Under Teams > Manage teams, select + Add. Here, you only need to specify the team name, owner, and visibility, but no option to set the email address:

Create a Microsoft team in the Teams admin center
Create a team in the Teams admin center

Teams Client

The most common way people create teams is from the Teams client. In the Teams client, select the Teams ap on the left side, select Join or create a team, then Create team.

Creating a team in the Teams client

Create a team from scratch, input a team name, and select create. After the team creation, you can select to add additional members but no option to add other owners or set the email address:

Creating a team from the Teams client
Creating a team from the Teams client

Teams PowerShell Module

Finally, there is the Teams PowerShell module. Using the New-Team command, the only required parameters here are for DisplayName. To be consistent, I will make myself the owner, set the visibility to private, and enter a description:

New-Team -DisplayName "Team Created from Teams PowerShell" `
    -Description "Example of a team created from PowerShell" `
    -Visibility Private `
    -Owner jeff@jeffbrown.tech
Creating a team in PowerShell
Creating a team in PowerShell

Read more about how to connect to Microsoft Teams PowerShell in the new Microsoft Teams PowerShell module!

Comparing the Microsoft Teams Groups

With all the Microsoft Teams and their groups create, it is time to compare their different properties for consistency. Connecting out to Exchange Online PowerShell, compare these four groups using the Get-UnifiedGroup cmdlet.

Focus on the properties of their Name (or MailNickName), PrimarySmtpAddress, and if the groups are hidden from the Exchange address list and Outlook clients:

Get-UnifiedGroup -Identity "Team Create*" | `
    Select-Object DisplayName, Name, PrimarySmtpAddress, `
    HiddenFromExchangeClientsEnabled, HiddenFromAddressListsEnabled
Comparing teams and groups using Get-UnifiedGroup PowerShell cmdlet
Comparing teams and groups using Get-UnifiedGroup PowerShell cmdlet

What’s in a group name?

Take a look at the name property first. Teams created from both admin centers and the client have a consistent name property. This is the team name without spaces and adding a GUID. There must be a character limit for the team created from the M365 admin center.

However, the team created from PowerShell just appended “ms_teams_d60d57” before the GUID and did not use the team name. This name difference is also apparent on the PrimarySmtpAddress field:

Teams PowerShell does not use team name in email address or mailnickname.

The New-Team cmdlet does have a MailNickname parameter, so create another team specifying the mail nickname:

New-Team -DisplayName "Team Created from Teams PowerShell 2" `
    -Description "Example of a team created from PowerShell" `
    -Visibility Private `
    -Owner jeff@jeffbrown.tech `
    -MailNickName "teamcreatedfromteamspowershell2"
Creating a team in PowerShell and specifying the MailNickname property
Creating a team in PowerShell and specifying the MailNickname property

The resulting unified group now has a similar name, although the name hit a character limit again:

Team created from PowerShell with specified MailNickname value
Team created from PowerShell with specified MailNickname value

So moral of the story with Teams PowerShell is to specify the MailNickName property so your email address and nickname can match the team name.

Where does the group appear?

Next is where the group and team appear. Originally, every team you are a member of was also added to the Groups section in the Outlook client. This ended cluttering Outlook with lots of groups added below their email folders.

Another issue was each group was showing up in the Exchange global address list. This meant people were sending emails to the groups thinking they were a distribution list and causing confusion. Microsoft responded to community requests to automatically hide these team-related groups from both the clients and the address list.

Going back to the examples in the screenshot above, creating teams from the client and in PowerShell will hide the group from the Exchange address list and also prevent it from appearing in Outlook.

However, teams created from the Microsoft 365 admin center and Teams admin center do NOT follow this convention. For some reason, these teams are not hidden from the address list or from email clients.

Teams created from admin centers are not hidden by default
Teams created from admin centers are not hidden by default

For the team created from the M365 admin center, I can sort of understand why it is not hidden. The primary focus there is going in and creating a Microsoft 365 Group, then you have the option to turn it into a team. Not every M365 Group will be a team, and you probably want it to automatically show up in the address list and email clients.

However, the behavior when creating the team in the Teams admin center should mimic the behavior when creating the team from the client or in PowerShell. The Teams admin center should automatically hide the group to give the same experience and expectations.

Creating Groups and Teams in Graph API

As for Microsoft’s Graph API, you can create an M365 group and turn it into a team, but this has the same behavior as creating from the admin centers. The group will show up in the address list and clients.

However, Microsoft just released new support for Groups properties with hideFromOutlookClients and hideFromAddressLists. These can’t be specified during the group creation; instead, you have to issue the PATCH HTTP method after group creation to modify these values. Check out more on this announcement over at the Microsoft Graph: Developer Blog.

Conclusion

While many organizations lock down creating teams from their end users, hopefully this article will help you understand the nuances of how you (the admin) end up creating the team and the differences you’ll need to account for when doing so.

Questions or comments? If so, drop me a note below or find me on Twitter or LinkedIn to discuss further.

Reference:
What’s new in Microsoft Teams – July Roundup (2018)
Use the Exchange Online PowerShell V2 module
Get-UnifiedGroup
New-Team

This Post Has One Comment

Leave a Reply