+
+ResourceGroupName | Id | VmId | Name | Type | Location | LicenseType | Tags | AvailabilitySetReference | DiagnosticsProfile | Extensions | HardwareProfile | InstanceView | NetworkProfile | OSProfile | Plan | ProvisioningState | StorageProfile | DisplayHint | Identity | Zones | FullyQualifiedDomainName | AdditionalCapabilities | RequestId | StatusCode |
+QUERYEXAMPLE | /subscriptions/.../resourceGroups/QUERYEXAMPLE/providers/Microsoft.Compute/virtualMachines/ExampleLinuxVM | ... | ExampleLinuxVM | Microsoft.Compute/virtualMachines | westus2 | | System.Collections.Generic.Dictionary`2[System.String,System.String] | | | System.Collections.Generic.List`1[Microsoft.Azure.Management.Compute.Models.VirtualMachineExtension] | Microsoft.Azure.Management.Compute.Models.HardwareProfile | | Microsoft.Azure.Management.Compute.Models.NetworkProfile | Microsoft.Azure.Management.Compute.Models.OSProfile | | Succeeded | Microsoft.Azure.Management.Compute.Models.StorageProfile | Compact | | System.Collections.Generic.List`1[System.String] | | | ... | OK |
+QUERYEXAMPLE | /subscriptions/.../resourceGroups/QUERYEXAMPLE/providers/Microsoft.Compute/virtualMachines/RHELExample | ... | RHELExample | Microsoft.Compute/virtualMachines | westus2 | | System.Collections.Generic.Dictionary`2[System.String,System.String] | | | System.Collections.Generic.List`1[Microsoft.Azure.Management.Compute.Models.VirtualMachineExtension] | Microsoft.Azure.Management.Compute.Models.HardwareProfile | | Microsoft.Azure.Management.Compute.Models.NetworkProfile | Microsoft.Azure.Management.Compute.Models.OSProfile | | Succeeded | Microsoft.Azure.Management.Compute.Models.StorageProfile | Compact | | System.Collections.Generic.List`1[System.String] | | | ... | OK |
+QUERYEXAMPLE | /subscriptions/.../resourceGroups/QUERYEXAMPLE/providers/Microsoft.Compute/virtualMachines/WinExampleVM | ... | WinExampleVM | Microsoft.Compute/virtualMachines | westus2 | | System.Collections.Generic.Dictionary`2[System.String,System.String] | | | System.Collections.Generic.List`1[Microsoft.Azure.Management.Compute.Models.VirtualMachineExtension] | Microsoft.Azure.Management.Compute.Models.HardwareProfile | | Microsoft.Azure.Management.Compute.Models.NetworkProfile | Microsoft.Azure.Management.Compute.Models.OSProfile | | Succeeded | Microsoft.Azure.Management.Compute.Models.StorageProfile | Compact | | System.Collections.Generic.List`1[System.String] | | | ... | OK |
+
+
+```
diff --git a/docs-conceptual/azps-12.2.0/get-started-azureps.md b/docs-conceptual/azps-12.2.0/get-started-azureps.md
new file mode 100644
index 0000000000..2465e455ab
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/get-started-azureps.md
@@ -0,0 +1,135 @@
+---
+description: Get started with Azure PowerShell
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: get-started
+title: Get started with Azure PowerShell
+---
+
+# Get started with Azure PowerShell
+
+Azure PowerShell is designed for managing and administering Azure resources from the command line.
+Use Azure PowerShell when you want to build automated tools that use the Azure Resource Manager
+model. Try it out in your browser with [Azure Cloud Shell](/azure/cloud-shell/overview), or install
+on your local machine.
+
+This article helps you get started with Azure PowerShell and teaches the core concepts behind it.
+
+## Install or run in Azure Cloud Shell
+
+The easiest way to get started with Azure PowerShell is by trying it out in an Azure Cloud Shell
+environment. To get up and running with Cloud Shell, see
+[Quickstart for PowerShell in Azure Cloud Shell](/azure/cloud-shell/quickstart-powershell). Cloud
+Shell runs PowerShell on a Linux container, so Windows-specific functionality isn't available.
+
+When you're ready to install Azure PowerShell on your local machine, follow the instructions in
+[Install the Azure PowerShell module](install-azure-powershell.md).
+
+## Sign in to Azure
+
+Sign in interactively with the
+[Connect-AzAccount](/powershell/module/az.accounts/connect-azaccount) cmdlet. Skip this step if you
+use Cloud Shell. Your Azure Cloud Shell session is already authenticated for the environment,
+subscription, and tenant that launched the Cloud Shell session.
+
+```azurepowershell
+Connect-AzAccount
+```
+
+Azure cloud services offer environments compliant with regional data-handling laws. For accounts in
+a regional cloud, use the `Environment` parameter to sign in. Get the name of the environment for
+your region using the [Get-AzEnvironment](/powershell/module/Az.Accounts/Get-AzEnvironment) cmdlet.
+For example, to sign in to Azure China 21Vianet:
+
+```azurepowershell-interactive
+Connect-AzAccount -Environment AzureChinaCloud
+```
+
+Beginning with Az PowerShell module version 5.0.0, `Connect-AzAccount` presents an interactive
+browser based login prompt by default. You can specify the `UseDeviceAuthentication` parameter to
+receive a token string which was previously the default for PowerShell version 6 and higher.
+
+After signing in, you'll see information indicating which of your Azure subscriptions is active. If
+you have multiple Azure subscriptions in your account and want to select a different one, get your
+available subscriptions with
+[Get-AzSubscription](/powershell/module/az.accounts/get-azsubscription) and use the
+[Set-AzContext](/powershell/module/az.accounts/set-azcontext) cmdlet with your subscription ID. For
+more information about managing your Azure subscriptions in Azure PowerShell, see
+[Use multiple Azure subscriptions](manage-subscriptions-azureps.md).
+
+Once signed in, use the Azure PowerShell cmdlets to access and manage resources in your
+subscription. To learn more about the sign-in process and authentication methods, see
+[Sign in with Azure PowerShell](authenticate-azureps.md).
+
+## Find commands
+
+Azure PowerShell cmdlets follow a standard naming convention for PowerShell, `Verb-Noun`. The verb
+describes the action (examples include `New`, `Get`, `Set`, `Remove`) and the noun describes the
+resource type (examples include `AzVM`, `AzKeyVaultCertificate`, `AzFirewall`,
+`AzVirtualNetworkGateway`). Nouns in Azure PowerShell always start with the prefix `Az`. For the
+full list of standard verbs, see
+[Approved verbs for PowerShell Commands](/powershell/scripting/developer/cmdlet/approved-verbs-for-windows-powershell-commands).
+
+Knowing the nouns, verbs, and the Azure PowerShell modules available helps you find commands with
+the [Get-Command](/powershell/module/microsoft.powershell.core/get-command) cmdlet. For example, to
+find all VM-related commands that use the `Get` verb:
+
+```powershell-interactive
+Get-Command -Verb Get -Noun AzVM* -Module Az.Compute
+```
+
+To help you find common commands, this table lists the resource type, corresponding Azure PowerShell
+module, and noun prefix to use with `Get-Command`:
+
+| Resource type | Azure PowerShell module | Noun prefix |
+| ----------------------------------------------------------------------- | ------------------------------------------------------------ | ------------------ |
+| [Resource group](/azure/azure-resource-manager/resource-group-overview) | [Az.Resources](/powershell/module/az.resources#resources) | `AzResourceGroup` |
+| [Virtual machines](/azure/virtual-machines) | [Az.Compute](/powershell/module/az.compute#virtual_machines) | `AzVM` |
+| [Storage accounts](/azure/storage/common/storage-introduction) | [Az.Storage](/powershell/module/az.storage/) | `AzStorageAccount` |
+| [Key Vault](/azure/key-vault/key-vault-whatis) | [Az.KeyVault](/powershell/module/az.keyvault) | `AzKeyVault` |
+| [Web applications](/azure/app-service) | [Az.Websites](/powershell/module/az.websites) | `AzWebApp` |
+| [SQL databases](/azure/sql-database) | [Az.Sql](/powershell/module/az.sql) | `AzSqlDatabase` |
+
+For a full list of the modules in Azure PowerShell, see the
+[Azure PowerShell modules list](https://github.com/Azure/azure-powershell/blob/master/documentation/azure-powershell-modules.md)
+hosted on GitHub.
+
+## Data Collection
+
+Azure PowerShell collects telemetry data by default. Microsoft aggregates collected data to identify
+patterns of usage to identify common issues and to improve the experience of Azure PowerShell.
+Microsoft Azure PowerShell does not collect any private or personal data. For example, the usage
+data helps identify issues such as cmdlets with low success and helps prioritize our work.
+
+While we appreciate the insights this data provides, we also understand that not everyone wants to
+send usage data. You can disable data collection with the
+[`Disable-AzDataCollection`](/powershell/module/az.accounts/disable-azdatacollection) cmdlet. You
+can also read our [privacy statement](https://privacy.microsoft.com/privacystatement) to learn more.
+
+## Learn Azure PowerShell basics with quickstarts and tutorials
+
+To get started with Azure PowerShell, try an in-depth tutorial for setting up virtual machines and
+learning how to query them.
+
+> [!div class="nextstepaction"]
+> [Create virtual machines with Azure PowerShell](azureps-vm-tutorial.yml)
+
+There are also Azure PowerShell quickstarts for other popular Azure services:
+
+* [Create a storage account](/azure/storage/common/storage-quickstart-create-account?tabs=azure-powershell)
+* [Transfer objects to/from Azure Blob storage](/azure/storage/blobs/storage-quickstart-blobs-powershell)
+* [Create and retrieve secrets from Azure Key Vault](/azure/key-vault/quick-create-powershell)
+* [Create an Azure SQL database and firewall](/azure/sql-database/scripts/sql-database-create-and-configure-database-powershell)
+* [Run a container in Azure Container Instances](/azure/container-instances/container-instances-quickstart-powershell)
+* [Create a Virtual Machine Scale Set](/azure/virtual-machine-scale-sets/quick-create-powershell)
+* [Create a standard load balancer](/azure/load-balancer/quickstart-create-standard-load-balancer-powershell)
+
+## Next steps
+
+* [Sign in with Azure PowerShell](authenticate-azureps.md)
+* [Manage Azure subscriptions with Azure PowerShell](manage-subscriptions-azureps.md)
+* [Create service principals with Azure PowerShell](create-azure-service-principal-azureps.md)
+* Get help from the community:
+ * [Azure forum on MSDN](https://go.microsoft.com/fwlink/p/?LinkId=320212)
+ * [Stack Overflow](https://go.microsoft.com/fwlink/?LinkId=320213)
diff --git a/docs-conceptual/azps-12.2.0/index.yml b/docs-conceptual/azps-12.2.0/index.yml
new file mode 100644
index 0000000000..67a6780918
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/index.yml
@@ -0,0 +1,155 @@
+###YamlMime:Landing
+
+title: Azure PowerShell Documentation
+summary: |
+ Official product documentation for Azure PowerShell. Azure PowerShell is a collection of modules for managing Azure resources from PowerShell.
+
+metadata:
+ title: Azure PowerShell Documentation
+ description: Official product documentation for Azure PowerShell. Azure PowerShell is a collection of modules for managing Azure resources from PowerShell.
+ ms.topic: landing-page
+ author: mikefrobbins
+ ms.author: mirobb
+ ms.date: 08/01/2024
+ ms.devlang: powershell
+ ms.custom: devx-track-azurepowershell
+ ms.service: azure-powershell
+landingContent:
+ - title: About Azure PowerShell
+ linkLists:
+ - linkListType: overview
+ links:
+ - text: Get started
+ url: get-started-azureps.md
+ - text: What is Azure PowerShell?
+ url: what-is-azure-powershell.md
+ - text: Support Lifecycle
+ url: azureps-support-lifecycle.md
+ - linkListType: learn
+ links:
+ - text: Automate Azure tasks from PowerShell
+ url: /training/modules/automate-azure-tasks-with-powershell/
+ - text: Choose the best Azure command line tools for managing and provisioning your cloud infrastructure
+ url: /training/modules/azure-command-line-tools-intro/
+ - title: Installation
+ linkLists:
+ - linkListType: download
+ links:
+ - text: Overview
+ url: install-azure-powershell.md
+ - text: Install - Windows
+ url: install-azps-windows.md
+ - text: Install - Linux
+ url: install-azps-linux.md
+ - text: Install - macOS
+ url: install-azps-macos.md
+ - text: Run in Azure Cloud Shell
+ url: https://shell.azure.com
+ - text: Azure PowerShell in Docker
+ url: azureps-in-docker.md
+ - title: What's new
+ linkLists:
+ - linkListType: whats-new
+ links:
+ - text: Overview
+ url: whats-new-overview.md
+ - text: Release notes
+ url: release-notes-azureps.md
+ - text: Az 12.0.0 migration guide
+ url: migrate-az-12.0.0.md
+ - text: Upcoming breaking changes
+ url: upcoming-breaking-changes.md
+ - title: Azure PowerShell Reference
+ linkLists:
+ - linkListType: reference
+ links:
+ - text: Cmdlet reference
+ url: /powershell/module/?view=azps-12.1.0
+ - title: Identity and Authentication
+ linkLists:
+ - linkListType: how-to-guide
+ links:
+ - text: Authentication methods
+ url: authenticate-azureps.md
+ - text: Create a service principal
+ url: create-azure-service-principal-azureps.md
+ - text: Credential Contexts
+ url: context-persistence.md
+ - title: Concepts
+ linkLists:
+ - linkListType: how-to-guide
+ links:
+ - text: Manage subscriptions
+ url: manage-subscriptions-azureps.md
+ - text: Manage Azure resources with Invoke-AzRestMethod
+ url: manage-azure-resources-invoke-azrestmethod.md
+ - text: Filter cmdlet results
+ url: queries-azureps.md
+ - text: Format output
+ url: formatting-output.md
+ - text: PowerShell jobs
+ url: using-psjobs.md
+ - linkListType: tutorial
+ links:
+ - text: Create virtual machines
+ url: azureps-vm-tutorial.yml
+ - title: Configuration
+ linkLists:
+ - linkListType: how-to-guide
+ links:
+ - text: Configure global settings
+ url: configure-global-settings.md
+ - text: Intelligent command completion
+ url: az-predictor.md
+ - text: Use the Az PowerShell module behind a proxy
+ url: az-powershell-proxy.md
+ - title: Deploy
+ linkLists:
+ - linkListType: deploy
+ links:
+ - text: Deploy resource manager templates
+ url: /azure/azure-resource-manager/templates/deploy-powershell?toc=/powershell/azure/toc.json
+ - text: Export resource manager templates
+ url: /azure/azure-resource-manager/management/manage-resources-powershell?toc=/powershell/azure/toc.json
+ - text: Deploy private resource manager templates
+ url: /azure/azure-resource-manager/templates/secure-template-with-sas-token?toc=/powershell/azure/toc.json
+ - title: Samples
+ linkLists:
+ - linkListType: sample
+ links:
+ - text: Azure App Service
+ url: /azure/app-service-web/app-service-powershell-samples?toc=/powershell/azure/toc.json
+ - text: SQL databases
+ url: /azure/sql-database/sql-database-powershell-samples?toc=/powershell/azure/toc.json
+ - text: Cosmos DB
+ url: /azure/cosmos-db/sql/powershell-samples?toc=/powershell/azure/toc.json
+ - text: Samples repo
+ url: /samples/browse/?terms=azure%20powershell
+ - title: Migrate from AzureRM
+ linkLists:
+ - linkListType: overview
+ links:
+ - text: Introducing the Az PowerShell module
+ url: new-azureps-module-az.md
+ - text: Changes between AzureRM and Az
+ url: migrate-az-1.0.0.md
+ - linkListType: how-to-guide
+ links:
+ - text: Migration steps
+ url: migrate-from-azurerm-to-az.md
+ - linkListType: quickstart
+ links:
+ - text: Automatically migrate PowerShell scripts
+ url: quickstart-migrate-azurerm-to-az-automatically.md
+ - title: Help & Support
+ linkLists:
+ - linkListType: overview
+ links:
+ - text: Report product issues
+ url: https://github.com/Azure/azure-powershell/issues
+ - text: Troubleshoot
+ url: troubleshooting.md
+ - text: Follow Azure PowerShell on Twitter
+ url: https://twitter.com/azureposh
+ - text: Azure Tools Blog
+ url: https://techcommunity.microsoft.com/t5/azure-tools-blog/bg-p/AzureToolsBlog
diff --git a/docs-conceptual/azps-12.2.0/install-azps-linux.md b/docs-conceptual/azps-12.2.0/install-azps-linux.md
new file mode 100644
index 0000000000..770d4048a7
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/install-azps-linux.md
@@ -0,0 +1,80 @@
+---
+description: Learn how to install and run Azure PowerShell on Linux. You can install Azure PowerShell on Linux with one command.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Install Azure PowerShell on Linux
+---
+
+# Install Azure PowerShell on Linux
+
+The Az PowerShell module is a rollup module. Installing it downloads the generally available Az
+PowerShell modules and makes their cmdlets available for use.
+
+This article explains how to install the Az PowerShell module on Linux.
+
+## Prerequisites
+
+- Install a supported version of [PowerShell version 7 or higher](/powershell/scripting/install/installing-powershell-on-linux)
+
+## Installation
+
+Open the Terminal or other shell host application and run `pwsh` to start PowerShell.
+
+Use the [Install-Module](/powershell/module/powershellget/install-module) cmdlet to install the Az
+PowerShell module:
+
+```powershell
+Install-Module -Name Az -Repository PSGallery -Force
+```
+
+## Update the Az PowerShell module
+
+Use [Update-Module](/powershell/module/powershellget/update-module) to update to the latest version
+of the Az PowerShell module:
+
+```powershell
+Update-Module -Name Az -Force
+```
+
+Updating the Az PowerShell module using `Update-Module` doesn't remove old versions of the Az
+PowerShell module from your system.
+
+## Uninstallation
+
+To remove the Az PowerShell module from your system, see
+[Uninstall the Azure PowerShell module](uninstall-az-ps.md).
+
+## Sign in
+
+To start managing your Azure resources with the Az PowerShell module, launch a PowerShell session
+and run `Connect-AzAccount` to sign in to Azure:
+
+```azurepowershell
+Connect-AzAccount
+```
+
+Use your Azure account login credentials to log into the browser window that opens.
+
+You'll need to repeat this step for every new PowerShell session you start. To learn how to persist
+your Azure sign-in across PowerShell sessions, see
+[Azure PowerShell context objects](/powershell/azure/context-persistence).
+
+## Troubleshooting
+
+For solutions to common installation issues with the Az PowerShell module, see
+[Troubleshoot installation problems with the Az PowerShell module](troubleshooting.md#installation).
+
+## Provide feedback
+
+To file an issue about the Az PowerShell module, see:
+[file an issue on GitHub](https://github.com/Azure/azure-powershell/issues).
+
+To provide feedback from within a PowerShell session, use the
+[Send-Feedback](/powershell/module/az.accounts/send-feedback) cmdlet.
+
+## Next Steps
+
+To learn more about managing your Azure resources with the Az PowerShell module, see
+[Get Started with Azure PowerShell](get-started-azureps.md).
diff --git a/docs-conceptual/azps-12.2.0/install-azps-macos.md b/docs-conceptual/azps-12.2.0/install-azps-macos.md
new file mode 100644
index 0000000000..19e3c995ad
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/install-azps-macos.md
@@ -0,0 +1,82 @@
+---
+description: Learn how to install and run Azure PowerShell on macOS. You can install Azure PowerShell on macOS with one command.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Install Azure PowerShell on macOS
+---
+
+# Install Azure PowerShell on macOS
+
+This article explains how to install the Az PowerShell module from
+[the PowerShell Gallery](/powershell/scripting/gallery/overview) on macOS.
+
+The Az PowerShell module is a rollup module. Installing it downloads the generally available Az
+PowerShell modules and makes their cmdlets available for use.
+
+## Prerequisites
+
+- Install a supported version of
+ [PowerShell version 7 or higher](/powershell/scripting/install/installing-powershell-on-macos)
+
+## Installation
+
+Open the Terminal or other shell host application and run `pwsh` to start PowerShell.
+
+Use the [Install-Module](/powershell/module/powershellget/install-module) cmdlet to install the Az
+PowerShell module:
+
+```powershell
+Install-Module -Name Az -Repository PSGallery -Force
+```
+
+## Update the Azure PowerShell module
+
+Use the [Update-Module](/powershell/module/powershellget/update-module) cmdlet to update to the
+latest version of the Az PowerShell module.
+
+```powershell
+Update-Module -Name Az -Force
+```
+
+Updating the Az PowerShell module using `Update-Module` doesn't remove old versions of the Az
+PowerShell module from your system.
+
+## Uninstallation
+
+To remove the Az PowerShell module from your system, see
+[Uninstall the Azure PowerShell module](uninstall-az-ps.md).
+
+## Sign in
+
+To start managing your Azure resources with the Az PowerShell module, launch a PowerShell session
+and run `Connect-AzAccount` to sign in to Azure:
+
+```azurepowershell
+Connect-AzAccount
+```
+
+Use your Azure account login credentials to log into the browser window that opens.
+
+You'll need to repeat this step for every new PowerShell session you start. To learn how to persist
+your Azure sign-in across PowerShell sessions, see
+[Azure PowerShell context objects](/powershell/azure/context-persistence).
+
+## Troubleshooting
+
+For solutions to common installation issues with the Az PowerShell module, see
+[Troubleshoot installation problems with the Az PowerShell module](troubleshooting.md#installation).
+
+## Provide feedback
+
+To file an issue about the Az PowerShell module, see:
+[file an issue on GitHub](https://github.com/Azure/azure-powershell/issues).
+
+To provide feedback from within a PowerShell session, use the
+[Send-Feedback](/powershell/module/az.accounts/send-feedback) cmdlet.
+
+## Next steps
+
+To learn more about managing your Azure resources with the Az PowerShell module, see
+[Get Started with Azure PowerShell](get-started-azureps.md).
diff --git a/docs-conceptual/azps-12.2.0/install-azps-offline.md b/docs-conceptual/azps-12.2.0/install-azps-offline.md
new file mode 100644
index 0000000000..b2a269f91d
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/install-azps-offline.md
@@ -0,0 +1,143 @@
+---
+description: Learn how to install Azure PowerShell offline on a system without access to the internet or the PowerShell Gallery.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Offline Installation of Azure PowerShell
+---
+
+# Offline Installation of Azure PowerShell
+
+In some environments, it's not possible to connect to the internet or the PowerShell Gallery. In
+those situations, you can install the Az PowerShell module offline using one of these methods.
+
+## Prerequisites
+
+- Install a supported version of [PowerShell version 7 or higher][install-powershell]
+- Windows PowerShell 5.1 is also supported if your're running a Windows operating system.
+
+## Cross platform
+
+The following installation options for the Az PowerShell module are available cross-platform on all
+platforms including Windows, Linux, and macOS.
+
+### Install from tar archive
+
+> [!TIP]
+> The `tar` command-line utility is required to use this installation option. Its available by
+> default on Windows 10 version 1803 or higher, most Linux distributions, and current versions of
+> macOS.
+
+1. On a system with access to the internet, define the destination path where you want to save the
+ tar archive.
+
+ ```powershell
+ $downloadFolderPath = "$home/Downloads"
+ ```
+
+1. Verify the download folder exists. Create the folder otherwise.
+
+ ```powershell
+ if (-not (Test-Path -Path $downloadFolderPath -PathType Container)) {
+ New-Item -Path $downloadFolderPath -ItemType Directory
+ }
+ ```
+
+1. Determine the URL of the tar archive for the latest Az PowerShell module version on GitHub.
+
+ ```powershell
+ $tarSourceUrl = (
+ Invoke-RestMethod -Uri https://api.github.com/repos/azure/azure-powershell/releases/latest |
+ Select-Object -ExpandProperty assets | Where-Object content_type -eq 'application/x-gzip'
+ ).browser_download_url
+ ```
+
+1. Store the tar filename and destination filepath in variables.
+
+ ```powershell
+ $fileName = Split-Path -Path $tarSourceUrl -Leaf
+ $downloadFilePath = Join-Path -Path $downloadFolderPath -ChildPath $fileName
+ ```
+
+1. Download the tar archive from GitHub using PowerShell.
+
+ ```powershell
+ Invoke-WebRequest -Uri $tarSourceUrl -OutFile $downloadFilePath
+ ```
+
+1. Unblock the downloaded file if you're running a Windows operating system.
+
+ ```powershell
+ if ($PSVersionTable.PSVersion.Major -le 5 -or $IsWindows -eq $true) {
+ Unblock-File -Path $downloadFilePath
+ }
+ ```
+
+ > [!NOTE]
+ > Copy the tar archive to your offline system. Define the `$downloadFilePath` and
+ > `$downloadFolderPath` variables or specify actual values instead of using the variables in the
+ > following commands on your offline system.
+
+1. Extract the contents of the tar archive.
+
+ ```powershell
+ tar zxf $downloadFilePath -C $downloadFolderPath
+ ```
+
+1. Run the `InstallModule.ps1` script that's one of the extracted files on the offline system where
+ you want to install the Az PowerShell module.
+
+ ```powershell
+ .$downloadFolderPath/InstallModule.ps1
+ ```
+
+### Save and copy installation
+
+Download the Az PowerShell module with `Save-Module` or `Save-PSResource` to a network location
+using a system with access to the internet and the PowerShell Gallery. These commands save the Az
+module and its dependencies to the specified location. Use the saved modules as the installation
+source and copy them to the offline system.
+
+### Install from a private repository
+
+Create a private repository on your local network and use it as installation source for your offline
+system. To learn more, see [Working with Private PowerShellGet Repositories][private-repositories].
+
+This method allows you to cache PowerShell modules on a single server or file share to be deployed
+with **PowerShellGet** or **Microsoft.PowerShell.PSResourceGet** to any disconnected systems.
+
+## Windows
+
+On Windows, you also have the option of installing the Az PowerShell module with an MSI if you're
+using Windows PowerShell version 5.1.
+
+> [!IMPORTANT]
+> Keep in mind that the MSI installer only works for Windows PowerShell 5.1.
+
+- [Install Azure PowerShell on Windows with the MSI Installer][install-azps-msi].
+
+## Troubleshooting
+
+For solutions to common installation issues with the Az PowerShell module, see
+[Troubleshoot installation problems with the Az PowerShell module][troubleshoot-install].
+
+## See also
+
+- [Save-Module][save-module]
+- [Save-PSResource][save-psresource]
+
+## Next Steps
+
+To learn more about managing your Azure resources with the Az PowerShell module, see
+[Get Started with Azure PowerShell][get-started-azps].
+
+
+
+[install-powershell]: /powershell/scripting/install/installing-powershell-on-macos
+[private-repositories]: /powershell/scripting/gallery/how-to/working-with-local-psrepositories
+[install-azps-msi]: /powershell/azure/install-azps-windows?tabs=powershell&pivots=windows-msi
+[troubleshoot-install]: troubleshooting.md#installation
+[save-module]: /powershell/module/PowershellGet/Save-Module
+[save-psresource]: /powershell/module/microsoft.powershell.psresourceget/save-psresource
+[get-started-azps]: get-started-azureps.md
diff --git a/docs-conceptual/azps-12.2.0/install-azps-windows.md b/docs-conceptual/azps-12.2.0/install-azps-windows.md
new file mode 100644
index 0000000000..b822ec3e23
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/install-azps-windows.md
@@ -0,0 +1,208 @@
+---
+description: Learn how to install and run Azure PowerShell on Windows. You can install Azure PowerShell on Windows with one command.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Install Azure PowerShell on Windows | Microsoft Docs
+zone_pivot_group_filename: azure/zone-pivot-groups.json
+zone_pivot_groups: install-azps-windows
+---
+
+# Install Azure PowerShell on Windows
+
+The Az PowerShell module is a rollup module. Installing the Az PowerShell module downloads the
+generally available modules and makes their cmdlets available for use.
+
+The recommended installation method and PowerShell version for the Az PowerShell module:
+
+- Install from the PowerShell Gallery
+- Use with PowerShell version 7 or higher
+
+::: zone pivot="windows-psgallery"
+
+This article explains how to install the Az PowerShell module on Windows from the
+[PowerShell Gallery](/powershell/scripting/gallery/overview).
+
+## Prerequisites
+
+- Run the following command from PowerShell to determine your PowerShell version:
+
+ ```powershell
+ $PSVersionTable.PSVersion
+ ```
+
+- Determine if you have the AzureRM PowerShell module installed:
+
+ ```powershell
+ Get-Module -Name AzureRM -ListAvailable
+ ```
+
+ > [!IMPORTANT]
+ > If you have the AzureRM PowerShell module installed, see
+ > [Az and AzureRM coexistence](troubleshooting.md#az-and-azurerm-coexistence) before proceeding.
+
+# [PowerShell 7](#tab/powershell)
+
+- Install a supported version of
+ [PowerShell version 7 or higher](/powershell/scripting/install/installing-powershell-on-windows)
+
+# [Windows PowerShell](#tab/windowspowershell)
+
+- Update to
+ [Windows PowerShell 5.1](/powershell/scripting/windows-powershell/install/installing-windows-powershell#upgrading-existing-windows-powershell)
+- Install [.NET Framework 4.7.2 or later](/dotnet/framework/install)
+- Update PowerShellGet
+
+ Launch Windows PowerShell 5.1 elevated as an administrator and run the following command to
+ update PowerShellGet:
+
+ ```powershell
+ Install-Module -Name PowerShellGet -Force
+ ```
+
+---
+
+- Set the PowerShell execution policy to remote signed or less restrictive
+
+ - Check the PowerShell execution policy:
+
+ ```powershell
+ Get-ExecutionPolicy -List
+ ```
+
+ - Set the PowerShell execution policy to remote signed:
+
+ ```powershell
+ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
+ ```
+
+ For more information about execution policies, see
+ [about_Execution_Policies](/powershell/module/microsoft.powershell.core/about/about_execution_policies).
+
+## Installation
+
+Use the [Install-Module](/powershell/module/powershellget/install-module) cmdlet to install the Az
+PowerShell module:
+
+```powershell
+Install-Module -Name Az -Repository PSGallery -Force
+```
+
+## Update the Az PowerShell module
+
+Use [Update-Module](/powershell/module/powershellget/update-module) to update to the latest version
+of the Az PowerShell module:
+
+```powershell
+Update-Module -Name Az -Force
+```
+
+Updating the Az PowerShell module using `Update-Module` doesn't remove old versions of the Az
+PowerShell module from your system.
+
+## Uninstallation
+
+To remove the Az PowerShell module, see
+[Uninstall the Azure PowerShell module](uninstall-az-ps.md).
+
+::: zone-end
+
+::: zone pivot="windows-msi"
+
+This article explains how to install the Az PowerShell module on Windows using an MSI installer. The
+MSI installer is provided for environments where the PowerShell Gallery may be blocked by a
+firewall, or an offline installer is needed.
+
+> [!IMPORTANT]
+> The MSI installation option can only be used to install the Az PowerShell module for use with
+> Windows PowerShell 5.1.
+
+## Prerequisites
+
+- Run the following command from PowerShell to determine your PowerShell version:
+
+ ```powershell
+ $PSVersionTable.PSVersion
+ ```
+
+- Determine if you have the AzureRM PowerShell module installed
+
+ ```powershell
+ Get-Module -Name AzureRM -ListAvailable
+ ```
+
+ > [!IMPORTANT]
+ > If you have the AzureRM PowerShell module installed, see
+ > [Az and AzureRM coexistence](troubleshooting.md#az-and-azurerm-coexistence) before proceeding.
+
+- Update to
+ [Windows PowerShell 5.1](/powershell/scripting/windows-powershell/install/installing-windows-powershell#upgrading-existing-windows-powershell)
+- Install [.NET Framework 4.7.2 or later](/dotnet/framework/install)
+
+- Set the PowerShell script execution to remote signed or less restrictive
+
+ - Check the PowerShell execution policy:
+
+ ```powershell
+ Get-ExecutionPolicy -List
+ ```
+
+ - Set the PowerShell execution policy to remote signed:
+
+ ```powershell
+ Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
+ ```
+
+ For more information about execution policies, see
+ [about_Execution_Policies](/powershell/module/microsoft.powershell.core/about/about_execution_policies).
+
+## Installation and update
+
+The MSI package for Azure PowerShell is available from
+[GitHub](https://github.com/Azure/azure-powershell/releases):
+
+1. Visit
+ [github.com/Azure/azure-powershell/releases](https://github.com/Azure/azure-powershell/releases)
+1. Locate the most recent Az PowerShell module. They are listed chronologically with no name. For example, `9.5.0`
+1. Scroll down to the end of the patch notes and click the arrow next to "Assets" to reveal the
+ MSI options.
+1. Click on the Az-Cmdlets MSI of your choice to start the download
+
+The installer automatically removes older versions of the Az PowerShell module that were installed
+using an MSI. The MSI package installs modules in `"${env:ProgramFiles}\WindowsPowerShell\Modules"`
+
+::: zone-end
+
+## Sign in
+
+To start managing your Azure resources with the Az PowerShell module, launch a PowerShell session
+and run `Connect-AzAccount` to sign in to Azure:
+
+```azurepowershell
+Connect-AzAccount
+```
+
+Use your Azure account login credentials to log into the browser window that opens.
+
+You'll need to repeat this step for every new PowerShell session you start. To learn how to persist
+your Azure sign-in across PowerShell sessions, see
+[Azure PowerShell context objects](context-persistence.md).
+
+## Troubleshooting
+
+For solutions to common installation issues with the Az PowerShell module, see
+[Troubleshoot installation problems with the Az PowerShell module](troubleshooting.md#installation).
+
+## Provide feedback
+
+To file an issue about the Az PowerShell module, see:
+[file an issue on GitHub](https://github.com/Azure/azure-powershell/issues)
+
+To provide feedback from within a PowerShell session, use the
+[Send-Feedback](/powershell/module/az.accounts/send-feedback) cmdlet.
+
+## Next Steps
+
+To learn more about managing your Azure resources with the Az PowerShell module, see
+[Get Started with Azure PowerShell](get-started-azureps.md).
diff --git a/docs-conceptual/azps-12.2.0/install-azure-powershell.md b/docs-conceptual/azps-12.2.0/install-azure-powershell.md
new file mode 100644
index 0000000000..89c2ca72a6
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/install-azure-powershell.md
@@ -0,0 +1,38 @@
+---
+description: Azure PowerShell is available to install for Windows, Linux, and macOS. It can also be run from Azure Cloud Shell and in a Docker container.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: How to install Azure PowerShell
+---
+
+# How to install Azure PowerShell
+
+The Az PowerShell module is a rollup module. Installing the Az PowerShell module downloads the
+generally available modules and makes their cmdlets available for use.
+
+## Install
+
+[!INCLUDE [current-version](../includes/current-version.md)] For information about the latest
+release, see the [release notes](release-notes-azureps.md).
+
+- [Install on Windows](install-azps-windows.md)
+- [Install on Linux](install-azps-linux.md)
+- [Install on macOS](install-azps-macos.md)
+- [Run in Azure Cloud Shell](https://shell.azure.com/)
+- [Run in Docker container](azureps-in-docker.md)
+
+A supported version of
+[PowerShell version 7 or higher](/powershell/scripting/install/installing-powershell-on-windows) is
+the recommended version of PowerShell for use with the Az PowerShell module on all platforms
+including Windows, Linux, and macOS.
+
+The Az PowerShell module is preinstalled in Azure [Cloud Shell](/azure/cloud-shell/overview) and in
+[Docker images](azureps-in-docker.md).
+
+## See also
+
+- [What is Azure PowerShell](what-is-azure-powershell.md)
+- [Get started with Azure PowerShell](get-started-azureps.md)
+- [Support Lifecycle](azureps-support-lifecycle.md)
diff --git a/docs-conceptual/azps-12.2.0/manage-azure-resources-invoke-azrestmethod.md b/docs-conceptual/azps-12.2.0/manage-azure-resources-invoke-azrestmethod.md
new file mode 100644
index 0000000000..9afec89853
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/manage-azure-resources-invoke-azrestmethod.md
@@ -0,0 +1,133 @@
+---
+description: How to use Azure PowerShell to manage resources with the Invoke-AzRestMethod cmdlet.
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Manage Azure resources with Invoke-AzRestMethod
+---
+
+# Manage Azure resources with Invoke-AzRestMethod
+
+[Invoke-AzRestMethod](/powershell/module/az.accounts/invoke-azrestmethod) is an Azure PowerShell
+cmdlet that was introduced in Az PowerShell module version 4.4.0. It allows you to make custom HTTP
+requests to the Azure Resource Manager (ARM) endpoint using the Az context.
+
+This cmdlet is useful when you want to manage Azure services for features that aren't yet available
+in the Az PowerShell module.
+
+## How to use Invoke-AzRestMethod
+
+As an example, you can allow access to Azure Container Registry (ACR) only for specific networks or
+deny public access. As of Az PowerShell module version 4.5.0, that feature isn't available yet in
+the [Az.ContainerRegistry PowerShell module](/powershell/module/Az.ContainerRegistry/). However, it
+can be managed in the interim with `Invoke-AzRestMethod`.
+
+## Using Invoke-AzRestMethod with GET operations
+
+The following example demonstrates how to use the `Invoke-AzRestMethod` cmdlet with a GET operation:
+
+```azurepowershell-interactive
+$getParams = @{
+ ResourceGroupName = 'myresourcegroup'
+ ResourceProviderName = 'Microsoft.ContainerRegistry'
+ ResourceType = 'registries'
+ Name = 'myacr'
+ ApiVersion = '2019-12-01-preview'
+ Method = 'GET'
+}
+Invoke-AzRestMethod @getParams
+```
+
+To allow maximum flexibility, most of the parameters for `Invoke-AzRestMethod` are optional.
+However, when you're managing resources within a resource group, you'll need to provide either the
+full ID to the resource or parameters like resource group, resource provider, and resource type.
+
+The `ResourceType` and `Name` parameters can take multiple values when targeting resources that
+require more than one name. For example, to manipulate a saved search in a Log Analytics workspace,
+the parameters look like the following example:
+`-ResourceType @('workspaces', 'savedsearches') -Name @('my-la', 'my-search')`.
+
+Using a mapping based on the position in the array, the cmdlet constructs the following resource:
+`Id:'/workspaces/my-la/savedsearches/my-search'`.
+
+The `APIVersion` parameter allows you to use a specific API version, including preview ones. The
+supported API versions for Azure Resource providers can be found in the
+[azure-rest-api-specs](https://github.com/Azure/azure-rest-api-specs) GitHub repository.
+
+You can find the definition for the `2019-12-01-preview` ACR API version in the following location:
+[azure-rest-api-specs/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/](https://github.com/Azure/azure-rest-api-specs/tree/master/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview).
+
+## Using Invoke-AzRestMethod with PATCH operations
+
+You can disable public access to the existing ACR named `myacr` in the `myresourcegroup` resource
+group using the `Invoke-AzRestMethod` cmdlet.
+
+To disable the public network access, you need to make a **PATCH** call to the API that changes the
+value of the `publicNetwokAccess` parameter as shown in the following example:
+
+```azurepowershell-interactive
+$patchParams = @{
+ ResourceGroupName = 'myresourcegroup'
+ Name = 'myacr'
+ ResourceProviderName = 'Microsoft.ContainerRegistry'
+ ResourceType = 'registries'
+ ApiVersion = '2019-12-01-preview'
+ Payload = '{ "properties": {
+ "publicNetworkAccess": "Disabled"
+ } }'
+ Method = 'PATCH'
+}
+Invoke-AzRestMethod @patchParams
+```
+
+The `Payload` property is a JSON string that shows the path of the property to be modified.
+
+All the parameters for this API are described in the **rest-api-spec** file associated with this API.
+The specific definition for the publicNetworkAccess parameter can be found in the
+[container registry JSON file](https://github.com/Azure/azure-rest-api-specs/blob/2a9da9a79d0a7b74089567ec4f0289f3e0f31bec/specification/containerregistry/resource-manager/Microsoft.ContainerRegistry/preview/2019-12-01-preview/containerregistry.json)
+for the `2019-12-01-preview` API version.
+
+To only allow access to the registry from a specific IP address, the payload needs to be modified as
+shown in the following example:
+
+```azurepowershell-interactive
+$specificIpParams = @{
+ ResourceGroupName = 'myresourcegroup'
+ Name = 'myacr'
+ ResourceProviderName = 'Microsoft.ContainerRegistry'
+ ResourceType = 'registries'
+ ApiVersion = '2019-12-01-preview'
+ Payload = '{ "properties": {
+ "networkRuleSet": {
+ "defaultAction": "Deny",
+ "ipRules": [ {
+ "action": "Allow",
+ "value": "24.22.123.123"
+ } ]
+ }
+ } }'
+ Method = 'PATCH'
+}
+Invoke-AzRestMethod @specificIpParams
+```
+
+## Comparison to Get-AzResource, New-AzResource, and Remove-AzResource
+
+The `*-AzResource` cmdlets allow you to customize the REST API call to Azure by specifying the
+resource type, the API version, and the properties to be updated. However, the properties need to be
+created first as a `PSObject`. This process adds an additional level of complexity and can become
+complicated.
+
+`Invoke-AzRestMethod` offers a way to manage Azure resources. As shown in the previous example, you
+can build a JSON string and use it to customize the REST API call without having to pre-create any
+`PSObjects`.
+
+If you're already familiar with the `*-AzResource` cmdlets, you can continue using them. We've no
+plans to stop supporting them. With `Invoke-AzRestMethod`, we've added a new cmdlet to your toolkit.
+
+## See Also
+
+- [Get-AzResource](/powershell/module/az.resources/get-azresource)
+- [New-AzResource](/powershell/module/az.resources/new-azresource)
+- [Remove-AzResource](/powershell/module/az.resources/remove-azresource)
diff --git a/docs-conceptual/azps-12.2.0/manage-subscriptions-azureps.md b/docs-conceptual/azps-12.2.0/manage-subscriptions-azureps.md
new file mode 100644
index 0000000000..56e199d2eb
--- /dev/null
+++ b/docs-conceptual/azps-12.2.0/manage-subscriptions-azureps.md
@@ -0,0 +1,55 @@
+---
+description: Manage Azure subscriptions with Azure PowerShell
+ms.custom: devx-track-azurepowershell
+ms.devlang: powershell
+ms.service: azure-powershell
+ms.topic: conceptual
+title: Manage Azure subscriptions with Azure PowerShell
+---
+
+# Use multiple Azure subscriptions
+
+Most Azure users only have a single subscription. However, if you are part of more than one
+organization or your organization has divided up access to certain resources across groupings, you
+may have multiple subscriptions within Azure.
+
+For detailed information on subscriptions, billing, and cost management, see the
+[billing and cost management documentation](/azure/billing/).
+
+## Tenants, users, and subscriptions
+
+You might have some confusion over the difference between tenants, users, and subscriptions within
+Azure. A _tenant_ is the Microsoft Entra entity that encompasses a whole organization. This
+tenant has at least one _subscription_ and _user_. A user is an individual and is associated with
+only one tenant, the organization that they belong to. Users are those accounts that sign in to
+Azure to create, manage, and use resources. A user may have access to multiple _subscriptions_,
+which are the agreements with Microsoft to use cloud services, including Azure. Every resource is
+associated with a subscription.
+
+To learn more about the differences between tenants, users, and subscriptions, see the
+[Azure cloud terminology dictionary](/azure/azure-glossary-cloud-terminology). To learn how to add a
+new subscription to your Microsoft Entra tenant, see
+[Associate or add an Azure subscription to your Microsoft Entra tenant](/azure/active-directory/active-directory-how-subscriptions-associated-directory).
+To learn how to sign in to a specific tenant, see
+[Sign in with Azure PowerShell](/powershell/azure/authenticate-azureps).
+
+## Change the active subscription
+
+In Azure PowerShell, accessing the resources for a subscription requires changing the subscription
+associated with your current Azure session. This is done by modifying the active session context,
+the information about which tenant, subscription, and user cmdlets should be run against. In order
+to change subscriptions, you use the [Set-AzContext](/powershell/module/az.accounts/set-azcontext)
+cmdlet to change the current context.
+
+The following example shows how to change the context in your current Azure session:
+
+```azurepowershell-interactive
+Set-AzContext -Subscription