PowerShell Deprecation TrackerIT technician command center
PowerShell lifecycle reference

PowerShell Deprecation Tracker

Search legacy PowerShell commands, identify their supported replacements, and review migration notes for Microsoft 365, Microsoft Graph, Exchange Online, Teams and Azure administration.

Migration mappings are references, not automatic script conversions. Parameters, permissions, returned properties and authentication methods can differ.

Deprecated and replaced commands

22 tracked entries · Last reviewed July 11, 2026

Legacy commandRecommended replacementModule transitionStatusMigration notesSource
Connect-MsolServiceConnect-MgGraphMSOnline → Microsoft.GraphDeprecated moduleAuthentication model and required scopes differ; review delegated versus app-only access.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-MsolUserGet-MgUserMSOnline → Microsoft.Graph.UsersDeprecated moduleSome MSOnline filters and properties do not have exact one-to-one equivalents.
Reviewed 2026-07-11
Microsoft Learn ↗
New-MsolUserNew-MgUserMSOnline → Microsoft.Graph.UsersDeprecated modulePassword profile and usage-location handling use Graph request properties.
Reviewed 2026-07-11
Microsoft Learn ↗
Set-MsolUserUpdate-MgUserMSOnline → Microsoft.Graph.UsersDeprecated moduleUse the user ID or UPN and Graph-compatible property names.
Reviewed 2026-07-11
Microsoft Learn ↗
Remove-MsolUserRemove-MgUserMSOnline → Microsoft.Graph.UsersDeprecated moduleDeleted-user restore and permanent deletion use separate Graph cmdlets/endpoints.
Reviewed 2026-07-11
Microsoft Learn ↗
Connect-AzureADConnect-MgGraphAzureAD → Microsoft.GraphDeprecated moduleGraph permissions/scopes must be requested explicitly.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-AzureADUserGet-MgUserAzureAD → Microsoft.Graph.UsersDeprecated moduleUse -Property to request properties that Graph does not return by default.
Reviewed 2026-07-11
Microsoft Learn ↗
New-AzureADUserNew-MgUserAzureAD → Microsoft.Graph.UsersDeprecated moduleRequest syntax and object property names differ.
Reviewed 2026-07-11
Microsoft Learn ↗
Set-AzureADUserUpdate-MgUserAzureAD → Microsoft.Graph.UsersDeprecated moduleNot every AzureAD parameter maps directly to Update-MgUser.
Reviewed 2026-07-11
Microsoft Learn ↗
Remove-AzureADUserRemove-MgUserAzureAD → Microsoft.Graph.UsersDeprecated moduleConfirm object ID/UPN and deletion behavior before migration.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-AzureADGroupGet-MgGroupAzureAD → Microsoft.Graph.GroupsDeprecated moduleGraph filtering may require ConsistencyLevel eventual and CountVariable.
Reviewed 2026-07-11
Microsoft Learn ↗
Add-AzureADGroupMemberNew-MgGroupMemberByRefAzureAD → Microsoft.Graph.GroupsDeprecated moduleSupply the directory object reference in the Graph request body.
Reviewed 2026-07-11
Microsoft Learn ↗
Remove-AzureADGroupMemberRemove-MgGroupMemberByRefAzureAD → Microsoft.Graph.GroupsDeprecated moduleUse group ID and directory-object ID.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-AzureADServicePrincipalGet-MgServicePrincipalAzureAD → Microsoft.Graph.ApplicationsDeprecated moduleProperty names, filters and permissions differ from AzureAD.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-MessageTraceGet-MessageTraceV2ExchangeOnlineManagementReplacedUse the V2 query limits and date-window requirements.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-MessageTraceDetailGet-MessageTraceDetailV2ExchangeOnlineManagementReplacedUse with results returned by the V2 message trace workflow.
Reviewed 2026-07-11
Microsoft Learn ↗
Login-AzureRmAccountConnect-AzAccountAzureRM → Az.AccountsRetired module familyAzureRM scripts should be migrated to the Az module family.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-AzureRmVMGet-AzVMAzureRM.Compute → Az.ComputeRetired module familyMost AzureRM cmdlets follow the AzureRm-to-Az naming transition, but test parameters.
Reviewed 2026-07-11
Microsoft Learn ↗
New-CsOnlineApplicationEndpointNew-CsOnlineApplicationInstanceMicrosoftTeamsDeprecatedApplication endpoint management moved to application-instance cmdlets.
Reviewed 2026-07-11
Microsoft Learn ↗
Get-CsOnlineApplicationEndpointGet-CsOnlineApplicationInstanceMicrosoftTeamsDeprecatedUse the supported application-instance cmdlet.
Reviewed 2026-07-11
Microsoft Learn ↗
Set-CsOnlineApplicationEndpointSet-CsOnlineApplicationInstance / Set-CsPhoneNumberAssignmentMicrosoftTeamsDeprecatedThe replacement depends on whether you are changing the application instance or its phone number.
Reviewed 2026-07-11
Microsoft Learn ↗
New-CsOnlineSessionConnect-MicrosoftTeamsLegacy SkypeOnlineConnector → MicrosoftTeamsRemoved legacy connectionModern Teams PowerShell establishes the remote session through Connect-MicrosoftTeams.
Reviewed 2026-07-11
Microsoft Learn ↗