Forum Discussion
Is there a way to change O365 group email address using powershell
My organization wants to change email address of O365 group. I am not able to find any power shell to change email address of already created O365 group. I tried below command but it is not working.
Set-unifiedgroup -identity testo365 -primarysmtpaddress test123O365@qqq.onmicrosoft.com
Can someone please provide your thoughts on this.
- If you want to update the Email Address of the Office 365 group, please follow below steps.
O365 Group Name :- Test O365Group
Current Email addres :- test.o365@abcd.onmicrosoft.com
Update to :- test.o365@abcd.com
Follow below script in powershell.
Set-UnifiedGroup -Identity "Test O365Group" -EmailAddresses: @{add="SMTP:test.o365@abcd.com"}
- Salvatore BiscariSilver Contributor
Give a look to this thread: https://techcommunity.microsoft.com/t5/Office-365-Groups/Renaming-of-O365-groups/td-p/4758
Hope it helps...
You seem to have one additional "-" character in front of the address, remove it and it should work fine.
- Deleted
I am not using that extra charecter. It was a mistake in my typo.
So do you get any error when running the cmdlet or?
- Yahkoob AyappallyBrass ContributorIf you want to update the Email Address of the Office 365 group, please follow below steps.
O365 Group Name :- Test O365Group
Current Email addres :- test.o365@abcd.onmicrosoft.com
Update to :- test.o365@abcd.com
Follow below script in powershell.
Set-UnifiedGroup -Identity "Test O365Group" -EmailAddresses: @{add="SMTP:test.o365@abcd.com"}- John KarlovichCopper Contributor
"
Yahkoob Ayappally wrote:
If you want to update the Email Address of the Office 365 group, please follow below steps.
O365 Group Name :- Test O365Group
Current Email addres :- test.o365@abcd.onmicrosoft.com
Update to :- test.o365@abcd.com
Follow below script in powershell.
@Set-UnifiedGroup -Identity "Test O365Group" -EmailAddresses: @{add="SMTP:test.o365@abcd.com"}If I use that command, I get the following error:
There are multiple primary SMTP addresses. Please ensure there is only one primary address for each address type."- Yahkoob AyappallyBrass Contributor
Hi John,
Steps to change Office 365 group Email address:-
Current SMTP address :- test.o365group@abcd.onmicrosoft.com
Required SMTP address :- test.o365group@abcd.com
Follow the below steps in power shell using Global Administrator Credentials,
1. Connect to Exchange Online via Power shell using Global Administrator Credentials and run the below commends. First two command run separately.
Set-ExecutionPolicy Unrestricted
Start-service winrm
Import-module MSOnline
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
Connect-MsolService -Credential $UserCredential2. Run the below command to add required SMTP address as an alias.
Set-UnifiedGroup -Identity "X" -EmailAddresses: @{Add ="Y"}
here X is the Display Name of Office 365 group and Y is the required Email ID.
Set-UnifiedGroup -Identity "Test o365Group" -EmailAddresses: @{Add ="test.o365group@abcd.com"}
3. Promote alias as a primary SMTP address,
Set-UnifiedGroup -Identity "Test O365Group" -PrimarySmtpAddress "test.o365group@abcd.com"
4. If not required, you can remove first ID using below command.
Set-UnifiedGroup -Identity "Test o365Group" -EmailAddresses: @{Remove="test.o365group@abcd.onmicrosoft.com"}
Please note, For updating the Office 365 group SMTP address required Global Administrator access.
Thanks and Regards,
Yahkoob Ayappally
- SODeedarCopper Contributor
Hi There,
Yes there is a way that you can make that change. Please take a look at the PowerShell script below.
PowerShell ISE is strongly recommended. (Copy Paste as it is and Run)
cls
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
$UserCredential = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $UserCredential -Authentication Basic -AllowRedirection
Import-PSSession $Session
Write-Output "======================================================="
Write-host "======== CONFIGURING O365 GROUP EMAIL ADDRESS =========" -foreground "yellow"
Write-Output "======================================================="
$oldEmail=read-host "Which O365 Group email address do you want to edit? Ex: group@domain.onmicrosoft.com"
$newEmail=read-host "Please enter the new email address for $oldEmail Ex: group@domain.com"
Set-Group -Identity $oldEmail -WindowsEmailAddress $newEmail
Write-Output "======================================================="
Write-host "=============== COMPLETED SUCCESSFULLY ================" -foreground "green"
Write-Output "======================================================="
Get-Group -Identity $newEmail | select display*,windows*Once you run this scrript you will be asked to import to the module please choose yes to all to allow the necessary modules and then log in. After your log in you will be asked to provide the current email of the group and after that you will be asked to type the new email. Within 2 minutes the change will apply and you can see it on your EAC and please close your browser and re-open it and sign into Portal.office,com and the changes will appear under groups on Admin portal as well.
- Corey RichardsonCopper Contributor
You can use the following method to change the PrimarySMTPAddress of many groups at once. You may want to use a -Filter to define a list of groups rather than applying this to ALL groups. In my case I used a list of test groups filtering them by DisplayName before applying this to all of my groups.
Get-UnifiedGroup -Filter {DisplayName -like "O365Test*"}
Then pipe it into a Foreach-Object loop and apply the new PrimarySMTPAddress.Get-UnifiedGroup -Filter {DisplayName -like "O365Test*"} | Foreach-Object { Set-UnifiedGroup -Identity $_.Name -PrimarySmtpAddress "$($_.Alias)@groups.domain.com"}
We only had a couple dozen Office 365 Groups so I applied the new PrimarySMTPAddress globally.Get-UnifiedGroup | Foreach-Object { Set-UnifiedGroup -Identity $_.Name -PrimarySmtpAddress "$($_.Alias)@groups.domain.com"}
A little background as to how I landed here... We have an Exchange Hybrid deployment with Centralized Mail Flow, on premise. This is because we have services on prem for compliance, archiving, signatures, mailing lists, marketing, etc. Our MX record points to our Exchange Server (well, actually our Barracuda ESG). We have an Edge server which is explicitly used for mail flow between On Prem and Exchange Online to avoid the need to expose our Exchange Server's SMTP to the internet (we were advised not to place the Barracuda between Exchange Server and Exchange Online mail flow, that's why there's an Edge server). The Edge server works great as long as it's NOT an Office 365 Group. Emailing O365 Groups (or Teams) from any on-prem Mailbox resulted in a Mail Loop. After investigation, it was revealed Exchange Hybrid doesn't know how to handle Office 365 groups, even with Group Writeback enabled. I tried modifying the "targetAddress attribute of the group (since we have Group Writeback enabled) in Active Directory with no success. However, updating the PrimarySMTPAddress of the Group to our tenent.onmicrosoft.com domain worked perfectly. It was determined our Exchange Server simply routes emails destined for these groups to the internet, ignoring any Send Connectors configured for Exchange Hybrid. I have no idea why this occurs, but a consultant was able to recreate this behavior. For now, we decided to create a groups domain, groups.domain.com, and add it as an accepted InternalRelay domain on-prem. I also created an Email Address Policy in Exchange Online for any future groups that are created. Unfortunately this didn't update any of the existing Groups. And that's how I landed here. Posting in case anyone else needs this info. Cheers.