Bicep resource definition
The expressRouteGateways resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Network/expressRouteGateways resource, add the following Bicep to your template.
resource symbolicname 'Microsoft.Network/expressRouteGateways@2021-08-01' = {
location: 'string'
name: 'string'
properties: {
autoScaleConfiguration: {
bounds: {
max: int
min: int
}
}
expressRouteConnections: [
{
id: 'string'
name: 'string'
properties: {
authorizationKey: 'string'
enableInternetSecurity: bool
expressRouteCircuitPeering: {
id: 'string'
}
expressRouteGatewayBypass: bool
routingConfiguration: {
associatedRouteTable: {
id: 'string'
}
propagatedRouteTables: {
ids: [
{
id: 'string'
}
]
labels: [
'string'
]
}
vnetRoutes: {
staticRoutes: [
{
addressPrefixes: [
'string'
]
name: 'string'
nextHopIpAddress: 'string'
}
]
}
}
routingWeight: int
}
}
]
virtualHub: {
id: 'string'
}
}
tags: {
{customized property}: 'string'
}
}
Property Values
Microsoft.Network/expressRouteGateways
| Name |
Description |
Value |
| location |
Resource location. |
string |
| name |
The resource name |
string (required) |
| properties |
Properties of the express route gateway. |
ExpressRouteGatewayProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
ExpressRouteCircuitPeeringId
| Name |
Description |
Value |
| id |
The ID of the ExpressRoute circuit peering. |
string |
ExpressRouteConnection
| Name |
Description |
Value |
| id |
Resource ID. |
string |
| name |
The name of the resource. |
string (required) |
| properties |
Properties of the express route connection. |
ExpressRouteConnectionProperties |
ExpressRouteConnectionProperties
| Name |
Description |
Value |
| authorizationKey |
Authorization key to establish the connection. |
string |
| enableInternetSecurity |
Enable internet security. |
bool |
| expressRouteCircuitPeering |
The ExpressRoute circuit peering. |
ExpressRouteCircuitPeeringId (required) |
| expressRouteGatewayBypass |
Enable FastPath to vWan Firewall hub. |
bool |
| routingConfiguration |
The Routing Configuration indicating the associated and propagated route tables on this connection. |
RoutingConfiguration |
| routingWeight |
The routing weight associated to the connection. |
int |
ExpressRouteGatewayProperties
ExpressRouteGatewayPropertiesAutoScaleConfiguration
ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds
| Name |
Description |
Value |
| max |
Maximum number of scale units deployed for ExpressRoute gateway. |
int |
| min |
Minimum number of scale units deployed for ExpressRoute gateway. |
int |
PropagatedRouteTable
| Name |
Description |
Value |
| ids |
The list of resource ids of all the RouteTables. |
SubResource[] |
| labels |
The list of labels. |
string[] |
RoutingConfiguration
| Name |
Description |
Value |
| associatedRouteTable |
The resource id RouteTable associated with this RoutingConfiguration. |
SubResource |
| propagatedRouteTables |
The list of RouteTables to advertise the routes to. |
PropagatedRouteTable |
| vnetRoutes |
List of routes that control routing from VirtualHub into a virtual network connection. |
VnetRoute |
StaticRoute
| Name |
Description |
Value |
| addressPrefixes |
List of all address prefixes. |
string[] |
| name |
The name of the StaticRoute that is unique within a VnetRoute. |
string |
| nextHopIpAddress |
The ip address of the next hop. |
string |
SubResource
| Name |
Description |
Value |
| id |
Resource ID. |
string |
VirtualHubId
| Name |
Description |
Value |
| id |
The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription. |
string |
VnetRoute
| Name |
Description |
Value |
| staticRoutes |
List of all Static Routes. |
StaticRoute[] |
Usage Examples
Bicep Samples
A basic example of deploying ExpressRoute gateway.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource expressRouteGateway 'Microsoft.Network/expressRouteGateways@2022-07-01' = {
name: resourceName
location: location
properties: {
allowNonVirtualWanTraffic: false
autoScaleConfiguration: {
bounds: {
min: 1
}
}
virtualHub: {
id: virtualHub.id
}
}
}
resource virtualHub 'Microsoft.Network/virtualHubs@2022-07-01' = {
name: resourceName
location: location
properties: {
addressPrefix: '10.0.1.0/24'
hubRoutingPreference: 'ExpressRoute'
virtualRouterAutoScaleConfiguration: {
minCapacity: 2
}
virtualWan: {
id: virtualWan.id
}
}
}
resource virtualWan 'Microsoft.Network/virtualWans@2022-07-01' = {
name: resourceName
location: location
properties: {
allowBranchToBranchTraffic: true
disableVpnEncryption: false
office365LocalBreakoutCategory: 'None'
type: 'Standard'
}
}
Azure Verified Modules
The following Azure Verified Modules can be used to deploy this resource type.
ARM template resource definition
The expressRouteGateways resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Network/expressRouteGateways resource, add the following JSON to your template.
{
"type": "Microsoft.Network/expressRouteGateways",
"apiVersion": "2021-08-01",
"name": "string",
"location": "string",
"properties": {
"autoScaleConfiguration": {
"bounds": {
"max": "int",
"min": "int"
}
},
"expressRouteConnections": [
{
"id": "string",
"name": "string",
"properties": {
"authorizationKey": "string",
"enableInternetSecurity": "bool",
"expressRouteCircuitPeering": {
"id": "string"
},
"expressRouteGatewayBypass": "bool",
"routingConfiguration": {
"associatedRouteTable": {
"id": "string"
},
"propagatedRouteTables": {
"ids": [
{
"id": "string"
}
],
"labels": [ "string" ]
},
"vnetRoutes": {
"staticRoutes": [
{
"addressPrefixes": [ "string" ],
"name": "string",
"nextHopIpAddress": "string"
}
]
}
},
"routingWeight": "int"
}
}
],
"virtualHub": {
"id": "string"
}
},
"tags": {
"{customized property}": "string"
}
}
Property Values
Microsoft.Network/expressRouteGateways
| Name |
Description |
Value |
| apiVersion |
The api version |
'2021-08-01' |
| location |
Resource location. |
string |
| name |
The resource name |
string (required) |
| properties |
Properties of the express route gateway. |
ExpressRouteGatewayProperties |
| tags |
Resource tags |
Dictionary of tag names and values. See Tags in templates |
| type |
The resource type |
'Microsoft.Network/expressRouteGateways' |
ExpressRouteCircuitPeeringId
| Name |
Description |
Value |
| id |
The ID of the ExpressRoute circuit peering. |
string |
ExpressRouteConnection
| Name |
Description |
Value |
| id |
Resource ID. |
string |
| name |
The name of the resource. |
string (required) |
| properties |
Properties of the express route connection. |
ExpressRouteConnectionProperties |
ExpressRouteConnectionProperties
| Name |
Description |
Value |
| authorizationKey |
Authorization key to establish the connection. |
string |
| enableInternetSecurity |
Enable internet security. |
bool |
| expressRouteCircuitPeering |
The ExpressRoute circuit peering. |
ExpressRouteCircuitPeeringId (required) |
| expressRouteGatewayBypass |
Enable FastPath to vWan Firewall hub. |
bool |
| routingConfiguration |
The Routing Configuration indicating the associated and propagated route tables on this connection. |
RoutingConfiguration |
| routingWeight |
The routing weight associated to the connection. |
int |
ExpressRouteGatewayProperties
ExpressRouteGatewayPropertiesAutoScaleConfiguration
ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds
| Name |
Description |
Value |
| max |
Maximum number of scale units deployed for ExpressRoute gateway. |
int |
| min |
Minimum number of scale units deployed for ExpressRoute gateway. |
int |
PropagatedRouteTable
| Name |
Description |
Value |
| ids |
The list of resource ids of all the RouteTables. |
SubResource[] |
| labels |
The list of labels. |
string[] |
RoutingConfiguration
| Name |
Description |
Value |
| associatedRouteTable |
The resource id RouteTable associated with this RoutingConfiguration. |
SubResource |
| propagatedRouteTables |
The list of RouteTables to advertise the routes to. |
PropagatedRouteTable |
| vnetRoutes |
List of routes that control routing from VirtualHub into a virtual network connection. |
VnetRoute |
StaticRoute
| Name |
Description |
Value |
| addressPrefixes |
List of all address prefixes. |
string[] |
| name |
The name of the StaticRoute that is unique within a VnetRoute. |
string |
| nextHopIpAddress |
The ip address of the next hop. |
string |
SubResource
| Name |
Description |
Value |
| id |
Resource ID. |
string |
VirtualHubId
| Name |
Description |
Value |
| id |
The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription. |
string |
VnetRoute
| Name |
Description |
Value |
| staticRoutes |
List of all Static Routes. |
StaticRoute[] |
Usage Examples
Azure Quickstart Templates
The following Azure Quickstart templates deploy this resource type.
The expressRouteGateways resource type can be deployed with operations that target:
For a list of changed properties in each API version, see change log.
To create a Microsoft.Network/expressRouteGateways resource, add the following Terraform to your template.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.Network/expressRouteGateways@2021-08-01"
name = "string"
parent_id = "string"
location = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
autoScaleConfiguration = {
bounds = {
max = int
min = int
}
}
expressRouteConnections = [
{
id = "string"
name = "string"
properties = {
authorizationKey = "string"
enableInternetSecurity = bool
expressRouteCircuitPeering = {
id = "string"
}
expressRouteGatewayBypass = bool
routingConfiguration = {
associatedRouteTable = {
id = "string"
}
propagatedRouteTables = {
ids = [
{
id = "string"
}
]
labels = [
"string"
]
}
vnetRoutes = {
staticRoutes = [
{
addressPrefixes = [
"string"
]
name = "string"
nextHopIpAddress = "string"
}
]
}
}
routingWeight = int
}
}
]
virtualHub = {
id = "string"
}
}
}
}
Property Values
Microsoft.Network/expressRouteGateways
| Name |
Description |
Value |
| location |
Resource location. |
string |
| name |
The resource name |
string (required) |
| properties |
Properties of the express route gateway. |
ExpressRouteGatewayProperties |
| tags |
Resource tags |
Dictionary of tag names and values. |
| type |
The resource type |
"Microsoft.Network/expressRouteGateways@2021-08-01" |
ExpressRouteCircuitPeeringId
| Name |
Description |
Value |
| id |
The ID of the ExpressRoute circuit peering. |
string |
ExpressRouteConnection
| Name |
Description |
Value |
| id |
Resource ID. |
string |
| name |
The name of the resource. |
string (required) |
| properties |
Properties of the express route connection. |
ExpressRouteConnectionProperties |
ExpressRouteConnectionProperties
| Name |
Description |
Value |
| authorizationKey |
Authorization key to establish the connection. |
string |
| enableInternetSecurity |
Enable internet security. |
bool |
| expressRouteCircuitPeering |
The ExpressRoute circuit peering. |
ExpressRouteCircuitPeeringId (required) |
| expressRouteGatewayBypass |
Enable FastPath to vWan Firewall hub. |
bool |
| routingConfiguration |
The Routing Configuration indicating the associated and propagated route tables on this connection. |
RoutingConfiguration |
| routingWeight |
The routing weight associated to the connection. |
int |
ExpressRouteGatewayProperties
ExpressRouteGatewayPropertiesAutoScaleConfiguration
ExpressRouteGatewayPropertiesAutoScaleConfigurationBounds
| Name |
Description |
Value |
| max |
Maximum number of scale units deployed for ExpressRoute gateway. |
int |
| min |
Minimum number of scale units deployed for ExpressRoute gateway. |
int |
PropagatedRouteTable
| Name |
Description |
Value |
| ids |
The list of resource ids of all the RouteTables. |
SubResource[] |
| labels |
The list of labels. |
string[] |
RoutingConfiguration
| Name |
Description |
Value |
| associatedRouteTable |
The resource id RouteTable associated with this RoutingConfiguration. |
SubResource |
| propagatedRouteTables |
The list of RouteTables to advertise the routes to. |
PropagatedRouteTable |
| vnetRoutes |
List of routes that control routing from VirtualHub into a virtual network connection. |
VnetRoute |
StaticRoute
| Name |
Description |
Value |
| addressPrefixes |
List of all address prefixes. |
string[] |
| name |
The name of the StaticRoute that is unique within a VnetRoute. |
string |
| nextHopIpAddress |
The ip address of the next hop. |
string |
SubResource
| Name |
Description |
Value |
| id |
Resource ID. |
string |
VirtualHubId
| Name |
Description |
Value |
| id |
The resource URI for the Virtual Hub where the ExpressRoute gateway is or will be deployed. The Virtual Hub resource and the ExpressRoute gateway resource reside in the same subscription. |
string |
VnetRoute
| Name |
Description |
Value |
| staticRoutes |
List of all Static Routes. |
StaticRoute[] |
Usage Examples
A basic example of deploying ExpressRoute gateway.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "virtualWan" {
type = "Microsoft.Network/virtualWans@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
allowBranchToBranchTraffic = true
disableVpnEncryption = false
office365LocalBreakoutCategory = "None"
type = "Standard"
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "virtualHub" {
type = "Microsoft.Network/virtualHubs@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
addressPrefix = "10.0.1.0/24"
hubRoutingPreference = "ExpressRoute"
virtualRouterAutoScaleConfiguration = {
minCapacity = 2
}
virtualWan = {
id = azapi_resource.virtualWan.id
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}
resource "azapi_resource" "expressRouteGateway" {
type = "Microsoft.Network/expressRouteGateways@2022-07-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
allowNonVirtualWanTraffic = false
autoScaleConfiguration = {
bounds = {
min = 1
}
}
virtualHub = {
id = azapi_resource.virtualHub.id
}
}
}
schema_validation_enabled = false
response_export_values = ["*"]
}