About This Page
This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.
Bias Analysis
Bias Types:
⚠️
powershell_heavy
⚠️
windows_first
⚠️
missing_linux_example
Summary:
The documentation page demonstrates a strong Windows/Powershell bias. The primary example for deploying an ExpressRoute circuit via an ARM template is provided exclusively in Azure PowerShell, with no equivalent Azure CLI (cross-platform) or Bash example. Instructions and workflow steps are written for PowerShell users, and the 'Try it' and copy-paste instructions are tailored to the PowerShell experience. While there is a brief mention of Azure CLI and REST API as alternative deployment methods, no concrete CLI or Bash examples are given, and the PowerShell approach is presented first and in detail.
Recommendations:
- Add equivalent Azure CLI (az) examples for all PowerShell scripts, including parameter prompts and deployment commands.
- Include Bash shell instructions for Linux/macOS users, especially for steps like copying and pasting commands.
- Present CLI and PowerShell examples side-by-side or in tabs, so users can easily select their preferred environment.
- Avoid language that assumes the user is on Windows or using PowerShell (e.g., 'Right-click the shell console').
- Ensure that all steps (creation, deletion, etc.) have both PowerShell and CLI/Bash code blocks.
- Explicitly state that Azure CLI is cross-platform and supported on Windows, Linux, and macOS.
Create pull request
Flagged Code Snippets
* **SKU tier** determines whether an ExpressRoute circuit is [Local](expressroute-faqs.md#expressroute-local), Standard, or [Premium](expressroute-faqs.md#expressroute-premium). You can specify *Local*, *Standard, or *Premium*.
* **SKU family** determines the billing type. You can specify *Metereddata* for a metered data plan and *Unlimiteddata* for an unlimited data plan. You can change the billing type from *Metereddata* to *Unlimiteddata*, but you can't change the type from *Unlimiteddata* to *Metereddata*. A *Local* circuit is *Unlimiteddata* only.
* **Peering Location** is the physical location where you are peering with Microsoft.
> [!IMPORTANT]
> The Peering Location indicates the [physical location](expressroute-locations.md) where you are peering with Microsoft. This is **not** linked to "Location" property, which refers to the geography where the Azure Network Resource Provider is located. While they are not related, it is a good practice to choose a Network Resource Provider geographically close to the Peering Location of the circuit.
The resource group name is the service bus namespace name with **rg** appended.
2. Select **Copy** to copy the PowerShell script.
3. Right-click the shell console, and then select **Paste**.
It takes a few moments to create an event hub.
Azure PowerShell is used to deploy the template in this tutorial. For other template deployment methods, see:
* [By using the Azure portal](../azure-resource-manager/templates/deploy-portal.md).
* [By using Azure CLI](../azure-resource-manager/templates/deploy-cli.md).
* [By using REST API](../azure-resource-manager/templates/deploy-rest.md).
## <a name="delete"></a>Deprovisioning and deleting an ExpressRoute circuit
You can delete your ExpressRoute circuit by selecting the **delete** icon. Note the following information:
* You must unlink all virtual networks from the ExpressRoute circuit. If this operation fails, check whether any virtual networks are linked to the circuit.
* If the ExpressRoute circuit service provider provisioning state is **Provisioning** or **Provisioned** you must work with your service provider to deprovision the circuit on their side. We continue to reserve resources and bill you until the service provider completes deprovisioning the circuit and notifies us.
* If the service provider has deprovisioned the circuit (the service provider provisioning state is set to **Not provisioned**), you can delete the circuit. This stops billing for the circuit.
You can delete your ExpressRoute circuit by running the following PowerShell command: