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@2022-01-01' = {
scope: resourceSymbolicName or scope
___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 |
| scope |
Use when creating a resource at a scope that is different than the deployment scope. |
Set this property to the symbolic name of a resource to apply the extension resource. |
| 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
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": "2022-01-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 |
'2022-01-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@2022-01-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) |
| parent_id |
The ID of the resource to apply this extension resource to. |
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@2022-01-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 = ["*"]
}