### Install Apps in Personal Teams Environment Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/Set-CsTeamsAppSetupPolicy.md This example creates a new app setup policy and configures a list of apps to be installed in a user's personal Teams environment. This ensures users have access to essential applications. ```powershell New-CsTeamsAppSetupPolicy -Identity 'Set-Test' $VivaConnectionsApp = New-Object -TypeName Microsoft.Teams.Policy.Administration.Cmdlets.Core.AppPreset -Property @{Id="d2c6f111-ffad-42a0-b65e-ee00425598aa"} $AppPresetList = @($VivaConnectionsApp) Set-CsTeamsAppSetupPolicy -Identity 'Set-Test' -AppPresetList $AppPresetList ``` -------------------------------- ### Get All OME Configurations Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-OMEConfiguration.md This example returns a summary list of all OME configurations in the organization. No specific setup is required beyond having access to Exchange Online. ```powershell Get-OMEConfiguration ``` -------------------------------- ### Example: Assigning a specific app setup policy to a user Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/Grant-CsTeamsAppSetupPolicy.md This example demonstrates how to assign the 'StudentAppSetupPolicy' to a user identified as 'Ken Myer'. ```powershell PS C:\> Grant-CsTeamsAppSetupPolicy -identity "Ken Myer" -PolicyName StudentAppSetupPolicy ``` -------------------------------- ### Start a Migration Batch Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Start-MigrationBatch.md This example starts the migration batch named SEM1. Ensure you have the necessary permissions and that the batch is in a state that can be started. ```powershell Start-MigrationBatch -Identity SEM1 ``` -------------------------------- ### Start Migration for a User Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Start-MigrationUser.md This example starts the migration process for a user identified by their email address. ```powershell Start-MigrationUser -Identity laura@contoso.com ``` -------------------------------- ### Get summary list of apps for a user Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-App.md Use this example to retrieve a summary list of apps installed for a specific user, showing app name, enabled status, and version. ```powershell Get-App -Mailbox Tony ``` -------------------------------- ### Start logging the AlwaysOn scenario Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Start-CsClsLogging.md This example starts logging for the AlwaysOn scenario on all computers within the current topology. This is a basic usage scenario. ```powershell Start-CsClsLogging -Scenario "AlwaysOn" ``` -------------------------------- ### Retrieve a specific tenant by GUID Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/Get-CsOnlineDirectoryTenant.md This example returns the tenant specified by GUID. Use this to get details for a particular tenant. ```powershell Get-CsOnlineDirectoryTenant -Tenant 7a205197-8e59-487d-b9fa-3fc1b108f1e5 ``` -------------------------------- ### Create New Video Trunk Configuration for a Site Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/New-CsVideoTrunkConfiguration.md This example creates a new collection of video trunk configuration settings for the Redmond site and enables session timers. ```powershell New-CsVideoTrunkConfiguration -Identity "site:Redmond" -EnableSessionTimer $True ``` -------------------------------- ### Get Mailbox Location by Identity (GUID) Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-MailboxLocation.md This example retrieves mailbox location information using a specific mailbox GUID. The GUID can be obtained from the ExchangeGuid property of a mailbox. ```powershell Get-MailboxLocation -Identity e15664af-82ed-4635-b02a-df7c2e03d950 ``` -------------------------------- ### Run Enable-OrganizationCustomization Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Enable-OrganizationCustomization.md This example shows the basic usage of the Enable-OrganizationCustomization cmdlet to run the command as required. ```powershell Enable-OrganizationCustomization ``` -------------------------------- ### Get Mailbox GUID Example Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Start-ManagedFolderAssistant.md Use this command to retrieve the mailbox GUID for a user, which can be helpful for resolving errors with the -Identity parameter in cloud-based services. ```powershell Get-Mailbox -User | Format-List *GUID,MailboxLocations ``` -------------------------------- ### Get Server Patch Version Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Get-CsServerPatchVersion.md This example retrieves the version for each component installed on the Skype for Business Server. ```powershell Get-CsServerPatchVersion ``` -------------------------------- ### Configure audio ports for an Application Server Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Set-CsApplicationServer.md This example configures the starting port and the total number of ports allocated for audio traffic on a specific Application Server. The range of ports used will be from AppSharingPortStart to AppSharingPortStart + AppSharingPortCount - 1. ```powershell Set-CsApplicationServer -Identity "ApplicationServer:atl-cs-001.litwareinc.com" -AudioPortStart 49500 -AudioPortCount 5500 ``` -------------------------------- ### Get System Folders Recursively Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-PublicFolder.md This example returns the names of all system folders, starting from the system folder root (\NON_IPM_SUBTREE). It uses the -Recurse parameter to get all subfolders. ```powershell Get-PublicFolder -Identity \NON_IPM_SUBTREE -Recurse | Format-List Name ``` -------------------------------- ### Get Workforce Insights Delegation Access Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-WorkforceInsightsDelegationAccess.md This example filters the results by the specified delegator's GUID to retrieve their delegates. ```powershell Get-WorkforceInsightsDelegationAccess -Delegator a5f5dbca-8cc8-4a36-bbfc-9b8947b4eb60 ``` -------------------------------- ### Enable and Configure Welcome Greeting Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Set-UMDialPlan.md This example configures a UM dial plan to use a specific welcome greeting file. Ensure the welcome.wav file exists in the appropriate location. ```powershell Set-UMDialPlan -Identity MyDialPlan -WelcomeGreetingEnabled $true -WelcomeGreetingFilename welcome.wav ``` -------------------------------- ### Get user session information for a specific user and start time Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Get-CsUserSession.md This example retrieves session information for a user starting from a specified date and time. The query will run until the current date and time. ```powershell Get-CsUserSession -User "Ken.Myer@Contoso.com" -StartTime "02/22/2016 07:30:15 PM" ``` -------------------------------- ### Revoke Setup Permissions for a Specific OU Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Revoke-CsSetupPermission.md This example demonstrates how to revoke setup rights for the 'CsServers' OU within the 'litwareinc.com' domain. This is useful when you need to restrict administrative privileges for Skype for Business Server installations. ```powershell Revoke-CsSetupPermission -ComputerOU "ou=CsServers,dc=litwareinc,dc=com" ``` -------------------------------- ### Start logging for a specific scenario Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Start-CsClsLogging.md This example demonstrates how to start logging for a particular scenario on a server. Note that only one scenario (other than 'AlwaysOn') can be active on a computer at a time. ```powershell Start-CsClsLogging -Identity "atl-cs-001.litwareinc.com" -Scenario "AlwaysOn" ``` -------------------------------- ### Get Intra-Organization Configuration Settings Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-IntraOrganizationConfiguration.md This example returns the settings of the intra-organization configuration. No specific setup or imports are required beyond having the necessary permissions. ```powershell Get-IntraOrganizationConfiguration ``` -------------------------------- ### Create a bandwidth policy and assign it to a profile Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/New-CsNetworkBWPolicy.md This example first creates a video bandwidth policy, similar to Example 1, and then assigns this policy to a new bandwidth policy profile named LowBWLimit. ```powershell $bwp = New-CsNetworkBWPolicy -BWLimit 200 -BWSessionLimit 3000 -BWPolicyModality video New-CsNetworkBandwidthPolicyProfile -Identity LowBWLimit -BWPolicy $bwp ``` -------------------------------- ### Get Whiteboard Owners in Europe Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/whiteboard/whiteboard-ps/WhiteboardAdmin/Get-WhiteboardOwners.md This example demonstrates how to retrieve all whiteboard owners located in the European geography. Ensure the WhiteboardAdmin module is installed and accessible. ```powershell PS C:\>Get-WhiteboardOwners -Geography Europe ``` -------------------------------- ### Install an app using FileData Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/New-App.md This example installs an app by providing the content of its manifest file as a byte array. Ensure the XML file path is correct. ```powershell New-App -FileData ([System.IO.File]::ReadAllBytes('C:\Apps\FinanceTestApp.xml')) ``` -------------------------------- ### Example 1: Set-CsCceApplianceDeploymentStatus Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Set-CsCceApplianceDeploymentStatus.md This example demonstrates how to use the Set-CsCceApplianceDeploymentStatus cmdlet. Insert example commands for example 1. ```powershell Insert example commands for example 1. ``` -------------------------------- ### Get all Client Access Servers Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-ClientAccessServer.md Returns a summary list of all Exchange servers with the Client Access server role installed. No specific setup is required. ```powershell Get-ClientAccessServer ``` -------------------------------- ### Get a specific report execution instance Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-ReportExecutionInstance.md This example retrieves detailed information for a single report execution instance by specifying its unique GUID using the -Identity parameter. ```powershell Get-ReportExecutionInstance -Identity 277df7c3-5b73-4409-6264-08d4a8052836 ``` -------------------------------- ### Example of using -SipAddress parameter Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Set-CsThirdPartyVideoSystem.md This example shows how to set the SIP address for a video system, enabling it to communicate with SIP devices. The SIP address must be prefaced with 'sip:'. ```powershell Set-CsThirdPartyVideoSystem -Identity "CN={ce84964a-c4da-4622-ad34-c54ff3ed361f},OU=Redmond,DC=Litwareinc,DC=com" -SipAddress "sip:redmondvideo@litwareinc.com" ``` -------------------------------- ### Get Tenant Private Channel Migration Status Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/Get-TenantPrivateChannelMigrationStatus.md This example retrieves the migration status for a tenant where all channels have been migrated. It shows the TenantId, MigrationStatus, and timestamps for migration start and completion. ```powershell Get-TenantPrivateChannelMigrationStatus ``` ```powershell TenantId : 12345678-1234-1234-1234-123456789abc MigrationStatus : Completed MigrationStartTimeStamp : 2025-10-09T10:15:00.456Z MigrationCompletionTimeStamp : 2025-10-09T12:45:00.789Z Details : {"totalChannels":10,"migratedChannels":10,"failedChannels":0,"ownerlessChannels":0,"remainingChannels":0} ``` -------------------------------- ### Get All QoE Configurations Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Get-CsQoEConfiguration.md This example retrieves all QoE settings configured in the organization. ```powershell Get-CsQoEConfiguration ``` -------------------------------- ### Get Partner Application by Tenant ID Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Get-CsPartnerApplication.md This example demonstrates how to retrieve partner application settings for a specific Skype for Business Online tenant. The Tenant parameter requires a GUID. ```powershell Get-CsPartnerApplication -Tenant "38aad667-af54-4397-aaa7-e94c79ec2308" ``` -------------------------------- ### Example: Export Multiple CoolFeature Cmdlets Help Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/repo_docs/UPDATE_CMDLETS.md This example exports help documentation for several related cmdlets ('Get-CoolFeature', 'New-CoolFeature', 'Remove-CoolFeature', 'Set-CoolFeature') to the 'C:\My Docs\ExO' folder. ```powershell $Delta = Get-Command "Get-CoolFeature","New-CoolFeature","Remove-CoolFeature","Set-CoolFeature" New-MarkdownCommandHelp -CommandInfo $Delta -OutputFolder "C:\My Docs\ExO" ``` -------------------------------- ### Create and Modify Client Version Configuration Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/New-CsClientVersionConfiguration.md This example demonstrates creating a new client version configuration in memory, modifying its properties, and then applying these changes to a specific site. ```PowerShell $x = New-CsClientVersionConfiguration -Identity site:Redmond -InMemory $x.DefaultAction = "Block" Set-CsClientVersionConfiguration -Instance $x ``` -------------------------------- ### Get migration user by MailboxGuid and pipe to Get-MigrationUserStatistics Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-MigrationUser.md Retrieves detailed information about an ongoing migration for a user specified by their mailbox GUID. This example pipes the output to Get-MigrationUserStatistics for more detailed insights. ```powershell Get-MigrationUser -MailboxGuid b6a6795c-a010-4f67-aaaa-da372d56fcb9 | Get-MigrationUserStatistics ``` -------------------------------- ### Get All Device Configuration Policies Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-DeviceConfigurationPolicy.md This example shows summary information for all mobile device configuration policies. Ensure you are connected to Security & Compliance PowerShell. ```powershell Get-DeviceConfigurationPolicy | Format-Table Name,Enabled,Priority ``` -------------------------------- ### Get the first 100 recipient objects Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-EXORecipient.md This example returns the first 100 recipient objects in name sorted order. Ensure you have the Exchange Online PowerShell module installed and connected. ```powershell Get-EXORecipient -ResultSize 100 ``` -------------------------------- ### Create a New TeamsAppSetupPolicy Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/New-CsTeamsAppSetupPolicy.md This example demonstrates the creation of a new TeamsAppSetupPolicy. If no parameters are specified, the Global Policy configuration is used by default. ```powershell New-CsTeamsAppSetupPolicy -Identity (Get-Date -Format FileDateTimeUniversal) ``` -------------------------------- ### Start a Skype for Business Server Pool Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Start-CsPool.md This example demonstrates how to start a specific pool and skip a particular routing group during the startup process. This is useful when a routing group is experiencing issues. ```powershell Start-CsPool -PoolFqdn "atl-cs-001.litwareinc.com" -SkipRoutingGroup "bef5fa3b-3c97-4af0-abe7-611deee7616c" ``` -------------------------------- ### Get a specific mobile device conditional access rule Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-DeviceConditionalAccessRule.md This example retrieves detailed information for a specific mobile device conditional access rule identified by its unique name, which includes a GUID. ```powershell Get-DeviceConditionalAccessRule -Identity "Secure Email{914f151c-394b-4da9-9422-f5a2f65dec30}" ``` -------------------------------- ### Create a New Teams App Setup Policy with Viva Connections App Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/New-CsTeamsAppSetupPolicy.md This example demonstrates how to create a new Teams app setup policy and configure it to install the Viva Connections app in users' personal Teams environment by setting it as an AppPresetList. It also enables side-loading for custom apps. ```powershell # Set VivaConnectionsApp as AppPresetList $VivaConnectionsApp = New-Object -TypeName Microsoft.Teams.Policy.Administration.Cmdlets.Core.AppPreset -Property @{Id="d2c6f111-ffad-42a0-b65e-ee00425598aa"} $AppPresetList = @($VivaConnectionsApp) # Settings to install these apps in your users' personal Teams environment Set-CsTeamsAppSetupPolicy -Identity (Get-Date -Format FileDateTimeUniversal) -AllowSideLoading $true -AppPresetList $AppPresetList ``` -------------------------------- ### Start-MigrationBatch with -WhatIf Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Start-MigrationBatch.md Use the -WhatIf switch to see what the Start-MigrationBatch command would do without actually making any changes. This is useful for simulating the migration process. ```powershell Start-MigrationBatch -Identity "MyMigrationBatch" -WhatIf ``` -------------------------------- ### Enable Administrator Audit Logging for All Cmdlets Except Get Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Set-AdminAuditLogConfig.md This example enables administrator audit logging for all cmdlets and parameters, excluding any cmdlet starting with 'Get-'. This is useful for comprehensive auditing of administrative actions. ```powershell Set-AdminAuditLogConfig -AdminAuditLogEnabled $true -AdminAuditLogCmdlets * -AdminAuditLogParameters * -AdminAuditLogExcludedCmdlets Get-* ``` -------------------------------- ### Get All Mailbox Repair Requests and a Specific One Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-MailboxRepairRequest.md This example first retrieves all mailbox repair requests across all mailbox servers and then displays detailed information about a specific request identified by its complex GUID. ```powershell Get-MailboxDatabase | Get-MailboxRepairRequest | Format-Table Identity Get-MailboxRepairRequest -Identity 5b8ca3fa-8227-427f-af04-9b4f206d611f\335c2b06-321d-4e73-b2f7-3dc2b02d0df5\374289de-b899-42dc-8391-4f8579935f1f | Format-List ``` -------------------------------- ### Get Detailed OME Configurations Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-OMEConfiguration.md This example returns detailed information for all OME configurations in the organization by piping the output to Format-List. Ensure you have the necessary permissions to run this cmdlet. ```powershell Get-OMEConfiguration | Format-List ``` -------------------------------- ### Grant Setup Permissions for a Specific OU Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Grant-CsSetupPermission.md This example demonstrates how to grant setup permissions for the CsServers OU within the litwareinc.com domain. Ensure the OU path is correctly specified. ```powershell Grant-CsSetupPermission -ComputerOU "ou=CsServers,dc=litwareinc,dc=com" ``` -------------------------------- ### Get Specific Data Encryption Policy by Identity Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-DataEncryptionPolicy.md This example returns detailed information for a specific data encryption policy by its name. The Identity parameter can accept Name, Distinguished Name (DN), or GUID. ```powershell Get-DataEncryptionPolicy -Identity "Europe Mailboxes" ``` -------------------------------- ### Import Legacy Configuration with ReplaceExisting Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/skype/skype-ps/SkypeForBusiness/Import-CsLegacyConfiguration.md This example demonstrates importing legacy configuration data and using the -ReplaceExisting parameter to resolve name collisions by overwriting existing settings. ```powershell Import-CsLegacyConfiguration -ReplaceExisting ``` -------------------------------- ### Get Teams Voice Applications Policies by Filter Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/teams/teams-ps/MicrosoftTeams/Get-CsTeamsVoiceApplicationsPolicy.md Retrieves Teams voice applications policies that match a specified filter. This example retrieves policies configured at the per-user scope by filtering on identities starting with 'tag:'. ```powershell Get-CsTeamsVoiceApplicationsPolicy -Filter "tag:*" ``` -------------------------------- ### Example: Export Get-CoolFeature Help Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/repo_docs/UPDATE_CMDLETS.md This specific example exports the help documentation for the 'Get-CoolFeature' cmdlet to the 'C:\My Docs\ExO' folder. ```powershell New-MarkdownCommandHelp -CommandInfo (Get-Command "Get-CoolFeature") -OutputFolder "C:\My Docs\ExO" ``` -------------------------------- ### Retrieve Default Mail Traffic ATP Report Source: https://github.com/microsoftdocs/office-docs-powershell/blob/main/exchange/exchange-ps/ExchangePowerShell/Get-MailTrafficATPReport.md This command retrieves the default mail traffic ATP report, which includes data for the last 92 days. It's a basic usage example to get started. ```powershell Get-MailTrafficATPReport ```