diff --git a/Commands/network/vnet-gateway/_create.md b/Commands/network/vnet-gateway/_create.md index 58a9d0ee2..55a7cc524 100644 --- a/Commands/network/vnet-gateway/_create.md +++ b/Commands/network/vnet-gateway/_create.md @@ -175,3 +175,29 @@ Create a virtual network gateway. ```bash network vnet-gateway create --gateway-type Vpn --location westus2 --name MyVnetGateway --no-wait --public-ip-addresses myVGPublicIPAddress --resource-group MyResourceGroup --sku Basic --vnet MyVnet --vpn-type PolicyBased ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + + +#### examples + +- Create a basic virtual network gateway for site-to-site connectivity. + ```bash + network vnet-gateway create -g MyResourceGroup -n MyVnetGateway --public-ip-address MyGatewayIp --vnet MyVnet --gateway-type Vpn --sku VpnGw1 --vpn-type RouteBased --no-wait + ``` + +- Create a basic virtual network gateway that provides point-to-site connectivity with a RADIUS secret that matches what is configured on a RADIUS server. + ```bash + network vnet-gateway create -g MyResourceGroup -n MyVnetGateway --public-ip-address MyGatewayIp --vnet MyVnet --gateway-type Vpn --sku VpnGw1 --vpn-type RouteBased --address-prefixes 40.1.0.0/24 --client-protocol IkeV2 SSTP --radius-secret 111_aaa --radius-server 30.1.1.15 --vpn-gateway-generation Generation1 + ``` + +- Create a basic virtual network gateway with multi authentication + ```bash + network vnet-gateway create -g MyResourceGroup -n MyVnetGateway --public-ip-address MyGatewayIp --vnet MyVnet --gateway-type Vpn --sku VpnGw1 --vpn-type RouteBased --address-prefixes 40.1.0.0/24 --client-protocol OpenVPN --radius-secret 111_aaa --radius-server 30.1.1.15 --aad-issuer https://sts.windows.net/00000-000000-00000-0000-000/ --aad-tenant https://login.microsoftonline.com/000 --aad-audience 0000-000 --root-cert-name root-cert --root-cert-data "root-cert.cer" --vpn-auth-type AAD Certificate Radius + ``` + +- Create a virtual network gateway. + ```bash + network vnet-gateway create --gateway-type Vpn --location westus2 --name MyVnetGateway --no-wait --public-ip-addresses myVGPublicIPAddress --resource-group MyResourceGroup --sku Basic --vnet MyVnet --vpn-type PolicyBased + ``` diff --git a/Commands/network/vnet-gateway/_delete.md b/Commands/network/vnet-gateway/_delete.md index 31d8d311d..95cdaf8f4 100644 --- a/Commands/network/vnet-gateway/_delete.md +++ b/Commands/network/vnet-gateway/_delete.md @@ -82,3 +82,14 @@ In order to delete a Virtual Network Gateway, you must first delete ALL Connecti ```bash network vnet-gateway delete -g MyResourceGroup -n MyVnetGateway ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + + +#### examples + +- Delete a virtual network gateway. + ```bash + network vnet-gateway delete -g MyResourceGroup -n MyVnetGateway + ``` diff --git a/Commands/network/vnet-gateway/_list.md b/Commands/network/vnet-gateway/_list.md index 18620dfab..24415af1e 100644 --- a/Commands/network/vnet-gateway/_list.md +++ b/Commands/network/vnet-gateway/_list.md @@ -80,3 +80,14 @@ List virtual network gateways. ```bash network vnet-gateway list -g MyResourceGroup ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.xml) **Stable** + + + +#### examples + +- List virtual network gateways in a resource group. + ```bash + network vnet-gateway list -g MyResourceGroup + ``` diff --git a/Commands/network/vnet-gateway/_show.md b/Commands/network/vnet-gateway/_show.md index 71070ef12..505a63ae2 100644 --- a/Commands/network/vnet-gateway/_show.md +++ b/Commands/network/vnet-gateway/_show.md @@ -80,3 +80,14 @@ Get the details of a virtual network gateway. ```bash network vnet-gateway show -g MyResourceGroup -n MyVnetGateway ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + + +#### examples + +- Get the details of a virtual network gateway. + ```bash + network vnet-gateway show -g MyResourceGroup -n MyVnetGateway + ``` diff --git a/Commands/network/vnet-gateway/_update.md b/Commands/network/vnet-gateway/_update.md index f495f68b9..959ca105f 100644 --- a/Commands/network/vnet-gateway/_update.md +++ b/Commands/network/vnet-gateway/_update.md @@ -110,3 +110,19 @@ Update a virtual network gateway. ```bash network vnet-gateway update --address-prefixes 40.1.0.0/24 --client-protocol IkeV2 --name MyVnetGateway --resource-group MyResourceGroup ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + + +#### examples + +- Change the SKU of a virtual network gateway. + ```bash + network vnet-gateway update -g MyResourceGroup -n MyVnetGateway --sku VpnGw2 + ``` + +- Update a virtual network gateway. + ```bash + network vnet-gateway update --address-prefixes 40.1.0.0/24 --client-protocol IkeV2 --name MyVnetGateway --resource-group MyResourceGroup + ``` diff --git a/Commands/network/vnet-gateway/identity/_assign.md b/Commands/network/vnet-gateway/identity/_assign.md index bb31409b2..defcf8f44 100644 --- a/Commands/network/vnet-gateway/identity/_assign.md +++ b/Commands/network/vnet-gateway/identity/_assign.md @@ -11,3 +11,14 @@ Assign the user or system managed identities. ### [2024-07-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2024-07-01.xml) **Stable** + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + + +#### examples + +- UpdateVirtualNetworkGateway + ```bash + network vnet-gateway identity assign --resource-group rg1 --name vpngw + ``` diff --git a/Commands/network/vnet-gateway/identity/_remove.md b/Commands/network/vnet-gateway/identity/_remove.md index 1620a5c9d..e903f742b 100644 --- a/Commands/network/vnet-gateway/identity/_remove.md +++ b/Commands/network/vnet-gateway/identity/_remove.md @@ -11,3 +11,7 @@ Remove the user or system managed identities. ### [2024-07-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2024-07-01.xml) **Stable** + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + diff --git a/Commands/network/vnet-gateway/identity/_show.md b/Commands/network/vnet-gateway/identity/_show.md index 6328aec4c..7f0243dce 100644 --- a/Commands/network/vnet-gateway/identity/_show.md +++ b/Commands/network/vnet-gateway/identity/_show.md @@ -11,3 +11,7 @@ Show the details of managed identities. ### [2024-07-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2024-07-01.xml) **Stable** + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml) **Stable** + + diff --git a/Commands/network/vpn-connection/_create.md b/Commands/network/vpn-connection/_create.md index d4885bc4d..30ffb18c7 100644 --- a/Commands/network/vpn-connection/_create.md +++ b/Commands/network/vpn-connection/_create.md @@ -23,3 +23,7 @@ Create a VPN connection. ### [2024-07-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2024-07-01.xml) **Stable** + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml) **Stable** + + diff --git a/Commands/network/vpn-connection/_delete.md b/Commands/network/vpn-connection/_delete.md index 0cbe42d48..793c92921 100644 --- a/Commands/network/vpn-connection/_delete.md +++ b/Commands/network/vpn-connection/_delete.md @@ -58,3 +58,14 @@ Delete a VPN connection. ```bash network vpn-connection delete -g MyResourceGroup -n MyConnection ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml) **Stable** + + + +#### examples + +- Delete a VPN connection. + ```bash + network vpn-connection delete -g MyResourceGroup -n MyConnection + ``` diff --git a/Commands/network/vpn-connection/_list.md b/Commands/network/vpn-connection/_list.md index 9acb05ae4..86a0b26e4 100644 --- a/Commands/network/vpn-connection/_list.md +++ b/Commands/network/vpn-connection/_list.md @@ -58,3 +58,14 @@ List all VPN connections. ```bash network vpn-connection list -g MyResourceGroup ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.xml) **Stable** + + + +#### examples + +- List all VPN connections in a resource group. + ```bash + network vpn-connection list -g MyResourceGroup + ``` diff --git a/Commands/network/vpn-connection/_show.md b/Commands/network/vpn-connection/_show.md index f5f6616d0..3c41c0ee9 100644 --- a/Commands/network/vpn-connection/_show.md +++ b/Commands/network/vpn-connection/_show.md @@ -58,3 +58,14 @@ Get the details of a VPN connection. ```bash network vpn-connection show -g MyResourceGroup -n MyConnection ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml) **Stable** + + + +#### examples + +- View the details of a VPN connection. + ```bash + network vpn-connection show -g MyResourceGroup -n MyConnection + ``` diff --git a/Commands/network/vpn-connection/_update.md b/Commands/network/vpn-connection/_update.md index e01247220..e16dd4694 100644 --- a/Commands/network/vpn-connection/_update.md +++ b/Commands/network/vpn-connection/_update.md @@ -78,3 +78,19 @@ Update a VPN connection. ```bash network vpn-connection update --name MyConnection --resource-group MyResourceGroup --use-policy-based-traffic-selectors true ``` + +### [2025-01-01](/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml) **Stable** + + + +#### examples + +- Add BGP to an existing connection. + ```bash + network vpn-connection update -g MyResourceGroup -n MyConnection --enable-bgp True + ``` + +- Update a VPN connection. + ```bash + network vpn-connection update --name MyConnection --resource-group MyResourceGroup --use-policy-based-traffic-selectors true + ``` diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.json b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.json new file mode 100644 index 000000000..2aa1f4b5b --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.json @@ -0,0 +1 @@ +{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucw==/V/MjAyNS0wMS0wMQ=="}], "commandGroups": [{"name": "network vpn-connection", "commands": [{"name": "list", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucw==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"operationId": "VirtualNetworkGatewayConnections_List", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "nextLink"}, {"type": "array", "name": "value", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"type": "string", "name": "connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds"}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "egressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "required": true}]}}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "ingressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "array<@IpsecPolicy_read>", "name": "ipsecPolicies", "item": {"type": "@IpsecPolicy_read"}}, {"type": "object", "name": "localNetworkGateway2", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_read", "name": "bgpSettings"}, {"type": "string", "name": "fqdn"}, {"type": "string", "name": "gatewayIpAddress"}, {"type": "@AddressSpace_read", "name": "localNetworkAddressSpace"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}, {"type": "@SubResource_read", "name": "peer"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "integer32", "name": "routingWeight"}, {"type": "string", "name": "sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"readOnly": true, "type": "array", "name": "tunnelConnectionStatus", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"readOnly": true, "type": "string", "name": "lastConnectionEstablishedUtcTime"}, {"readOnly": true, "type": "string", "name": "tunnel"}]}}, {"type": "array", "name": "tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "required": true, "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}], "cls": "BgpSettings_read"}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_read"}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}, {"type": "@VirtualNetworkGateway_read", "name": "virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "array", "ref": "$Instance.value", "clientFlatten": true, "nextLink": "$Instance.nextLink"}], "confirmation": ""}]}]} \ No newline at end of file diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.xml b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.xml new file mode 100644 index 000000000..1428e3b90 --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25z/2025-01-01.xml @@ -0,0 +1,684 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.json b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.json new file mode 100644 index 000000000..120555079 --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.json @@ -0,0 +1 @@ +{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucy97dmlydHVhbE5ldHdvcmtHYXRld2F5Q29ubmVjdGlvbk5hbWV9/V/MjAyNS0wMS0wMQ=="}], "commandGroups": [{"name": "network vpn-connection", "commands": [{"name": "show", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucy97dmlydHVhbE5ldHdvcmtHYXRld2F5Q29ubmVjdGlvbk5hbWV9/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayConnectionName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Connection name."}}]}], "operations": [{"operationId": "VirtualNetworkGatewayConnections_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayConnectionName", "arg": "$Path.virtualNetworkGatewayConnectionName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"type": "string", "name": "connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds"}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "egressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "required": true}]}}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "ingressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "array<@IpsecPolicy_read>", "name": "ipsecPolicies", "item": {"type": "@IpsecPolicy_read"}}, {"type": "object", "name": "localNetworkGateway2", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_read", "name": "bgpSettings"}, {"type": "string", "name": "fqdn"}, {"type": "string", "name": "gatewayIpAddress"}, {"type": "@AddressSpace_read", "name": "localNetworkAddressSpace"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}, {"type": "@SubResource_read", "name": "peer"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "integer32", "name": "routingWeight"}, {"type": "string", "name": "sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"readOnly": true, "type": "array", "name": "tunnelConnectionStatus", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"readOnly": true, "type": "string", "name": "lastConnectionEstablishedUtcTime"}, {"readOnly": true, "type": "string", "name": "tunnel"}]}}, {"type": "array", "name": "tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "required": true, "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}], "cls": "BgpSettings_read"}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_read"}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}, {"type": "@VirtualNetworkGateway_read", "name": "virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucy97dmlydHVhbE5ldHdvcmtHYXRld2F5Q29ubmVjdGlvbk5hbWV9/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayConnectionName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Connection name."}}]}], "operations": [{"longRunning": {"finalStateVia": "location"}, "operationId": "VirtualNetworkGatewayConnections_Delete", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}", "request": {"method": "delete", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayConnectionName", "arg": "$Path.virtualNetworkGatewayConnectionName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200]}, {"statusCode": [202]}, {"statusCode": [204]}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": ""}, {"name": "create", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucy97dmlydHVhbE5ldHdvcmtHYXRld2F5Q29ubmVjdGlvbk5hbWV9/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayConnectionName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Connection name."}}]}, {"name": "Parameters", "args": [{"type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "var": "$parameters.location", "options": ["l", "location"], "group": "Parameters", "help": {"short": "Resource location."}}, {"type": "object", "var": "$parameters.tags", "options": ["tags"], "group": "Parameters", "help": {"short": "Resource tags."}, "additionalProps": {"item": {"type": "string"}}}]}, {"name": "Properties", "args": [{"type": "string", "var": "$parameters.properties.authenticationType", "options": ["authentication-type"], "group": "Properties", "help": {"short": "Gateway connection authentication type."}, "enum": {"items": [{"name": "Certificate", "value": "Certificate"}, {"name": "PSK", "value": "PSK"}]}}, {"type": "string", "var": "$parameters.properties.authorizationKey", "options": ["authorization-key"], "group": "Properties", "help": {"short": "The authorizationKey."}}, {"type": "object", "var": "$parameters.properties.certificateAuthentication", "options": ["certificate-authentication"], "group": "Properties", "help": {"short": "Certificate Authentication information for a certificate based authentication connection."}, "args": [{"type": "array", "var": "$parameters.properties.certificateAuthentication.inboundAuthCertificateChain", "options": ["inbound-auth-certificate-chain"], "help": {"short": "Inbound authentication certificate public keys."}, "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.certificateAuthentication.inboundAuthCertificateSubjectName", "options": ["inbound-auth-certificate-subject-name"], "help": {"short": "Inbound authentication certificate subject name."}}, {"type": "string", "var": "$parameters.properties.certificateAuthentication.outboundAuthCertificate", "options": ["outbound-auth-certificate"], "help": {"short": "Keyvault secret ID for outbound authentication certificate."}}]}, {"type": "string", "var": "$parameters.properties.connectionMode", "options": ["connection-mode"], "group": "Properties", "help": {"short": "The connection mode for this connection."}, "enum": {"items": [{"name": "Default", "value": "Default"}, {"name": "InitiatorOnly", "value": "InitiatorOnly"}, {"name": "ResponderOnly", "value": "ResponderOnly"}]}}, {"type": "string", "var": "$parameters.properties.connectionProtocol", "options": ["connection-protocol"], "group": "Properties", "help": {"short": "Connection protocol used for this connection."}, "enum": {"items": [{"name": "IKEv1", "value": "IKEv1"}, {"name": "IKEv2", "value": "IKEv2"}]}}, {"type": "string", "var": "$parameters.properties.connectionType", "options": ["connection-type"], "required": true, "group": "Properties", "help": {"short": "Gateway connection type."}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "IPsec", "value": "IPsec"}, {"name": "VPNClient", "value": "VPNClient"}, {"name": "Vnet2Vnet", "value": "Vnet2Vnet"}]}}, {"type": "integer32", "var": "$parameters.properties.dpdTimeoutSeconds", "options": ["dpd-timeout-seconds"], "group": "Properties", "help": {"short": "The dead peer detection timeout of this connection in seconds."}}, {"type": "array<@SubResource_create>", "var": "$parameters.properties.egressNatRules", "options": ["egress-nat-rules"], "group": "Properties", "help": {"short": "List of egress NatRules."}, "item": {"type": "@SubResource_create"}}, {"type": "boolean", "var": "$parameters.properties.enableBgp", "options": ["enable-bgp"], "group": "Properties", "help": {"short": "EnableBgp flag."}}, {"type": "boolean", "var": "$parameters.properties.enablePrivateLinkFastPath", "options": ["enable-private-link-fast-path"], "group": "Properties", "help": {"short": "Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled."}}, {"type": "boolean", "var": "$parameters.properties.expressRouteGatewayBypass", "options": ["express-route-gateway-bypass"], "group": "Properties", "help": {"short": "Bypass ExpressRoute Gateway for data forwarding."}}, {"type": "array", "var": "$parameters.properties.gatewayCustomBgpIpAddresses", "options": ["gateway-custom-bgp-ip-addresses"], "group": "Properties", "help": {"short": "GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.gatewayCustomBgpIpAddresses[].customBgpIpAddress", "options": ["custom-bgp-ip-address"], "required": true, "help": {"short": "The custom BgpPeeringAddress which belongs to IpconfigurationId."}}, {"type": "string", "var": "$parameters.properties.gatewayCustomBgpIpAddresses[].ipConfigurationId", "options": ["ip-configuration-id"], "required": true, "help": {"short": "The IpconfigurationId of ipconfiguration which belongs to gateway."}}]}}, {"type": "array<@SubResource_create>", "var": "$parameters.properties.ingressNatRules", "options": ["ingress-nat-rules"], "group": "Properties", "help": {"short": "List of ingress NatRules."}, "item": {"type": "@SubResource_create"}}, {"type": "array<@IpsecPolicy_create>", "var": "$parameters.properties.ipsecPolicies", "options": ["ipsec-policies"], "group": "Properties", "help": {"short": "The IPSec Policies to be considered by this connection."}, "item": {"type": "@IpsecPolicy_create"}}, {"type": "object", "var": "$parameters.properties.localNetworkGateway2", "options": ["local-network-gateway2"], "group": "Properties", "help": {"short": "The reference to local network gateway resource."}, "args": [{"type": "ResourceId", "var": "$parameters.properties.localNetworkGateway2.id", "options": ["id"], "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "var": "$parameters.properties.localNetworkGateway2.location", "options": ["l", "location"], "help": {"short": "Resource location."}}, {"type": "@BgpSettings_create", "var": "$parameters.properties.localNetworkGateway2.properties.bgpSettings", "options": ["bgp-settings"], "group": "Properties", "help": {"short": "Local network gateway's BGP speaker settings."}}, {"type": "string", "var": "$parameters.properties.localNetworkGateway2.properties.fqdn", "options": ["fqdn"], "group": "Properties", "help": {"short": "FQDN of local network gateway."}}, {"type": "string", "var": "$parameters.properties.localNetworkGateway2.properties.gatewayIpAddress", "options": ["gateway-ip-address"], "group": "Properties", "help": {"short": "IP address of local network gateway."}}, {"type": "@AddressSpace_create", "var": "$parameters.properties.localNetworkGateway2.properties.localNetworkAddressSpace", "options": ["local-network-address-space"], "group": "Properties", "help": {"short": "Local network site address space."}}, {"type": "object", "var": "$parameters.properties.localNetworkGateway2.tags", "options": ["tags"], "help": {"short": "Resource tags."}, "additionalProps": {"item": {"type": "string"}}}]}, {"type": "@SubResource_create", "var": "$parameters.properties.peer", "options": ["peer"], "group": "Properties", "help": {"short": "The reference to peerings resource."}}, {"type": "integer32", "var": "$parameters.properties.routingWeight", "options": ["routing-weight"], "group": "Properties", "help": {"short": "The routing weight."}}, {"type": "string", "var": "$parameters.properties.sharedKey", "options": ["shared-key"], "group": "Properties", "help": {"short": "The IPSec shared key."}}, {"type": "array", "var": "$parameters.properties.trafficSelectorPolicies", "options": ["traffic-selector-policies"], "group": "Properties", "help": {"short": "The Traffic Selector Policies to be considered by this connection."}, "item": {"type": "object", "args": [{"type": "array", "var": "$parameters.properties.trafficSelectorPolicies[].localAddressRanges", "options": ["local-address-ranges"], "required": true, "help": {"short": "A collection of local address spaces in CIDR format."}, "item": {"type": "string"}}, {"type": "array", "var": "$parameters.properties.trafficSelectorPolicies[].remoteAddressRanges", "options": ["remote-address-ranges"], "required": true, "help": {"short": "A collection of remote address spaces in CIDR format."}, "item": {"type": "string"}}]}}, {"type": "array", "var": "$parameters.properties.tunnelProperties", "options": ["tunnel-properties"], "group": "Properties", "help": {"short": "Tunnel properties for virtual network gateway connection"}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.tunnelProperties[].bgpPeeringAddress", "options": ["bgp-peering-address"], "help": {"short": "Tunnel BGP peering address"}}, {"type": "string", "var": "$parameters.properties.tunnelProperties[].tunnelIpAddress", "options": ["tunnel-ip-address"], "help": {"short": "Tunnel remote IP address"}}]}}, {"type": "boolean", "var": "$parameters.properties.useLocalAzureIpAddress", "options": ["use-local-azure-ip-address"], "group": "Properties", "help": {"short": "Use private local Azure IP for the connection."}}, {"type": "boolean", "var": "$parameters.properties.usePolicyBasedTrafficSelectors", "options": ["use-policy-based-traffic-selectors"], "group": "Properties", "help": {"short": "Enable policy-based traffic selectors."}}, {"type": "object", "var": "$parameters.properties.virtualNetworkGateway1", "options": ["virtual-network-gateway1"], "required": true, "group": "Properties", "help": {"short": "The reference to virtual network gateway resource."}, "args": [{"type": "object", "var": "@VirtualNetworkGateway_create.extendedLocation", "options": ["extended-location"], "help": {"short": "The extended location of type local virtual network gateway."}, "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.extendedLocation.name", "options": ["name"], "help": {"short": "The name of the extended location."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.extendedLocation.type", "options": ["type"], "help": {"short": "The type of the extended location."}, "enum": {"items": [{"name": "EdgeZone", "value": "EdgeZone"}]}}]}, {"type": "ResourceId", "var": "@VirtualNetworkGateway_create.id", "options": ["id"], "hide": true, "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"blank": {"value": "True"}, "type": "string", "var": "@VirtualNetworkGateway_create.identity.systemAssigned", "options": ["system-assigned", "mi-system-assigned"], "group": "Identity", "help": {"short": "Set the system managed identity."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.identity.type", "options": ["type"], "hide": true, "group": "Identity", "help": {"short": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine."}, "enum": {"items": [{"name": "None", "value": "None"}, {"name": "SystemAssigned", "value": "SystemAssigned"}, {"name": "SystemAssigned, UserAssigned", "value": "SystemAssigned, UserAssigned"}, {"name": "UserAssigned", "value": "UserAssigned"}]}}, {"blank": {"value": []}, "type": "array", "var": "@VirtualNetworkGateway_create.identity.userAssigned", "options": ["user-assigned", "mi-user-assigned"], "group": "Identity", "help": {"short": "Set the user managed identities."}, "item": {"type": "string"}}, {"type": "object", "var": "@VirtualNetworkGateway_create.identity.userAssignedIdentities", "options": ["user-assigned-identities"], "hide": true, "group": "Identity", "help": {"short": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."}, "additionalProps": {"item": {"blank": {"value": {}}, "type": "object"}}}, {"type": "ResourceLocation", "var": "@VirtualNetworkGateway_create.location", "options": ["l", "location"], "help": {"short": "Resource location."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.activeActive", "options": ["active-active"], "group": "Properties", "help": {"short": "ActiveActive flag."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.adminState", "options": ["admin-state"], "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet"}, "enum": {"items": [{"name": "Disabled", "value": "Disabled"}, {"name": "Enabled", "value": "Enabled"}]}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.allowRemoteVnetTraffic", "options": ["allow-remote-vnet-traffic"], "group": "Properties", "help": {"short": "Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.allowVirtualWanTraffic", "options": ["allow-virtual-wan-traffic"], "group": "Properties", "help": {"short": "Configures this gateway to accept traffic from remote Virtual WAN networks."}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration", "options": ["auto-scale-configuration"], "group": "Properties", "help": {"short": "Autoscale configuration for virutal network gateway"}, "args": [{"type": "object", "var": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds", "options": ["bounds"], "help": {"short": "The bounds of the autoscale configuration"}, "args": [{"type": "integer", "var": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds.max", "options": ["max"], "help": {"short": "Maximum Scale Units for Autoscale configuration"}}, {"type": "integer", "var": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds.min", "options": ["min"], "help": {"short": "Minimum scale Units for Autoscale configuration"}}]}]}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.bgpSettings", "options": ["bgp-settings"], "group": "Properties", "help": {"short": "Virtual network gateway's BGP speaker settings."}, "args": [{"type": "integer64", "var": "@BgpSettings_create.asn", "options": ["asn"], "help": {"short": "The BGP speaker's ASN."}, "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "var": "@BgpSettings_create.bgpPeeringAddress", "options": ["bgp-peering-address"], "help": {"short": "The BGP peering address and BGP identifier of this BGP speaker."}}, {"type": "array", "var": "@BgpSettings_create.bgpPeeringAddresses", "options": ["bgp-peering-addresses"], "help": {"short": "BGP peering address with IP configuration ID for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "array", "var": "@BgpSettings_create.bgpPeeringAddresses[].customBgpIpAddresses", "options": ["custom-bgp-ip-addresses"], "help": {"short": "The list of custom BGP peering addresses which belong to IP configuration."}, "item": {"type": "string"}}, {"type": "string", "var": "@BgpSettings_create.bgpPeeringAddresses[].ipconfigurationId", "options": ["ipconfiguration-id"], "help": {"short": "The ID of IP configuration which belongs to gateway."}}]}}, {"type": "integer32", "var": "@BgpSettings_create.peerWeight", "options": ["peer-weight"], "help": {"short": "The weight added to routes learned from this BGP speaker."}}], "cls": "BgpSettings_create"}, {"type": "@AddressSpace_create", "var": "@VirtualNetworkGateway_create.properties.customRoutes", "options": ["custom-routes"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.disableIPSecReplayProtection", "options": ["disable-ip-sec-replay-protection"], "group": "Properties", "help": {"short": "disableIPSecReplayProtection flag."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.enableBgp", "options": ["enable-bgp"], "group": "Properties", "help": {"short": "Whether BGP is enabled for this virtual network gateway or not."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.enableBgpRouteTranslationForNat", "options": ["enable-bgp-route-translation-for-nat"], "group": "Properties", "help": {"short": "EnableBgpRouteTranslationForNat flag."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.enableDnsForwarding", "options": ["enable-dns-forwarding"], "group": "Properties", "help": {"short": "Whether dns forwarding is enabled or not."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.enableHighBandwidthVpnGateway", "options": ["enable-high-bandwidth-vpn-gateway"], "group": "Properties", "help": {"short": "To enable Advanced Connectivity feature for VPN gateway"}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.enablePrivateIpAddress", "options": ["enable-private-ip-address"], "group": "Properties", "help": {"short": "Whether private IP needs to be enabled on this gateway for connections or not."}}, {"type": "@SubResource_create", "var": "@VirtualNetworkGateway_create.properties.gatewayDefaultSite", "options": ["gateway-default-site"], "group": "Properties", "help": {"short": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.gatewayType", "options": ["gateway-type"], "group": "Properties", "help": {"short": "The type of this virtual network gateway."}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "LocalGateway", "value": "LocalGateway"}, {"name": "Vpn", "value": "Vpn"}]}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations", "options": ["ip-configurations"], "group": "Properties", "help": {"short": "IP configurations for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.privateIPAllocationMethod", "options": ["private-ip-allocation-method"], "group": "Properties", "help": {"short": "The private IP address allocation method."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}, {"type": "@SubResource_create", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.publicIPAddress", "options": ["public-ip-address"], "group": "Properties", "help": {"short": "The reference to the public IP resource."}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.subnet", "options": ["subnet"], "group": "Properties", "help": {"short": "The reference to the subnet resource."}, "args": [{"type": "string", "var": "@SubResource_create.id", "options": ["id"], "help": {"short": "Resource ID."}}], "cls": "SubResource_create"}]}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.natRules", "options": ["nat-rules"], "group": "Properties", "help": {"short": "NatRules for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "ResourceId", "var": "@VirtualNetworkGateway_create.properties.natRules[].id", "options": ["id"], "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.natRules[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array<@VpnNatRuleMapping_create>", "var": "@VirtualNetworkGateway_create.properties.natRules[].properties.externalMappings", "options": ["external-mappings"], "group": "Properties", "help": {"short": "The private IP address external mapping for NAT."}, "item": {"type": "@VpnNatRuleMapping_create"}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.natRules[].properties.internalMappings", "options": ["internal-mappings"], "group": "Properties", "help": {"short": "The private IP address internal mapping for NAT."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VpnNatRuleMapping_create.addressSpace", "options": ["address-space"], "help": {"short": "Address space for Vpn NatRule mapping."}}, {"type": "string", "var": "@VpnNatRuleMapping_create.portRange", "options": ["port-range"], "help": {"short": "Port range for Vpn NatRule mapping."}}], "cls": "VpnNatRuleMapping_create"}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.natRules[].properties.ipConfigurationId", "options": ["ip-configuration-id"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.natRules[].properties.mode", "options": ["mode"], "group": "Properties", "help": {"short": "The Source NAT direction of a VPN NAT."}, "enum": {"items": [{"name": "EgressSnat", "value": "EgressSnat"}, {"name": "IngressSnat", "value": "IngressSnat"}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.natRules[].properties.type", "options": ["type"], "group": "Properties", "help": {"short": "The type of NAT rule for VPN NAT."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.resiliencyModel", "options": ["resiliency-model"], "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed"}, "enum": {"items": [{"name": "MultiHomed", "value": "MultiHomed"}, {"name": "SingleHomed", "value": "SingleHomed"}]}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.sku", "options": ["sku"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway."}, "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.sku.name", "options": ["name"], "help": {"short": "Gateway SKU name."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.sku.tier", "options": ["tier"], "help": {"short": "Gateway SKU tier."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}]}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vNetExtendedLocationResourceId", "options": ["v-net-extended-location-resource-id"], "group": "Properties", "help": {"short": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet."}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus", "options": ["virtual-network-gateway-migration-status"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayMigrationStatus which represents the status of migration."}, "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.errorMessage", "options": ["error-message"], "help": {"short": "Error if any occurs during migration."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.phase", "options": ["phase"], "help": {"short": "Represent the current migration phase of gateway."}, "enum": {"items": [{"name": "Abort", "value": "Abort"}, {"name": "AbortSucceeded", "value": "AbortSucceeded"}, {"name": "Commit", "value": "Commit"}, {"name": "CommitSucceeded", "value": "CommitSucceeded"}, {"name": "Execute", "value": "Execute"}, {"name": "ExecuteSucceeded", "value": "ExecuteSucceeded"}, {"name": "None", "value": "None"}, {"name": "Prepare", "value": "Prepare"}, {"name": "PrepareSucceeded", "value": "PrepareSucceeded"}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.state", "options": ["state"], "help": {"short": "Represent the current state of gateway migration."}, "enum": {"items": [{"name": "Failed", "value": "Failed"}, {"name": "InProgress", "value": "InProgress"}, {"name": "None", "value": "None"}, {"name": "Succeeded", "value": "Succeeded"}]}}]}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "options": ["is-default"], "group": "Properties", "help": {"short": "Shows if this is a Default VirtualNetworkGatewayPolicyGroup or not."}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "options": ["policy-members"], "group": "Properties", "help": {"short": "Multiple PolicyMembers for VirtualNetworkGatewayPolicyGroup."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "options": ["attribute-type"], "help": {"short": "The Vpn Policy member attribute type."}, "enum": {"items": [{"name": "AADGroupId", "value": "AADGroupId"}, {"name": "CertificateGroupId", "value": "CertificateGroupId"}, {"name": "RadiusAzureGroupId", "value": "RadiusAzureGroupId"}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue", "options": ["attribute-value"], "help": {"short": "The value of Attribute used for this VirtualNetworkGatewayPolicyGroupMember."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name", "options": ["name"], "help": {"short": "Name of the VirtualNetworkGatewayPolicyGroupMember."}}]}}, {"type": "integer32", "var": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority for VirtualNetworkGatewayPolicyGroup."}}]}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration", "options": ["vpn-client-configuration"], "group": "Properties", "help": {"short": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations."}, "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadAudience", "options": ["aad-audience"], "help": {"short": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadIssuer", "options": ["aad-issuer"], "help": {"short": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadTenant", "options": ["aad-tenant"], "help": {"short": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServerAddress", "options": ["radius-server-address"], "help": {"short": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection."}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers", "options": ["radius-servers"], "help": {"short": "The radiusServers property for multiple radius server configuration."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "options": ["radius-server-address"], "required": true, "help": {"short": "The address of this radius server."}}, {"type": "integer64", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerScore", "options": ["radius-server-score"], "help": {"short": "The initial score assigned to this radius server."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The secret used for this radius server."}}]}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "options": ["vng-client-connection-configurations"], "help": {"short": "per ip address pool connection policy for virtual network gateway P2S client."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array<@SubResource_create>", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "List of references to virtualNetworkGatewayPolicyGroups"}, "item": {"type": "@SubResource_create"}}, {"type": "@AddressSpace_create", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}}]}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnAuthenticationTypes", "options": ["vpn-authentication-types"], "help": {"short": "VPN authentication types for the virtual network gateway.."}, "item": {"type": "string", "enum": {"items": [{"name": "AAD", "value": "AAD"}, {"name": "Certificate", "value": "Certificate"}, {"name": "Radius", "value": "Radius"}]}}}, {"type": "object", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}, "args": [{"type": "array", "var": "@AddressSpace_create.addressPrefixes", "options": ["address-prefixes"], "help": {"short": "A list of address blocks reserved for this virtual network in CIDR notation."}, "item": {"type": "string"}}, {"type": "array", "var": "@AddressSpace_create.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"type": "object", "args": [{"type": "string", "var": "@AddressSpace_create.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"type": "ResourceId", "var": "@AddressSpace_create.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}], "cls": "AddressSpace_create"}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "options": ["vpn-client-ipsec-policies"], "help": {"short": "VpnClientIpsecPolicies for virtual network gateway P2S client."}, "item": {"type": "object", "args": [{"type": "string", "var": "@IpsecPolicy_create.dhGroup", "options": ["dh-group"], "required": true, "help": {"short": "The DH Group used in IKE Phase 1 for initial SA."}, "enum": {"items": [{"name": "DHGroup1", "value": "DHGroup1"}, {"name": "DHGroup14", "value": "DHGroup14"}, {"name": "DHGroup2", "value": "DHGroup2"}, {"name": "DHGroup2048", "value": "DHGroup2048"}, {"name": "DHGroup24", "value": "DHGroup24"}, {"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "@IpsecPolicy_create.ikeEncryption", "options": ["ike-encryption"], "required": true, "help": {"short": "The IKE encryption algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}]}}, {"type": "string", "var": "@IpsecPolicy_create.ikeIntegrity", "options": ["ike-integrity"], "required": true, "help": {"short": "The IKE integrity algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}, {"name": "SHA384", "value": "SHA384"}]}}, {"type": "string", "var": "@IpsecPolicy_create.ipsecEncryption", "options": ["ipsec-encryption"], "required": true, "help": {"short": "The IPSec encryption algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "@IpsecPolicy_create.ipsecIntegrity", "options": ["ipsec-integrity"], "required": true, "help": {"short": "The IPSec integrity algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}]}}, {"type": "string", "var": "@IpsecPolicy_create.pfsGroup", "options": ["pfs-group"], "required": true, "help": {"short": "The Pfs Group used in IKE Phase 2 for new child SA."}, "enum": {"items": [{"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}, {"name": "PFS1", "value": "PFS1"}, {"name": "PFS14", "value": "PFS14"}, {"name": "PFS2", "value": "PFS2"}, {"name": "PFS2048", "value": "PFS2048"}, {"name": "PFS24", "value": "PFS24"}, {"name": "PFSMM", "value": "PFSMM"}]}}, {"type": "integer32", "var": "@IpsecPolicy_create.saDataSizeKilobytes", "options": ["sa-data-size-kilobytes"], "required": true, "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel."}}, {"type": "integer32", "var": "@IpsecPolicy_create.saLifeTimeSeconds", "options": ["sa-life-time-seconds"], "required": true, "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel."}}], "cls": "IpsecPolicy_create"}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientProtocols", "options": ["vpn-client-protocols"], "help": {"short": "VpnClientProtocols for Virtual network gateway."}, "item": {"type": "string", "enum": {"items": [{"name": "IkeV2", "value": "IkeV2"}, {"name": "OpenVPN", "value": "OpenVPN"}, {"name": "SSTP", "value": "SSTP"}]}}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "options": ["vpn-client-revoked-certificates"], "help": {"short": "VpnClientRevokedCertificate for Virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint", "options": ["thumbprint"], "group": "Properties", "help": {"short": "The revoked VPN client certificate thumbprint."}}]}}, {"type": "array", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates", "options": ["vpn-client-root-certificates"], "help": {"short": "VpnClientRootCertificate for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "options": ["public-cert-data"], "required": true, "group": "Properties", "help": {"short": "The certificate public data."}}]}}]}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnGatewayGeneration", "options": ["vpn-gateway-generation"], "group": "Properties", "help": {"short": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN."}, "enum": {"items": [{"name": "Generation1", "value": "Generation1"}, {"name": "Generation2", "value": "Generation2"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "@VirtualNetworkGateway_create.properties.vpnType", "options": ["vpn-type"], "group": "Properties", "help": {"short": "The type of this virtual network gateway."}, "enum": {"items": [{"name": "PolicyBased", "value": "PolicyBased"}, {"name": "RouteBased", "value": "RouteBased"}]}}, {"type": "object", "var": "@VirtualNetworkGateway_create.tags", "options": ["tags"], "help": {"short": "Resource tags."}, "additionalProps": {"item": {"type": "string"}}}], "cls": "VirtualNetworkGateway_create"}, {"type": "@VirtualNetworkGateway_create", "var": "$parameters.properties.virtualNetworkGateway2", "options": ["virtual-network-gateway2"], "group": "Properties", "help": {"short": "The reference to virtual network gateway resource."}}]}], "operations": [{"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayConnectionName", "arg": "$Path.virtualNetworkGatewayConnectionName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "arg": "$parameters.properties.authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey", "arg": "$parameters.properties.authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "arg": "$parameters.properties.certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "arg": "$parameters.properties.certificateAuthentication.inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName", "arg": "$parameters.properties.certificateAuthentication.inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate", "arg": "$parameters.properties.certificateAuthentication.outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "arg": "$parameters.properties.connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "arg": "$parameters.properties.connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"type": "string", "name": "connectionType", "arg": "$parameters.properties.connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds", "arg": "$parameters.properties.dpdTimeoutSeconds"}, {"type": "array<@SubResource_create>", "name": "egressNatRules", "arg": "$parameters.properties.egressNatRules", "item": {"type": "@SubResource_create"}}, {"type": "boolean", "name": "enableBgp", "arg": "$parameters.properties.enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath", "arg": "$parameters.properties.enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass", "arg": "$parameters.properties.expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses[].customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses[].ipConfigurationId", "required": true}]}}, {"type": "array<@SubResource_create>", "name": "ingressNatRules", "arg": "$parameters.properties.ingressNatRules", "item": {"type": "@SubResource_create"}}, {"type": "array<@IpsecPolicy_create>", "name": "ipsecPolicies", "arg": "$parameters.properties.ipsecPolicies", "item": {"type": "@IpsecPolicy_create"}}, {"type": "object", "name": "localNetworkGateway2", "arg": "$parameters.properties.localNetworkGateway2", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.localNetworkGateway2.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.properties.localNetworkGateway2.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_create", "name": "bgpSettings", "arg": "$parameters.properties.localNetworkGateway2.properties.bgpSettings"}, {"type": "string", "name": "fqdn", "arg": "$parameters.properties.localNetworkGateway2.properties.fqdn"}, {"type": "string", "name": "gatewayIpAddress", "arg": "$parameters.properties.localNetworkGateway2.properties.gatewayIpAddress"}, {"type": "@AddressSpace_create", "name": "localNetworkAddressSpace", "arg": "$parameters.properties.localNetworkGateway2.properties.localNetworkAddressSpace"}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.properties.localNetworkGateway2.tags", "additionalProps": {"item": {"type": "string"}}}]}, {"type": "@SubResource_create", "name": "peer", "arg": "$parameters.properties.peer"}, {"type": "integer32", "name": "routingWeight", "arg": "$parameters.properties.routingWeight"}, {"type": "string", "name": "sharedKey", "arg": "$parameters.properties.sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "arg": "$parameters.properties.trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "arg": "$parameters.properties.trafficSelectorPolicies[].localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "arg": "$parameters.properties.trafficSelectorPolicies[].remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"type": "array", "name": "tunnelProperties", "arg": "$parameters.properties.tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress", "arg": "$parameters.properties.tunnelProperties[].bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress", "arg": "$parameters.properties.tunnelProperties[].tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress", "arg": "$parameters.properties.useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors", "arg": "$parameters.properties.usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "arg": "$parameters.properties.virtualNetworkGateway1", "required": true, "props": [{"type": "object", "name": "extendedLocation", "arg": "@VirtualNetworkGateway_create.extendedLocation", "props": [{"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.extendedLocation.name"}, {"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_create.extendedLocation.type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "arg": "@VirtualNetworkGateway_create.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_create.identity.type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "arg": "@VirtualNetworkGateway_create.identity.userAssignedIdentities", "additionalProps": {"item": {"type": "object"}}}], "userAssigned": {"action": "create", "type": "array", "name": "userAssigned", "arg": "@VirtualNetworkGateway_create.identity.userAssigned", "item": {"action": "create", "type": "string"}}, "systemAssigned": {"action": "create", "type": "string", "name": "systemAssigned", "arg": "@VirtualNetworkGateway_create.identity.systemAssigned"}}, {"type": "ResourceLocation", "name": "location", "arg": "@VirtualNetworkGateway_create.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive", "arg": "@VirtualNetworkGateway_create.properties.activeActive"}, {"type": "string", "name": "adminState", "arg": "@VirtualNetworkGateway_create.properties.adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic", "arg": "@VirtualNetworkGateway_create.properties.allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic", "arg": "@VirtualNetworkGateway_create.properties.allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "arg": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "arg": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds", "props": [{"type": "integer", "name": "max", "arg": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds.max"}, {"type": "integer", "name": "min", "arg": "@VirtualNetworkGateway_create.properties.autoScaleConfiguration.bounds.min"}]}]}, {"type": "object", "name": "bgpSettings", "arg": "@VirtualNetworkGateway_create.properties.bgpSettings", "props": [{"type": "integer64", "name": "asn", "arg": "@BgpSettings_create.asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress", "arg": "@BgpSettings_create.bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "arg": "@BgpSettings_create.bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "arg": "@BgpSettings_create.bgpPeeringAddresses[].customBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId", "arg": "@BgpSettings_create.bgpPeeringAddresses[].ipconfigurationId"}]}}, {"type": "integer32", "name": "peerWeight", "arg": "@BgpSettings_create.peerWeight"}], "cls": "BgpSettings_create"}, {"type": "@AddressSpace_create", "name": "customRoutes", "arg": "@VirtualNetworkGateway_create.properties.customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection", "arg": "@VirtualNetworkGateway_create.properties.disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp", "arg": "@VirtualNetworkGateway_create.properties.enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat", "arg": "@VirtualNetworkGateway_create.properties.enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding", "arg": "@VirtualNetworkGateway_create.properties.enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway", "arg": "@VirtualNetworkGateway_create.properties.enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress", "arg": "@VirtualNetworkGateway_create.properties.enablePrivateIpAddress"}, {"type": "@SubResource_create", "name": "gatewayDefaultSite", "arg": "@VirtualNetworkGateway_create.properties.gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "arg": "@VirtualNetworkGateway_create.properties.gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"type": "array", "name": "ipConfigurations", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "privateIPAllocationMethod", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"type": "@SubResource_create", "name": "publicIPAddress", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.publicIPAddress"}, {"type": "object", "name": "subnet", "arg": "@VirtualNetworkGateway_create.properties.ipConfigurations[].properties.subnet", "props": [{"type": "string", "name": "id", "arg": "@SubResource_create.id"}], "cls": "SubResource_create"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "arg": "@VirtualNetworkGateway_create.properties.natRules", "item": {"type": "object", "props": [{"type": "ResourceId", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.natRules[].id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.natRules[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_create>", "name": "externalMappings", "arg": "@VirtualNetworkGateway_create.properties.natRules[].properties.externalMappings", "item": {"type": "@VpnNatRuleMapping_create"}}, {"type": "array", "name": "internalMappings", "arg": "@VirtualNetworkGateway_create.properties.natRules[].properties.internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace", "arg": "@VpnNatRuleMapping_create.addressSpace"}, {"type": "string", "name": "portRange", "arg": "@VpnNatRuleMapping_create.portRange"}], "cls": "VpnNatRuleMapping_create"}}, {"type": "string", "name": "ipConfigurationId", "arg": "@VirtualNetworkGateway_create.properties.natRules[].properties.ipConfigurationId"}, {"type": "string", "name": "mode", "arg": "@VirtualNetworkGateway_create.properties.natRules[].properties.mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_create.properties.natRules[].properties.type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}]}}, {"type": "string", "name": "resiliencyModel", "arg": "@VirtualNetworkGateway_create.properties.resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"type": "object", "name": "sku", "arg": "@VirtualNetworkGateway_create.properties.sku", "props": [{"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.sku.name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "arg": "@VirtualNetworkGateway_create.properties.sku.tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId", "arg": "@VirtualNetworkGateway_create.properties.vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.errorMessage"}, {"type": "string", "name": "phase", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayMigrationStatus.state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "required": true}, {"type": "array", "name": "policyMembers", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name"}]}}, {"type": "integer32", "name": "priority", "arg": "@VirtualNetworkGateway_create.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "required": true}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadAudience"}, {"type": "string", "name": "aadIssuer", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadIssuer"}, {"type": "string", "name": "aadTenant", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.aadTenant"}, {"type": "string", "name": "radiusServerAddress", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@SubResource_create>", "name": "virtualNetworkGatewayPolicyGroups", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_create"}}, {"type": "@AddressSpace_create", "name": "vpnClientAddressPool", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "arg": "@AddressSpace_create.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_create"}, {"type": "array", "name": "vpnClientIpsecPolicies", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "arg": "@IpsecPolicy_create.dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "arg": "@IpsecPolicy_create.ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "arg": "@IpsecPolicy_create.ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "arg": "@IpsecPolicy_create.ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "arg": "@IpsecPolicy_create.ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "arg": "@IpsecPolicy_create.pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "arg": "@IpsecPolicy_create.saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "arg": "@IpsecPolicy_create.saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_create"}}, {"type": "array", "name": "vpnClientProtocols", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "thumbprint", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "publicCertData", "arg": "@VirtualNetworkGateway_create.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "arg": "@VirtualNetworkGateway_create.properties.vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "arg": "@VirtualNetworkGateway_create.properties.vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "@VirtualNetworkGateway_create.tags", "additionalProps": {"item": {"type": "string"}}}], "cls": "VirtualNetworkGateway_create"}, {"type": "@VirtualNetworkGateway_create", "name": "virtualNetworkGateway2", "arg": "$parameters.properties.virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.tags", "additionalProps": {"item": {"type": "string"}}}], "clientFlatten": true}}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"type": "string", "name": "connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds"}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "egressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "required": true}]}}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "ingressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "array<@IpsecPolicy_read>", "name": "ipsecPolicies", "item": {"type": "@IpsecPolicy_read"}}, {"type": "object", "name": "localNetworkGateway2", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_read", "name": "bgpSettings"}, {"type": "string", "name": "fqdn"}, {"type": "string", "name": "gatewayIpAddress"}, {"type": "@AddressSpace_read", "name": "localNetworkAddressSpace"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}, {"type": "@SubResource_read", "name": "peer"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "integer32", "name": "routingWeight"}, {"type": "string", "name": "sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"readOnly": true, "type": "array", "name": "tunnelConnectionStatus", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"readOnly": true, "type": "string", "name": "lastConnectionEstablishedUtcTime"}, {"readOnly": true, "type": "string", "name": "tunnel"}]}}, {"type": "array", "name": "tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "required": true, "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}], "cls": "BgpSettings_read"}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_read"}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}, {"type": "@VirtualNetworkGateway_read", "name": "virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/connections/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay9jb25uZWN0aW9ucy97dmlydHVhbE5ldHdvcmtHYXRld2F5Q29ubmVjdGlvbk5hbWV9/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayConnectionName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Connection name."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enableBgp", "options": ["enable-bgp"], "group": "", "help": {"short": "Enable BGP (Border Gateway Protocol)."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.expressRouteGatewayBypass", "options": ["express-route-gateway-bypass"], "group": "", "help": {"short": "Bypass ExpressRoute gateway for data forwarding."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.routingWeight", "options": ["routing-weight"], "group": "", "help": {"short": "Connection routing weight."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.sharedKey", "options": ["shared-key"], "group": "", "help": {"short": "Shared IPSec key."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.usePolicyBasedTrafficSelectors", "options": ["use-policy-based-traffic-selectors"], "group": "", "help": {"short": "Enable policy-based traffic selectors."}}, {"nullable": true, "type": "object", "var": "$parameters.tags", "options": ["tags"], "group": "", "help": {"short": "Space-separated tags: key[=value] [key[=value] ...]. Use \"\" to clear existing tags."}, "additionalProps": {"item": {"nullable": true, "type": "string"}}}]}, {"name": "Parameters", "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"nullable": true, "type": "ResourceLocation", "var": "$parameters.location", "options": ["l", "location"], "hide": true, "group": "Parameters", "help": {"short": "Resource location."}}]}, {"name": "Properties", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.authenticationType", "options": ["auth-type", "authentication-type"], "group": "Properties", "help": {"short": "Gateway connection authentication type."}, "enum": {"items": [{"name": "Certificate", "value": "Certificate"}, {"name": "PSK", "value": "PSK"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.authorizationKey", "options": ["authorization-key"], "hide": true, "group": "Properties", "help": {"short": "The authorizationKey."}}, {"nullable": true, "type": "object", "var": "$parameters.properties.certificateAuthentication", "options": ["cert-auth", "certificate-authentication"], "group": "Properties", "help": {"short": "Certificate Authentication information for a certificate based authentication connection."}, "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.certificateAuthentication.inboundAuthCertificateChain", "options": ["inbound-auth-certificate-chain"], "help": {"short": "Inbound authentication certificate public keys."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.certificateAuthentication.inboundAuthCertificateSubjectName", "options": ["inbound-auth-certificate-subject-name"], "help": {"short": "Inbound authentication certificate subject name."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.certificateAuthentication.outboundAuthCertificate", "options": ["outbound-auth-certificate"], "help": {"short": "Keyvault secret ID for outbound authentication certificate."}}]}, {"nullable": true, "type": "string", "var": "$parameters.properties.connectionMode", "options": ["connection-mode"], "hide": true, "group": "Properties", "help": {"short": "The connection mode for this connection."}, "enum": {"items": [{"name": "Default", "value": "Default"}, {"name": "InitiatorOnly", "value": "InitiatorOnly"}, {"name": "ResponderOnly", "value": "ResponderOnly"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.connectionProtocol", "options": ["connection-protocol"], "hide": true, "group": "Properties", "help": {"short": "Connection protocol used for this connection."}, "enum": {"items": [{"name": "IKEv1", "value": "IKEv1"}, {"name": "IKEv2", "value": "IKEv2"}]}}, {"type": "string", "var": "$parameters.properties.connectionType", "options": ["connection-type"], "hide": true, "group": "Properties", "help": {"short": "Gateway connection type."}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "IPsec", "value": "IPsec"}, {"name": "VPNClient", "value": "VPNClient"}, {"name": "Vnet2Vnet", "value": "Vnet2Vnet"}]}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.dpdTimeoutSeconds", "options": ["dpd-timeout-seconds"], "hide": true, "group": "Properties", "help": {"short": "The dead peer detection timeout of this connection in seconds."}}, {"nullable": true, "type": "array<@SubResource_update>", "var": "$parameters.properties.egressNatRules", "options": ["egress-nat-rules"], "hide": true, "group": "Properties", "help": {"short": "List of egress NatRules."}, "item": {"nullable": true, "type": "@SubResource_update"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enablePrivateLinkFastPath", "options": ["enable-private-link-fast-path"], "hide": true, "group": "Properties", "help": {"short": "Bypass the ExpressRoute gateway when accessing private-links. ExpressRoute FastPath (expressRouteGatewayBypass) must be enabled."}}, {"nullable": true, "type": "array", "var": "$parameters.properties.gatewayCustomBgpIpAddresses", "options": ["gateway-custom-bgp-ip-addresses"], "hide": true, "group": "Properties", "help": {"short": "GatewayCustomBgpIpAddresses to be used for virtual network gateway Connection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "$parameters.properties.gatewayCustomBgpIpAddresses[].customBgpIpAddress", "options": ["custom-bgp-ip-address"], "help": {"short": "The custom BgpPeeringAddress which belongs to IpconfigurationId."}}, {"type": "string", "var": "$parameters.properties.gatewayCustomBgpIpAddresses[].ipConfigurationId", "options": ["ip-configuration-id"], "help": {"short": "The IpconfigurationId of ipconfiguration which belongs to gateway."}}]}}, {"nullable": true, "type": "array<@SubResource_update>", "var": "$parameters.properties.ingressNatRules", "options": ["ingress-nat-rules"], "hide": true, "group": "Properties", "help": {"short": "List of ingress NatRules."}, "item": {"nullable": true, "type": "@SubResource_update"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ipsecPolicies", "options": ["ipsec-policies"], "group": "Properties", "help": {"short": "The IPSec Policies to be considered by this connection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "$parameters.properties.ipsecPolicies[].dhGroup", "options": ["dh-group"], "help": {"short": "The DH Group used in IKE Phase 1 for initial SA."}, "enum": {"items": [{"name": "DHGroup1", "value": "DHGroup1"}, {"name": "DHGroup14", "value": "DHGroup14"}, {"name": "DHGroup2", "value": "DHGroup2"}, {"name": "DHGroup2048", "value": "DHGroup2048"}, {"name": "DHGroup24", "value": "DHGroup24"}, {"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.ipsecPolicies[].ikeEncryption", "options": ["ike-encryption"], "help": {"short": "The IKE encryption algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}]}}, {"type": "string", "var": "$parameters.properties.ipsecPolicies[].ikeIntegrity", "options": ["ike-integrity"], "help": {"short": "The IKE integrity algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}, {"name": "SHA384", "value": "SHA384"}]}}, {"type": "string", "var": "$parameters.properties.ipsecPolicies[].ipsecEncryption", "options": ["ipsec-encryption"], "help": {"short": "The IPSec encryption algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.ipsecPolicies[].ipsecIntegrity", "options": ["ipsec-integrity"], "help": {"short": "The IPSec integrity algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}]}}, {"type": "string", "var": "$parameters.properties.ipsecPolicies[].pfsGroup", "options": ["pfs-group"], "help": {"short": "The Pfs Group used in IKE Phase 2 for new child SA."}, "enum": {"items": [{"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}, {"name": "PFS1", "value": "PFS1"}, {"name": "PFS14", "value": "PFS14"}, {"name": "PFS2", "value": "PFS2"}, {"name": "PFS2048", "value": "PFS2048"}, {"name": "PFS24", "value": "PFS24"}, {"name": "PFSMM", "value": "PFSMM"}]}}, {"type": "integer32", "var": "$parameters.properties.ipsecPolicies[].saDataSizeKilobytes", "options": ["sa-data-size-kilobytes"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel."}}, {"type": "integer32", "var": "$parameters.properties.ipsecPolicies[].saLifeTimeSeconds", "options": ["sa-life-time-seconds"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel."}}]}}, {"nullable": true, "type": "object", "var": "$parameters.properties.localNetworkGateway2", "options": ["local-network-gateway2"], "hide": true, "group": "Properties", "help": {"short": "The reference to local network gateway resource."}, "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.properties.localNetworkGateway2.id", "options": ["id"], "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"nullable": true, "type": "ResourceLocation", "var": "$parameters.properties.localNetworkGateway2.location", "options": ["l", "location"], "help": {"short": "Resource location."}}, {"nullable": true, "type": "@BgpSettings_update", "var": "$parameters.properties.localNetworkGateway2.properties.bgpSettings", "options": ["bgp-settings"], "group": "Properties", "help": {"short": "Local network gateway's BGP speaker settings."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.localNetworkGateway2.properties.fqdn", "options": ["fqdn"], "group": "Properties", "help": {"short": "FQDN of local network gateway."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.localNetworkGateway2.properties.gatewayIpAddress", "options": ["gateway-ip-address"], "group": "Properties", "help": {"short": "IP address of local network gateway."}}, {"nullable": true, "type": "@AddressSpace_update", "var": "$parameters.properties.localNetworkGateway2.properties.localNetworkAddressSpace", "options": ["local-network-address-space"], "group": "Properties", "help": {"short": "Local network site address space."}}, {"nullable": true, "type": "object", "var": "$parameters.properties.localNetworkGateway2.tags", "options": ["tags"], "help": {"short": "Resource tags."}, "additionalProps": {"item": {"nullable": true, "type": "string"}}}]}, {"nullable": true, "type": "@SubResource_update", "var": "$parameters.properties.peer", "options": ["peer"], "hide": true, "group": "Properties", "help": {"short": "The reference to peerings resource."}}, {"nullable": true, "type": "array", "var": "$parameters.properties.trafficSelectorPolicies", "options": ["traffic-selector-policies"], "hide": true, "group": "Properties", "help": {"short": "The Traffic Selector Policies to be considered by this connection."}, "item": {"nullable": true, "type": "object", "args": [{"type": "array", "var": "$parameters.properties.trafficSelectorPolicies[].localAddressRanges", "options": ["local-address-ranges"], "help": {"short": "A collection of local address spaces in CIDR format."}, "item": {"nullable": true, "type": "string"}}, {"type": "array", "var": "$parameters.properties.trafficSelectorPolicies[].remoteAddressRanges", "options": ["remote-address-ranges"], "help": {"short": "A collection of remote address spaces in CIDR format."}, "item": {"nullable": true, "type": "string"}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.tunnelProperties", "options": ["tunnel-properties"], "hide": true, "group": "Properties", "help": {"short": "Tunnel properties for virtual network gateway connection"}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.tunnelProperties[].bgpPeeringAddress", "options": ["bgp-peering-address"], "help": {"short": "Tunnel BGP peering address"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.tunnelProperties[].tunnelIpAddress", "options": ["tunnel-ip-address"], "help": {"short": "Tunnel remote IP address"}}]}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.useLocalAzureIpAddress", "options": ["use-local-azure-ip-address"], "hide": true, "group": "Properties", "help": {"short": "Use private local Azure IP for the connection."}}, {"type": "object", "var": "$parameters.properties.virtualNetworkGateway1", "options": ["virtual-network-gateway1"], "hide": true, "group": "Properties", "help": {"short": "The reference to virtual network gateway resource."}, "args": [{"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.extendedLocation", "options": ["extended-location"], "help": {"short": "The extended location of type local virtual network gateway."}, "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.extendedLocation.name", "options": ["name"], "help": {"short": "The name of the extended location."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.extendedLocation.type", "options": ["type"], "help": {"short": "The type of the extended location."}, "enum": {"items": [{"name": "EdgeZone", "value": "EdgeZone"}]}}]}, {"nullable": true, "type": "ResourceId", "var": "@VirtualNetworkGateway_update.id", "options": ["id"], "hide": true, "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.identity.type", "options": ["type"], "hide": true, "group": "Identity", "help": {"short": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine."}, "enum": {"items": [{"name": "None", "value": "None"}, {"name": "SystemAssigned", "value": "SystemAssigned"}, {"name": "SystemAssigned, UserAssigned", "value": "SystemAssigned, UserAssigned"}, {"name": "UserAssigned", "value": "UserAssigned"}]}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.identity.userAssignedIdentities", "options": ["user-assigned-identities"], "hide": true, "group": "Identity", "help": {"short": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."}, "additionalProps": {"item": {"nullable": true, "blank": {"value": {}}, "type": "object"}}}, {"nullable": true, "type": "ResourceLocation", "var": "@VirtualNetworkGateway_update.location", "options": ["l", "location"], "help": {"short": "Resource location."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.activeActive", "options": ["active-active"], "group": "Properties", "help": {"short": "ActiveActive flag."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.adminState", "options": ["admin-state"], "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet"}, "enum": {"items": [{"name": "Disabled", "value": "Disabled"}, {"name": "Enabled", "value": "Enabled"}]}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.allowRemoteVnetTraffic", "options": ["allow-remote-vnet-traffic"], "group": "Properties", "help": {"short": "Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.allowVirtualWanTraffic", "options": ["allow-virtual-wan-traffic"], "group": "Properties", "help": {"short": "Configures this gateway to accept traffic from remote Virtual WAN networks."}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration", "options": ["auto-scale-configuration"], "group": "Properties", "help": {"short": "Autoscale configuration for virutal network gateway"}, "args": [{"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds", "options": ["bounds"], "help": {"short": "The bounds of the autoscale configuration"}, "args": [{"nullable": true, "type": "integer", "var": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds.max", "options": ["max"], "help": {"short": "Maximum Scale Units for Autoscale configuration"}}, {"nullable": true, "type": "integer", "var": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds.min", "options": ["min"], "help": {"short": "Minimum scale Units for Autoscale configuration"}}]}]}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.bgpSettings", "options": ["bgp-settings"], "group": "Properties", "help": {"short": "Virtual network gateway's BGP speaker settings."}, "args": [{"nullable": true, "type": "integer64", "var": "@BgpSettings_update.asn", "options": ["asn"], "help": {"short": "The BGP speaker's ASN."}, "format": {"maximum": 4294967295, "minimum": 0}}, {"nullable": true, "type": "string", "var": "@BgpSettings_update.bgpPeeringAddress", "options": ["bgp-peering-address"], "help": {"short": "The BGP peering address and BGP identifier of this BGP speaker."}}, {"nullable": true, "type": "array", "var": "@BgpSettings_update.bgpPeeringAddresses", "options": ["bgp-peering-addresses"], "help": {"short": "BGP peering address with IP configuration ID for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "array", "var": "@BgpSettings_update.bgpPeeringAddresses[].customBgpIpAddresses", "options": ["custom-bgp-ip-addresses"], "help": {"short": "The list of custom BGP peering addresses which belong to IP configuration."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "@BgpSettings_update.bgpPeeringAddresses[].ipconfigurationId", "options": ["ipconfiguration-id"], "help": {"short": "The ID of IP configuration which belongs to gateway."}}]}}, {"nullable": true, "type": "integer32", "var": "@BgpSettings_update.peerWeight", "options": ["peer-weight"], "help": {"short": "The weight added to routes learned from this BGP speaker."}}], "cls": "BgpSettings_update"}, {"nullable": true, "type": "@AddressSpace_update", "var": "@VirtualNetworkGateway_update.properties.customRoutes", "options": ["custom-routes"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents the custom routes address space specified by the customer for virtual network gateway and VpnClient."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.disableIPSecReplayProtection", "options": ["disable-ip-sec-replay-protection"], "group": "Properties", "help": {"short": "disableIPSecReplayProtection flag."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.enableBgp", "options": ["enable-bgp"], "group": "Properties", "help": {"short": "Whether BGP is enabled for this virtual network gateway or not."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.enableBgpRouteTranslationForNat", "options": ["enable-bgp-route-translation-for-nat"], "group": "Properties", "help": {"short": "EnableBgpRouteTranslationForNat flag."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.enableDnsForwarding", "options": ["enable-dns-forwarding"], "group": "Properties", "help": {"short": "Whether dns forwarding is enabled or not."}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.enableHighBandwidthVpnGateway", "options": ["enable-high-bandwidth-vpn-gateway"], "group": "Properties", "help": {"short": "To enable Advanced Connectivity feature for VPN gateway"}}, {"nullable": true, "type": "boolean", "var": "@VirtualNetworkGateway_update.properties.enablePrivateIpAddress", "options": ["enable-private-ip-address"], "group": "Properties", "help": {"short": "Whether private IP needs to be enabled on this gateway for connections or not."}}, {"nullable": true, "type": "@SubResource_update", "var": "@VirtualNetworkGateway_update.properties.gatewayDefaultSite", "options": ["gateway-default-site"], "group": "Properties", "help": {"short": "The reference to the LocalNetworkGateway resource which represents local network site having default routes. Assign Null value in case of removing existing default site setting."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.gatewayType", "options": ["gateway-type"], "group": "Properties", "help": {"short": "The type of this virtual network gateway."}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "LocalGateway", "value": "LocalGateway"}, {"name": "Vpn", "value": "Vpn"}]}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations", "options": ["ip-configurations"], "group": "Properties", "help": {"short": "IP configurations for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.privateIPAllocationMethod", "options": ["private-ip-allocation-method"], "group": "Properties", "help": {"short": "The private IP address allocation method."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}, {"nullable": true, "type": "@SubResource_update", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.publicIPAddress", "options": ["public-ip-address"], "group": "Properties", "help": {"short": "The reference to the public IP resource."}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.subnet", "options": ["subnet"], "group": "Properties", "help": {"short": "The reference to the subnet resource."}, "args": [{"nullable": true, "type": "string", "var": "@SubResource_update.id", "options": ["id"], "help": {"short": "Resource ID."}}], "cls": "SubResource_update"}]}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.natRules", "options": ["nat-rules"], "group": "Properties", "help": {"short": "NatRules for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "ResourceId", "var": "@VirtualNetworkGateway_update.properties.natRules[].id", "options": ["id"], "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.natRules[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "array<@VpnNatRuleMapping_update>", "var": "@VirtualNetworkGateway_update.properties.natRules[].properties.externalMappings", "options": ["external-mappings"], "group": "Properties", "help": {"short": "The private IP address external mapping for NAT."}, "item": {"nullable": true, "type": "@VpnNatRuleMapping_update"}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.natRules[].properties.internalMappings", "options": ["internal-mappings"], "group": "Properties", "help": {"short": "The private IP address internal mapping for NAT."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VpnNatRuleMapping_update.addressSpace", "options": ["address-space"], "help": {"short": "Address space for Vpn NatRule mapping."}}, {"nullable": true, "type": "string", "var": "@VpnNatRuleMapping_update.portRange", "options": ["port-range"], "help": {"short": "Port range for Vpn NatRule mapping."}}], "cls": "VpnNatRuleMapping_update"}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.natRules[].properties.ipConfigurationId", "options": ["ip-configuration-id"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.natRules[].properties.mode", "options": ["mode"], "group": "Properties", "help": {"short": "The Source NAT direction of a VPN NAT."}, "enum": {"items": [{"name": "EgressSnat", "value": "EgressSnat"}, {"name": "IngressSnat", "value": "IngressSnat"}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.natRules[].properties.type", "options": ["type"], "group": "Properties", "help": {"short": "The type of NAT rule for VPN NAT."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.resiliencyModel", "options": ["resiliency-model"], "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed"}, "enum": {"items": [{"name": "MultiHomed", "value": "MultiHomed"}, {"name": "SingleHomed", "value": "SingleHomed"}]}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.sku", "options": ["sku"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway."}, "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.sku.name", "options": ["name"], "help": {"short": "Gateway SKU name."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.sku.tier", "options": ["tier"], "help": {"short": "Gateway SKU tier."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}]}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vNetExtendedLocationResourceId", "options": ["v-net-extended-location-resource-id"], "group": "Properties", "help": {"short": "Customer vnet resource id. VirtualNetworkGateway of type local gateway is associated with the customer vnet."}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus", "options": ["virtual-network-gateway-migration-status"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayMigrationStatus which represents the status of migration."}, "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.errorMessage", "options": ["error-message"], "help": {"short": "Error if any occurs during migration."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.phase", "options": ["phase"], "help": {"short": "Represent the current migration phase of gateway."}, "enum": {"items": [{"name": "Abort", "value": "Abort"}, {"name": "AbortSucceeded", "value": "AbortSucceeded"}, {"name": "Commit", "value": "Commit"}, {"name": "CommitSucceeded", "value": "CommitSucceeded"}, {"name": "Execute", "value": "Execute"}, {"name": "ExecuteSucceeded", "value": "ExecuteSucceeded"}, {"name": "None", "value": "None"}, {"name": "Prepare", "value": "Prepare"}, {"name": "PrepareSucceeded", "value": "PrepareSucceeded"}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.state", "options": ["state"], "help": {"short": "Represent the current state of gateway migration."}, "enum": {"items": [{"name": "Failed", "value": "Failed"}, {"name": "InProgress", "value": "InProgress"}, {"name": "None", "value": "None"}, {"name": "Succeeded", "value": "Succeeded"}]}}]}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "boolean", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "options": ["is-default"], "group": "Properties", "help": {"short": "Shows if this is a Default VirtualNetworkGatewayPolicyGroup or not."}}, {"type": "array", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "options": ["policy-members"], "group": "Properties", "help": {"short": "Multiple PolicyMembers for VirtualNetworkGatewayPolicyGroup."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "options": ["attribute-type"], "help": {"short": "The Vpn Policy member attribute type."}, "enum": {"items": [{"name": "AADGroupId", "value": "AADGroupId"}, {"name": "CertificateGroupId", "value": "CertificateGroupId"}, {"name": "RadiusAzureGroupId", "value": "RadiusAzureGroupId"}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue", "options": ["attribute-value"], "help": {"short": "The value of Attribute used for this VirtualNetworkGatewayPolicyGroupMember."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name", "options": ["name"], "help": {"short": "Name of the VirtualNetworkGatewayPolicyGroupMember."}}]}}, {"type": "integer32", "var": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority for VirtualNetworkGatewayPolicyGroup."}}]}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration", "options": ["vpn-client-configuration"], "group": "Properties", "help": {"short": "The reference to the VpnClientConfiguration resource which represents the P2S VpnClient configurations."}, "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadAudience", "options": ["aad-audience"], "help": {"short": "The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadIssuer", "options": ["aad-issuer"], "help": {"short": "The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadTenant", "options": ["aad-tenant"], "help": {"short": "The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServerAddress", "options": ["radius-server-address"], "help": {"short": "The radius server address property of the VirtualNetworkGateway resource for vpn client connection."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The radius secret property of the VirtualNetworkGateway resource for vpn client connection."}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers", "options": ["radius-servers"], "help": {"short": "The radiusServers property for multiple radius server configuration."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "options": ["radius-server-address"], "help": {"short": "The address of this radius server."}}, {"nullable": true, "type": "integer64", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerScore", "options": ["radius-server-score"], "help": {"short": "The initial score assigned to this radius server."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The secret used for this radius server."}}]}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "options": ["vng-client-connection-configurations"], "help": {"short": "per ip address pool connection policy for virtual network gateway P2S client."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array<@SubResource_update>", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "List of references to virtualNetworkGatewayPolicyGroups"}, "item": {"nullable": true, "type": "@SubResource_update"}}, {"type": "@AddressSpace_update", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}}]}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnAuthenticationTypes", "options": ["vpn-authentication-types"], "help": {"short": "VPN authentication types for the virtual network gateway.."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "AAD", "value": "AAD"}, {"name": "Certificate", "value": "Certificate"}, {"name": "Radius", "value": "Radius"}]}}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}, "args": [{"nullable": true, "type": "array", "var": "@AddressSpace_update.addressPrefixes", "options": ["address-prefixes"], "help": {"short": "A list of address blocks reserved for this virtual network in CIDR notation."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@AddressSpace_update.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@AddressSpace_update.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"nullable": true, "type": "ResourceId", "var": "@AddressSpace_update.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}], "cls": "AddressSpace_update"}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "options": ["vpn-client-ipsec-policies"], "help": {"short": "VpnClientIpsecPolicies for virtual network gateway P2S client."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "@IpsecPolicy_update.dhGroup", "options": ["dh-group"], "help": {"short": "The DH Group used in IKE Phase 1 for initial SA."}, "enum": {"items": [{"name": "DHGroup1", "value": "DHGroup1"}, {"name": "DHGroup14", "value": "DHGroup14"}, {"name": "DHGroup2", "value": "DHGroup2"}, {"name": "DHGroup2048", "value": "DHGroup2048"}, {"name": "DHGroup24", "value": "DHGroup24"}, {"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "@IpsecPolicy_update.ikeEncryption", "options": ["ike-encryption"], "help": {"short": "The IKE encryption algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}]}}, {"type": "string", "var": "@IpsecPolicy_update.ikeIntegrity", "options": ["ike-integrity"], "help": {"short": "The IKE integrity algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}, {"name": "SHA384", "value": "SHA384"}]}}, {"type": "string", "var": "@IpsecPolicy_update.ipsecEncryption", "options": ["ipsec-encryption"], "help": {"short": "The IPSec encryption algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "@IpsecPolicy_update.ipsecIntegrity", "options": ["ipsec-integrity"], "help": {"short": "The IPSec integrity algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}]}}, {"type": "string", "var": "@IpsecPolicy_update.pfsGroup", "options": ["pfs-group"], "help": {"short": "The Pfs Group used in IKE Phase 2 for new child SA."}, "enum": {"items": [{"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}, {"name": "PFS1", "value": "PFS1"}, {"name": "PFS14", "value": "PFS14"}, {"name": "PFS2", "value": "PFS2"}, {"name": "PFS2048", "value": "PFS2048"}, {"name": "PFS24", "value": "PFS24"}, {"name": "PFSMM", "value": "PFSMM"}]}}, {"type": "integer32", "var": "@IpsecPolicy_update.saDataSizeKilobytes", "options": ["sa-data-size-kilobytes"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel."}}, {"type": "integer32", "var": "@IpsecPolicy_update.saLifeTimeSeconds", "options": ["sa-life-time-seconds"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel."}}], "cls": "IpsecPolicy_update"}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientProtocols", "options": ["vpn-client-protocols"], "help": {"short": "VpnClientProtocols for Virtual network gateway."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "IkeV2", "value": "IkeV2"}, {"name": "OpenVPN", "value": "OpenVPN"}, {"name": "SSTP", "value": "SSTP"}]}}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "options": ["vpn-client-revoked-certificates"], "help": {"short": "VpnClientRevokedCertificate for Virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint", "options": ["thumbprint"], "group": "Properties", "help": {"short": "The revoked VPN client certificate thumbprint."}}]}}, {"nullable": true, "type": "array", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates", "options": ["vpn-client-root-certificates"], "help": {"short": "VpnClientRootCertificate for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "options": ["public-cert-data"], "group": "Properties", "help": {"short": "The certificate public data."}}]}}]}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnGatewayGeneration", "options": ["vpn-gateway-generation"], "group": "Properties", "help": {"short": "The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN."}, "enum": {"items": [{"name": "Generation1", "value": "Generation1"}, {"name": "Generation2", "value": "Generation2"}, {"name": "None", "value": "None"}]}}, {"nullable": true, "type": "string", "var": "@VirtualNetworkGateway_update.properties.vpnType", "options": ["vpn-type"], "group": "Properties", "help": {"short": "The type of this virtual network gateway."}, "enum": {"items": [{"name": "PolicyBased", "value": "PolicyBased"}, {"name": "RouteBased", "value": "RouteBased"}]}}, {"nullable": true, "type": "object", "var": "@VirtualNetworkGateway_update.tags", "options": ["tags"], "help": {"short": "Resource tags."}, "additionalProps": {"item": {"nullable": true, "type": "string"}}}], "cls": "VirtualNetworkGateway_update"}, {"nullable": true, "type": "@VirtualNetworkGateway_update", "var": "$parameters.properties.virtualNetworkGateway2", "options": ["virtual-network-gateway2"], "hide": true, "group": "Properties", "help": {"short": "The reference to virtual network gateway resource."}}]}], "operations": [{"operationId": "VirtualNetworkGatewayConnections_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayConnectionName", "arg": "$Path.virtualNetworkGatewayConnectionName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"type": "string", "name": "connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds"}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "egressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "required": true}]}}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"type": "array<@SubResource_read>", "name": "ingressNatRules", "item": {"type": "@SubResource_read"}}, {"type": "array<@IpsecPolicy_read>", "name": "ipsecPolicies", "item": {"type": "@IpsecPolicy_read"}}, {"type": "object", "name": "localNetworkGateway2", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_read", "name": "bgpSettings"}, {"type": "string", "name": "fqdn"}, {"type": "string", "name": "gatewayIpAddress"}, {"type": "@AddressSpace_read", "name": "localNetworkAddressSpace"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}, {"type": "@SubResource_read", "name": "peer"}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "integer32", "name": "routingWeight"}, {"type": "string", "name": "sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"readOnly": true, "type": "array", "name": "tunnelConnectionStatus", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "connectionStatus", "enum": {"items": [{"value": "Connected"}, {"value": "Connecting"}, {"value": "NotConnected"}, {"value": "Unknown"}]}}, {"readOnly": true, "type": "integer64", "name": "egressBytesTransferred"}, {"readOnly": true, "type": "integer64", "name": "ingressBytesTransferred"}, {"readOnly": true, "type": "string", "name": "lastConnectionEstablishedUtcTime"}, {"readOnly": true, "type": "string", "name": "tunnel"}]}}, {"type": "array", "name": "tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "required": true, "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}], "cls": "BgpSettings_read"}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_read"}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}, {"type": "@VirtualNetworkGateway_read", "name": "virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGatewayConnection_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Instance", "json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/connections/{}"}}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "authenticationType", "arg": "$parameters.properties.authenticationType", "enum": {"items": [{"value": "Certificate"}, {"value": "PSK"}]}}, {"type": "string", "name": "authorizationKey", "arg": "$parameters.properties.authorizationKey"}, {"type": "object", "name": "certificateAuthentication", "arg": "$parameters.properties.certificateAuthentication", "props": [{"type": "array", "name": "inboundAuthCertificateChain", "arg": "$parameters.properties.certificateAuthentication.inboundAuthCertificateChain", "item": {"type": "string"}}, {"type": "string", "name": "inboundAuthCertificateSubjectName", "arg": "$parameters.properties.certificateAuthentication.inboundAuthCertificateSubjectName"}, {"type": "string", "name": "outboundAuthCertificate", "arg": "$parameters.properties.certificateAuthentication.outboundAuthCertificate"}]}, {"type": "string", "name": "connectionMode", "arg": "$parameters.properties.connectionMode", "enum": {"items": [{"value": "Default"}, {"value": "InitiatorOnly"}, {"value": "ResponderOnly"}]}}, {"type": "string", "name": "connectionProtocol", "arg": "$parameters.properties.connectionProtocol", "enum": {"items": [{"value": "IKEv1"}, {"value": "IKEv2"}]}}, {"type": "string", "name": "connectionType", "arg": "$parameters.properties.connectionType", "required": true, "enum": {"items": [{"value": "ExpressRoute"}, {"value": "IPsec"}, {"value": "VPNClient"}, {"value": "Vnet2Vnet"}]}}, {"type": "integer32", "name": "dpdTimeoutSeconds", "arg": "$parameters.properties.dpdTimeoutSeconds"}, {"type": "array<@SubResource_update>", "name": "egressNatRules", "arg": "$parameters.properties.egressNatRules", "item": {"type": "@SubResource_update"}}, {"type": "boolean", "name": "enableBgp", "arg": "$parameters.properties.enableBgp"}, {"type": "boolean", "name": "enablePrivateLinkFastPath", "arg": "$parameters.properties.enablePrivateLinkFastPath"}, {"type": "boolean", "name": "expressRouteGatewayBypass", "arg": "$parameters.properties.expressRouteGatewayBypass"}, {"type": "array", "name": "gatewayCustomBgpIpAddresses", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses", "item": {"type": "object", "props": [{"type": "string", "name": "customBgpIpAddress", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses[].customBgpIpAddress", "required": true}, {"type": "string", "name": "ipConfigurationId", "arg": "$parameters.properties.gatewayCustomBgpIpAddresses[].ipConfigurationId", "required": true}]}}, {"type": "array<@SubResource_update>", "name": "ingressNatRules", "arg": "$parameters.properties.ingressNatRules", "item": {"type": "@SubResource_update"}}, {"type": "array", "name": "ipsecPolicies", "arg": "$parameters.properties.ipsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "arg": "$parameters.properties.ipsecPolicies[].dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "arg": "$parameters.properties.ipsecPolicies[].ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "arg": "$parameters.properties.ipsecPolicies[].ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "arg": "$parameters.properties.ipsecPolicies[].ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "arg": "$parameters.properties.ipsecPolicies[].ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "arg": "$parameters.properties.ipsecPolicies[].pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "arg": "$parameters.properties.ipsecPolicies[].saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "arg": "$parameters.properties.ipsecPolicies[].saLifeTimeSeconds", "required": true}]}}, {"type": "object", "name": "localNetworkGateway2", "arg": "$parameters.properties.localNetworkGateway2", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.localNetworkGateway2.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/localNetworkGateways/{}"}}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.properties.localNetworkGateway2.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "@BgpSettings_update", "name": "bgpSettings", "arg": "$parameters.properties.localNetworkGateway2.properties.bgpSettings"}, {"type": "string", "name": "fqdn", "arg": "$parameters.properties.localNetworkGateway2.properties.fqdn"}, {"type": "string", "name": "gatewayIpAddress", "arg": "$parameters.properties.localNetworkGateway2.properties.gatewayIpAddress"}, {"type": "@AddressSpace_update", "name": "localNetworkAddressSpace", "arg": "$parameters.properties.localNetworkGateway2.properties.localNetworkAddressSpace"}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.properties.localNetworkGateway2.tags", "additionalProps": {"item": {"type": "string"}}}]}, {"type": "@SubResource_update", "name": "peer", "arg": "$parameters.properties.peer"}, {"type": "integer32", "name": "routingWeight", "arg": "$parameters.properties.routingWeight"}, {"type": "string", "name": "sharedKey", "arg": "$parameters.properties.sharedKey", "secret": true}, {"type": "array", "name": "trafficSelectorPolicies", "arg": "$parameters.properties.trafficSelectorPolicies", "item": {"type": "object", "props": [{"type": "array", "name": "localAddressRanges", "arg": "$parameters.properties.trafficSelectorPolicies[].localAddressRanges", "required": true, "item": {"type": "string"}}, {"type": "array", "name": "remoteAddressRanges", "arg": "$parameters.properties.trafficSelectorPolicies[].remoteAddressRanges", "required": true, "item": {"type": "string"}}]}}, {"type": "array", "name": "tunnelProperties", "arg": "$parameters.properties.tunnelProperties", "item": {"type": "object", "props": [{"type": "string", "name": "bgpPeeringAddress", "arg": "$parameters.properties.tunnelProperties[].bgpPeeringAddress"}, {"type": "string", "name": "tunnelIpAddress", "arg": "$parameters.properties.tunnelProperties[].tunnelIpAddress"}]}}, {"type": "boolean", "name": "useLocalAzureIpAddress", "arg": "$parameters.properties.useLocalAzureIpAddress"}, {"type": "boolean", "name": "usePolicyBasedTrafficSelectors", "arg": "$parameters.properties.usePolicyBasedTrafficSelectors"}, {"type": "object", "name": "virtualNetworkGateway1", "arg": "$parameters.properties.virtualNetworkGateway1", "required": true, "props": [{"type": "object", "name": "extendedLocation", "arg": "@VirtualNetworkGateway_update.extendedLocation", "props": [{"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.extendedLocation.name"}, {"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_update.extendedLocation.type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "arg": "@VirtualNetworkGateway_update.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_update.identity.type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "arg": "@VirtualNetworkGateway_update.identity.userAssignedIdentities", "additionalProps": {"item": {"type": "object"}}}]}, {"type": "ResourceLocation", "name": "location", "arg": "@VirtualNetworkGateway_update.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive", "arg": "@VirtualNetworkGateway_update.properties.activeActive"}, {"type": "string", "name": "adminState", "arg": "@VirtualNetworkGateway_update.properties.adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic", "arg": "@VirtualNetworkGateway_update.properties.allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic", "arg": "@VirtualNetworkGateway_update.properties.allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "arg": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "arg": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds", "props": [{"type": "integer", "name": "max", "arg": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds.max"}, {"type": "integer", "name": "min", "arg": "@VirtualNetworkGateway_update.properties.autoScaleConfiguration.bounds.min"}]}]}, {"type": "object", "name": "bgpSettings", "arg": "@VirtualNetworkGateway_update.properties.bgpSettings", "props": [{"type": "integer64", "name": "asn", "arg": "@BgpSettings_update.asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress", "arg": "@BgpSettings_update.bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "arg": "@BgpSettings_update.bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "arg": "@BgpSettings_update.bgpPeeringAddresses[].customBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId", "arg": "@BgpSettings_update.bgpPeeringAddresses[].ipconfigurationId"}]}}, {"type": "integer32", "name": "peerWeight", "arg": "@BgpSettings_update.peerWeight"}], "cls": "BgpSettings_update"}, {"type": "@AddressSpace_update", "name": "customRoutes", "arg": "@VirtualNetworkGateway_update.properties.customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection", "arg": "@VirtualNetworkGateway_update.properties.disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp", "arg": "@VirtualNetworkGateway_update.properties.enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat", "arg": "@VirtualNetworkGateway_update.properties.enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding", "arg": "@VirtualNetworkGateway_update.properties.enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway", "arg": "@VirtualNetworkGateway_update.properties.enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress", "arg": "@VirtualNetworkGateway_update.properties.enablePrivateIpAddress"}, {"type": "@SubResource_update", "name": "gatewayDefaultSite", "arg": "@VirtualNetworkGateway_update.properties.gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "arg": "@VirtualNetworkGateway_update.properties.gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"type": "array", "name": "ipConfigurations", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "privateIPAllocationMethod", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"type": "@SubResource_update", "name": "publicIPAddress", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.publicIPAddress"}, {"type": "object", "name": "subnet", "arg": "@VirtualNetworkGateway_update.properties.ipConfigurations[].properties.subnet", "props": [{"type": "string", "name": "id", "arg": "@SubResource_update.id"}], "cls": "SubResource_update"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "arg": "@VirtualNetworkGateway_update.properties.natRules", "item": {"type": "object", "props": [{"type": "ResourceId", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.natRules[].id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.natRules[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_update>", "name": "externalMappings", "arg": "@VirtualNetworkGateway_update.properties.natRules[].properties.externalMappings", "item": {"type": "@VpnNatRuleMapping_update"}}, {"type": "array", "name": "internalMappings", "arg": "@VirtualNetworkGateway_update.properties.natRules[].properties.internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace", "arg": "@VpnNatRuleMapping_update.addressSpace"}, {"type": "string", "name": "portRange", "arg": "@VpnNatRuleMapping_update.portRange"}], "cls": "VpnNatRuleMapping_update"}}, {"type": "string", "name": "ipConfigurationId", "arg": "@VirtualNetworkGateway_update.properties.natRules[].properties.ipConfigurationId"}, {"type": "string", "name": "mode", "arg": "@VirtualNetworkGateway_update.properties.natRules[].properties.mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"type": "string", "name": "type", "arg": "@VirtualNetworkGateway_update.properties.natRules[].properties.type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}]}}, {"type": "string", "name": "resiliencyModel", "arg": "@VirtualNetworkGateway_update.properties.resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"type": "object", "name": "sku", "arg": "@VirtualNetworkGateway_update.properties.sku", "props": [{"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.sku.name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "arg": "@VirtualNetworkGateway_update.properties.sku.tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId", "arg": "@VirtualNetworkGateway_update.properties.vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.errorMessage"}, {"type": "string", "name": "phase", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayMigrationStatus.state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "required": true}, {"type": "array", "name": "policyMembers", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name"}]}}, {"type": "integer32", "name": "priority", "arg": "@VirtualNetworkGateway_update.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "required": true}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadAudience"}, {"type": "string", "name": "aadIssuer", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadIssuer"}, {"type": "string", "name": "aadTenant", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.aadTenant"}, {"type": "string", "name": "radiusServerAddress", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@SubResource_update>", "name": "virtualNetworkGatewayPolicyGroups", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_update"}}, {"type": "@AddressSpace_update", "name": "vpnClientAddressPool", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "arg": "@AddressSpace_update.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_update"}, {"type": "array", "name": "vpnClientIpsecPolicies", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "arg": "@IpsecPolicy_update.dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "arg": "@IpsecPolicy_update.ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "arg": "@IpsecPolicy_update.ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "arg": "@IpsecPolicy_update.ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "arg": "@IpsecPolicy_update.ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "arg": "@IpsecPolicy_update.pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "arg": "@IpsecPolicy_update.saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "arg": "@IpsecPolicy_update.saLifeTimeSeconds", "required": true}], "cls": "IpsecPolicy_update"}}, {"type": "array", "name": "vpnClientProtocols", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "thumbprint", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].id"}, {"type": "string", "name": "name", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "publicCertData", "arg": "@VirtualNetworkGateway_update.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "arg": "@VirtualNetworkGateway_update.properties.vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "arg": "@VirtualNetworkGateway_update.properties.vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "@VirtualNetworkGateway_update.tags", "additionalProps": {"item": {"type": "string"}}}], "cls": "VirtualNetworkGateway_update"}, {"type": "@VirtualNetworkGateway_update", "name": "virtualNetworkGateway2", "arg": "$parameters.properties.virtualNetworkGateway2"}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.tags", "additionalProps": {"item": {"type": "string"}}}], "clientFlatten": true}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGatewayConnections_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayConnectionName", "arg": "$Path.virtualNetworkGatewayConnectionName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@VirtualNetworkGatewayConnection_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}]}]} \ No newline at end of file diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml new file mode 100644 index 000000000..4669a3c81 --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL2Nvbm5lY3Rpb25zL3t9/2025-01-01.xml @@ -0,0 +1,4708 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.json b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.json new file mode 100644 index 000000000..a191572a5 --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.json @@ -0,0 +1 @@ +{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlz/V/MjAyNS0wMS0wMQ=="}], "commandGroups": [{"name": "network vnet-gateway", "commands": [{"name": "list", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlz/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}]}], "operations": [{"operationId": "VirtualNetworkGateways_List", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "nextLink"}, {"type": "array", "name": "value", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "array", "ref": "$Instance.value", "clientFlatten": true, "nextLink": "$Instance.nextLink"}], "confirmation": ""}]}]} \ No newline at end of file diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.xml b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.xml new file mode 100644 index 000000000..a502854bd --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXM=/2025-01-01.xml @@ -0,0 +1,528 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.json b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.json new file mode 100644 index 000000000..d9488253e --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.json @@ -0,0 +1 @@ +{"plane": "mgmt-plane", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "commandGroups": [{"name": "network vnet-gateway", "commands": [{"name": "show", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}]}], "operations": [{"operationId": "VirtualNetworkGateways_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "delete", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}]}], "operations": [{"longRunning": {"finalStateVia": "location"}, "operationId": "VirtualNetworkGateways_Delete", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "delete", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200]}, {"statusCode": [202]}, {"statusCode": [204]}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "confirmation": ""}, {"name": "create", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}, {"type": "string", "var": "$parameters.extendedLocation.name", "options": ["edge-zone"], "group": "", "help": {"short": "The name of edge zone."}}, {"type": "ResourceLocation", "var": "$parameters.location", "options": ["l", "location"], "group": "", "help": {"short": "Location. Values from: `az account list-locations`. You can configure the default location using `az configure --defaults location=`."}}, {"type": "boolean", "var": "$parameters.properties.allowRemoteVnetTraffic", "options": ["allow-remote-vnet-traffic"], "group": "", "help": {"short": "Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN."}}, {"type": "boolean", "var": "$parameters.properties.allowVirtualWanTraffic", "options": ["allow-vwan-traffic"], "group": "", "help": {"short": "Configures this gateway to accept traffic from remote Virtual WAN networks."}}, {"type": "integer", "var": "$parameters.properties.autoScaleConfiguration.bounds.max", "options": ["max-scale-unit"], "group": "", "help": {"short": "Maximum scale units for auto-scale configuration."}}, {"type": "integer", "var": "$parameters.properties.autoScaleConfiguration.bounds.min", "options": ["min-scale-unit"], "group": "", "help": {"short": "Minimum scale units for auto-scale configuration."}}, {"type": "boolean", "var": "$parameters.properties.enableHighBandwidthVpnGateway", "options": ["enable-high-bandwidth", "enable-high-bandwidth-vpn-gateway"], "group": "", "help": {"short": "To enable Advanced Connectivity feature for VPN gateway"}}, {"type": "boolean", "var": "$parameters.properties.enablePrivateIpAddress", "options": ["enable-private-ip"], "group": "", "help": {"short": "Whether private IP needs to be enabled on this gateway for connections or not."}}, {"type": "string", "var": "$parameters.properties.gatewayDefaultSite.id", "options": ["gateway-default-site"], "group": "", "help": {"short": "Name or ID of a local network gateway representing a local network site with default routes."}}, {"type": "string", "var": "$parameters.properties.gatewayType", "options": ["gateway-type"], "group": "", "help": {"short": "The gateway type."}, "default": {"value": "Vpn"}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "LocalGateway", "value": "LocalGateway"}, {"name": "Vpn", "value": "Vpn"}]}}, {"type": "array", "var": "$parameters.properties.ipConfigurations", "options": ["ip-configurations"], "group": "", "help": {"short": "IP configurations for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.ipConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "$parameters.properties.ipConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "$parameters.properties.ipConfigurations[].properties.privateIPAllocationMethod", "options": ["private-ip-allocation-method"], "group": "Properties", "help": {"short": "The private IP address allocation method."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}, {"type": "string", "var": "$parameters.properties.ipConfigurations[].properties.publicIPAddress.id", "options": ["public-ip-address"], "group": "PublicIpAddress", "help": {"short": "The reference to the public IP resource."}}, {"type": "string", "var": "$parameters.properties.ipConfigurations[].properties.subnet.id", "options": ["subnet"], "group": "Subnet", "help": {"short": "test"}}]}}, {"type": "string", "var": "$parameters.properties.resiliencyModel", "options": ["resiliency-model"], "group": "", "help": {"short": "Indicates if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed"}, "enum": {"items": [{"name": "MultiHomed", "value": "MultiHomed"}, {"name": "SingleHomed", "value": "SingleHomed"}]}}, {"type": "string", "var": "$parameters.properties.sku.name", "options": ["sku"], "group": "", "help": {"short": "VNet gateway SKU."}, "default": {"value": "Basic"}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"type": "string", "var": "$parameters.properties.vNetExtendedLocationResourceId", "options": ["edge-zone-vnet-id"], "group": "", "help": {"short": "The Extended vnet resource id of the local gateway."}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnAuthenticationTypes", "options": ["vpn-auth-type"], "group": "", "help": {"short": "VPN authentication types enabled for the virtual network gateway."}, "item": {"type": "string", "enum": {"items": [{"name": "AAD", "value": "AAD"}, {"name": "Certificate", "value": "Certificate"}, {"name": "Radius", "value": "Radius"}]}}}, {"type": "string", "var": "$parameters.properties.vpnGatewayGeneration", "options": ["vpn-gateway-generation"], "group": "", "help": {"short": "The generation for the virtual network gateway. vpn_gateway_generation should not be provided if gateway_type is not Vpn."}, "enum": {"items": [{"name": "Generation1", "value": "Generation1"}, {"name": "Generation2", "value": "Generation2"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.vpnType", "options": ["vpn-type"], "group": "", "help": {"short": "VPN routing type."}, "default": {"value": "RouteBased"}, "enum": {"items": [{"name": "PolicyBased", "value": "PolicyBased"}, {"name": "RouteBased", "value": "RouteBased"}]}}, {"type": "object", "var": "$parameters.tags", "options": ["tags"], "group": "", "help": {"short": "Space-separated tags: key[=value] [key[=value] ...]. Use \"\" to clear existing tags."}, "additionalProps": {"item": {"type": "string"}}}]}, {"name": "AAD Authentication", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadAudience", "options": ["aad-audience"], "group": "AAD Authentication", "help": {"short": "The AADAudience ID of the VirtualNetworkGateway."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadIssuer", "options": ["aad-issuer"], "group": "AAD Authentication", "help": {"short": "The AAD Issuer URI of the VirtualNetworkGateway."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadTenant", "options": ["aad-tenant"], "group": "AAD Authentication", "help": {"short": "The AAD Tenant URI of the VirtualNetworkGateway."}}]}, {"name": "BGP Peering", "args": [{"type": "integer64", "var": "$parameters.properties.bgpSettings.asn", "options": ["asn"], "group": "BGP Peering", "help": {"short": "Autonomous System Number to use for the BGP settings."}, "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "var": "$parameters.properties.bgpSettings.bgpPeeringAddress", "options": ["bgp-peering-address"], "group": "BGP Peering", "help": {"short": "IP address to use for BGP peering."}}, {"type": "integer32", "var": "$parameters.properties.bgpSettings.peerWeight", "options": ["peer-weight"], "group": "BGP Peering", "help": {"short": "Weight (0-100) added to routes learned through BGP peering."}}, {"type": "boolean", "var": "$parameters.properties.enableBgp", "options": ["enable-bgp"], "group": "BGP Peering", "help": {"short": "Enable BGP (Border Gateway Protocol)."}}]}, {"name": "BgpSettings", "args": [{"type": "array", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses", "options": ["bgp-peering-addresses"], "hide": true, "group": "BgpSettings", "help": {"short": "BGP peering address with IP configuration ID for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "array", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].customBgpIpAddresses", "options": ["custom-bgp-ip-addresses"], "help": {"short": "The list of custom BGP peering addresses which belong to IP configuration."}, "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].ipconfigurationId", "options": ["ipconfiguration-id"], "help": {"short": "The ID of IP configuration which belongs to gateway."}}]}}]}, {"name": "CustomRoutes", "args": [{"type": "array", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "hide": true, "group": "CustomRoutes", "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"type": "ResourceId", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}]}, {"name": "Identity", "args": [{"blank": {"value": "True"}, "type": "string", "var": "$parameters.identity.systemAssigned", "options": ["system-assigned", "mi-system-assigned"], "group": "Identity", "help": {"short": "Set the system managed identity."}}, {"type": "string", "var": "$parameters.identity.type", "options": ["type"], "hide": true, "group": "Identity", "help": {"short": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine."}, "enum": {"items": [{"name": "None", "value": "None"}, {"name": "SystemAssigned", "value": "SystemAssigned"}, {"name": "SystemAssigned, UserAssigned", "value": "SystemAssigned, UserAssigned"}, {"name": "UserAssigned", "value": "UserAssigned"}]}}, {"blank": {"value": []}, "type": "array", "var": "$parameters.identity.userAssigned", "options": ["user-assigned", "mi-user-assigned"], "group": "Identity", "help": {"short": "Set the user managed identities."}, "item": {"type": "string"}}, {"type": "object", "var": "$parameters.identity.userAssignedIdentities", "options": ["user-assigned-identities"], "hide": true, "group": "Identity", "help": {"short": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."}, "additionalProps": {"item": {"blank": {"value": {}}, "type": "object"}}}]}, {"name": "Nat Rule", "args": [{"type": "array", "var": "$parameters.properties.natRules", "options": ["nat-rules"], "group": "Nat Rule", "help": {"short": "VirtualNetworkGatewayNatRule Resource.", "lines": ["Usage: --nat-rule name=rule type=Static mode=EgressSnat internal-mappings=10.4.0.0/24 external-mappings=192.168.21.0/24 ip-config-id=/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/gateway1/ipConfigurations/default", " name: Required.The name of the resource that is unique within a resource group. This name can be used to access the resource.", " internal-mappings: Required.The private IP address internal mapping for NAT.", " external-mappings: Required.The private IP address external mapping for NAT.", " type: The type of NAT rule for VPN NAT.", " mode: The Source NAT direction of a VPN NAT.", " ip-config-id: The IP Configuration ID this NAT rule applies to."]}, "item": {"type": "object", "args": [{"type": "ResourceId", "var": "$parameters.properties.natRules[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "var": "$parameters.properties.natRules[].name", "options": ["name"], "group": "", "help": {"short": "Required. The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array", "var": "$parameters.properties.natRules[].properties.externalMappings", "options": ["external-mappings-ip"], "group": "Properties", "help": {"short": "The private IP address external mapping for NAT."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.natRules[].properties.externalMappings[].addressSpace", "options": ["address-space"], "help": {"short": "Address space for Vpn NatRule mapping."}}, {"type": "string", "var": "$parameters.properties.natRules[].properties.externalMappings[].portRange", "options": ["port-range"], "hide": true, "group": "", "help": {"short": "test"}}]}}, {"type": "array", "var": "$parameters.properties.natRules[].properties.internalMappings", "options": ["internal-mappings-ip"], "group": "Properties", "help": {"short": "The private IP address internal mapping for NAT."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.natRules[].properties.internalMappings[].addressSpace", "options": ["address-space"], "help": {"short": "Address space for Vpn NatRule mapping."}}, {"type": "string", "var": "$parameters.properties.natRules[].properties.internalMappings[].portRange", "options": ["port-range"], "hide": true, "group": "", "help": {"short": "test"}}]}}, {"type": "string", "var": "$parameters.properties.natRules[].properties.ipConfigurationId", "options": ["ip-config-id"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}}, {"type": "string", "var": "$parameters.properties.natRules[].properties.mode", "options": ["mode"], "group": "Properties", "help": {"short": "The Source NAT direction of a VPN NAT."}, "enum": {"items": [{"name": "EgressSnat", "value": "EgressSnat"}, {"name": "IngressSnat", "value": "IngressSnat"}]}}, {"type": "string", "var": "$parameters.properties.natRules[].properties.type", "options": ["type"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}]}, "singularOptions": ["nat-rule"]}]}, {"name": "Parameters", "args": [{"type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}]}, {"name": "Properties", "args": [{"type": "string", "var": "$parameters.extendedLocation.type", "options": ["edge-zone-type"], "group": "Properties", "help": {"short": "The type of the extended location."}, "enum": {"items": [{"name": "EdgeZone", "value": "EdgeZone"}]}}, {"type": "boolean", "var": "$parameters.properties.activeActive", "options": ["active"], "group": "Properties", "help": {"short": "ActiveActive flag."}}, {"type": "string", "var": "$parameters.properties.adminState", "options": ["admin-state"], "hide": true, "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet"}, "enum": {"items": [{"name": "Disabled", "value": "Disabled"}, {"name": "Enabled", "value": "Enabled"}]}}, {"type": "boolean", "var": "$parameters.properties.disableIPSecReplayProtection", "options": ["disable-ip-sec-replay-protection"], "hide": true, "group": "Properties", "help": {"short": "disableIPSecReplayProtection flag."}}, {"type": "boolean", "var": "$parameters.properties.enableBgpRouteTranslationForNat", "options": ["enable-bgp-route-translation-for-nat"], "hide": true, "group": "Properties", "help": {"short": "EnableBgpRouteTranslationForNat flag."}}, {"type": "boolean", "var": "$parameters.properties.enableDnsForwarding", "options": ["enable-dns-forwarding"], "hide": true, "group": "Properties", "help": {"short": "Whether dns forwarding is enabled or not."}}, {"type": "string", "var": "$parameters.properties.sku.tier", "options": ["sku-tier"], "group": "Properties", "help": {"short": "Gateway SKU tier."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"type": "object", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus", "options": ["virtual-network-gateway-migration-status"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayMigrationStatus which represents the status of migration."}, "args": [{"type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.errorMessage", "options": ["error-message"], "help": {"short": "Error if any occurs during migration."}}, {"type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.phase", "options": ["phase"], "help": {"short": "Represent the current migration phase of gateway."}, "enum": {"items": [{"name": "Abort", "value": "Abort"}, {"name": "AbortSucceeded", "value": "AbortSucceeded"}, {"name": "Commit", "value": "Commit"}, {"name": "CommitSucceeded", "value": "CommitSucceeded"}, {"name": "Execute", "value": "Execute"}, {"name": "ExecuteSucceeded", "value": "ExecuteSucceeded"}, {"name": "None", "value": "None"}, {"name": "Prepare", "value": "Prepare"}, {"name": "PrepareSucceeded", "value": "PrepareSucceeded"}]}}, {"type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.state", "options": ["state"], "help": {"short": "Represent the current state of gateway migration."}, "enum": {"items": [{"name": "Failed", "value": "Failed"}, {"name": "InProgress", "value": "InProgress"}, {"name": "None", "value": "None"}, {"name": "Succeeded", "value": "Succeeded"}]}}]}, {"type": "array", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "hide": true, "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "boolean", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "options": ["is-default"], "group": "Properties", "help": {"short": "Shows if this is a Default VirtualNetworkGatewayPolicyGroup or not."}}, {"type": "array", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "options": ["policy-members"], "group": "Properties", "help": {"short": "Multiple PolicyMembers for VirtualNetworkGatewayPolicyGroup."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "options": ["attribute-type"], "help": {"short": "The Vpn Policy member attribute type."}, "enum": {"items": [{"name": "AADGroupId", "value": "AADGroupId"}, {"name": "CertificateGroupId", "value": "CertificateGroupId"}, {"name": "RadiusAzureGroupId", "value": "RadiusAzureGroupId"}]}}, {"type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue", "options": ["attribute-value"], "help": {"short": "The value of Attribute used for this VirtualNetworkGatewayPolicyGroupMember."}}, {"type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name", "options": ["name"], "help": {"short": "Name of the VirtualNetworkGatewayPolicyGroupMember."}}]}}, {"type": "integer32", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority for VirtualNetworkGatewayPolicyGroup."}}]}}]}, {"name": "Root Cert Authentication", "args": [{"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates", "options": ["vpn-client-root-certificates"], "group": "Root Cert Authentication", "help": {"short": "VpnClientRootCertificate for virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "options": ["public-cert-data"], "required": true, "group": "Properties", "help": {"short": "The certificate public data."}}]}}]}, {"name": "VPN Client", "args": [{"type": "array", "var": "$parameters.properties.customRoutes.addressPrefixes", "options": ["custom-routes"], "group": "VPN Client", "help": {"short": "Space-separated list of CIDR prefixes representing the custom routes address space specified by the customer for VpnClient."}, "item": {"type": "string"}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServerAddress", "options": ["radius-server"], "group": "VPN Client", "help": {"short": "Radius server address to connect to."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServerSecret", "options": ["radius-secret"], "group": "VPN Client", "help": {"short": "Radius secret to use for authentication."}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.addressPrefixes", "options": ["address-prefixes"], "group": "VPN Client", "help": {"short": "Space-separated list of CIDR prefixes representing the address space for the P2S Vpnclient."}, "item": {"type": "string"}, "singularOptions": ["address-prefix"]}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientProtocols", "options": ["client-protocol"], "group": "VPN Client", "help": {"short": "Protocols to use for connecting. Allowed values: IkeV2, OpenVPN, SSTP."}, "item": {"type": "string", "enum": {"items": [{"name": "IkeV2", "value": "IkeV2"}, {"name": "OpenVPN", "value": "OpenVPN"}, {"name": "SSTP", "value": "SSTP"}]}}}]}, {"name": "VpnClientConfiguration", "args": [{"type": "array", "var": "$parameters.properties.vpnClientConfiguration.radiusServers", "options": ["radius-servers"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "The radiusServers property for multiple radius server configuration."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "options": ["radius-server-address"], "required": true, "help": {"short": "The address of this radius server."}}, {"type": "integer64", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerScore", "options": ["radius-server-score"], "help": {"short": "The initial score assigned to this radius server."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The secret used for this radius server."}}]}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "options": ["vng-client-connection-configurations"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "per ip address pool connection policy for virtual network gateway P2S client."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "List of references to virtualNetworkGatewayPolicyGroups"}, "item": {"type": "object", "args": [{"type": "string", "var": "@SubResource_create.id", "options": ["id"], "help": {"short": "Resource ID."}}], "cls": "SubResource_create"}}, {"type": "object", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}, "args": [{"type": "array", "var": "@AddressSpace_create.addressPrefixes", "options": ["address-prefixes"], "help": {"short": "A list of address blocks reserved for this virtual network in CIDR notation."}, "item": {"type": "string"}}, {"type": "array", "var": "@AddressSpace_create.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"type": "object", "args": [{"type": "string", "var": "@AddressSpace_create.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"type": "ResourceId", "var": "@AddressSpace_create.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}], "cls": "AddressSpace_create"}]}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "options": ["vpn-client-ipsec-policies"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "VpnClientIpsecPolicies for virtual network gateway P2S client."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].dhGroup", "options": ["dh-group"], "required": true, "help": {"short": "The DH Group used in IKE Phase 1 for initial SA."}, "enum": {"items": [{"name": "DHGroup1", "value": "DHGroup1"}, {"name": "DHGroup14", "value": "DHGroup14"}, {"name": "DHGroup2", "value": "DHGroup2"}, {"name": "DHGroup2048", "value": "DHGroup2048"}, {"name": "DHGroup24", "value": "DHGroup24"}, {"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeEncryption", "options": ["ike-encryption"], "required": true, "help": {"short": "The IKE encryption algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeIntegrity", "options": ["ike-integrity"], "required": true, "help": {"short": "The IKE integrity algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}, {"name": "SHA384", "value": "SHA384"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecEncryption", "options": ["ipsec-encryption"], "required": true, "help": {"short": "The IPSec encryption algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecIntegrity", "options": ["ipsec-integrity"], "required": true, "help": {"short": "The IPSec integrity algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].pfsGroup", "options": ["pfs-group"], "required": true, "help": {"short": "The Pfs Group used in IKE Phase 2 for new child SA."}, "enum": {"items": [{"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}, {"name": "PFS1", "value": "PFS1"}, {"name": "PFS14", "value": "PFS14"}, {"name": "PFS2", "value": "PFS2"}, {"name": "PFS2048", "value": "PFS2048"}, {"name": "PFS24", "value": "PFS24"}, {"name": "PFSMM", "value": "PFSMM"}]}}, {"type": "integer32", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saDataSizeKilobytes", "options": ["sa-data-size-kilobytes"], "required": true, "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel."}}, {"type": "integer32", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saLifeTimeSeconds", "options": ["sa-life-time-seconds"], "required": true, "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel."}}]}}, {"type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "options": ["vpn-client-revoked-certificates"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "VpnClientRevokedCertificate for Virtual network gateway."}, "item": {"type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint", "options": ["thumbprint"], "group": "Properties", "help": {"short": "The revoked VPN client certificate thumbprint."}}]}}]}], "operations": [{"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGateways_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name", "arg": "$parameters.extendedLocation.name"}, {"type": "string", "name": "type", "arg": "$parameters.extendedLocation.type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"type": "string", "name": "type", "arg": "$parameters.identity.type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "arg": "$parameters.identity.userAssignedIdentities", "additionalProps": {"item": {"type": "object"}}}], "userAssigned": {"action": "create", "type": "array", "name": "userAssigned", "arg": "$parameters.identity.userAssigned", "item": {"action": "create", "type": "string"}}, "systemAssigned": {"action": "create", "type": "string", "name": "systemAssigned", "arg": "$parameters.identity.systemAssigned"}}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive", "arg": "$parameters.properties.activeActive"}, {"type": "string", "name": "adminState", "arg": "$parameters.properties.adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic", "arg": "$parameters.properties.allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic", "arg": "$parameters.properties.allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max", "arg": "$parameters.properties.autoScaleConfiguration.bounds.max"}, {"type": "integer", "name": "min", "arg": "$parameters.properties.autoScaleConfiguration.bounds.min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "arg": "$parameters.properties.bgpSettings.asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].customBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].ipconfigurationId"}]}}, {"type": "integer32", "name": "peerWeight", "arg": "$parameters.properties.bgpSettings.peerWeight"}]}, {"type": "object", "name": "customRoutes", "props": [{"type": "array", "name": "addressPrefixes", "arg": "$parameters.properties.customRoutes.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}]}, {"type": "boolean", "name": "disableIPSecReplayProtection", "arg": "$parameters.properties.disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp", "arg": "$parameters.properties.enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat", "arg": "$parameters.properties.enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding", "arg": "$parameters.properties.enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway", "arg": "$parameters.properties.enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress", "arg": "$parameters.properties.enablePrivateIpAddress"}, {"type": "object", "name": "gatewayDefaultSite", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.gatewayDefaultSite.id"}]}, {"type": "string", "name": "gatewayType", "arg": "$parameters.properties.gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"type": "array", "name": "ipConfigurations", "arg": "$parameters.properties.ipConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.ipConfigurations[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ipConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "privateIPAllocationMethod", "arg": "$parameters.properties.ipConfigurations[].properties.privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"type": "object", "name": "publicIPAddress", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.ipConfigurations[].properties.publicIPAddress.id"}]}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.ipConfigurations[].properties.subnet.id"}]}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "arg": "$parameters.properties.natRules", "item": {"type": "object", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.natRules[].id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name", "arg": "$parameters.properties.natRules[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array", "name": "externalMappings", "arg": "$parameters.properties.natRules[].properties.externalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace", "arg": "$parameters.properties.natRules[].properties.externalMappings[].addressSpace"}, {"type": "string", "name": "portRange", "arg": "$parameters.properties.natRules[].properties.externalMappings[].portRange"}]}}, {"type": "array", "name": "internalMappings", "arg": "$parameters.properties.natRules[].properties.internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace", "arg": "$parameters.properties.natRules[].properties.internalMappings[].addressSpace"}, {"type": "string", "name": "portRange", "arg": "$parameters.properties.natRules[].properties.internalMappings[].portRange"}]}}, {"type": "string", "name": "ipConfigurationId", "arg": "$parameters.properties.natRules[].properties.ipConfigurationId"}, {"type": "string", "name": "mode", "arg": "$parameters.properties.natRules[].properties.mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"type": "string", "name": "type", "arg": "$parameters.properties.natRules[].properties.type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}]}}, {"type": "string", "name": "resiliencyModel", "arg": "$parameters.properties.resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"type": "object", "name": "sku", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.sku.name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "arg": "$parameters.properties.sku.tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId", "arg": "$parameters.properties.vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.errorMessage"}, {"type": "string", "name": "phase", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "required": true}, {"type": "array", "name": "policyMembers", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue"}, {"type": "string", "name": "name", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name"}]}}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "required": true}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience", "arg": "$parameters.properties.vpnClientConfiguration.aadAudience"}, {"type": "string", "name": "aadIssuer", "arg": "$parameters.properties.vpnClientConfiguration.aadIssuer"}, {"type": "string", "name": "aadTenant", "arg": "$parameters.properties.vpnClientConfiguration.aadTenant"}, {"type": "string", "name": "radiusServerAddress", "arg": "$parameters.properties.vpnClientConfiguration.radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "arg": "$parameters.properties.vpnClientConfiguration.radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "@SubResource_create.id"}], "cls": "SubResource_create"}}, {"type": "object", "name": "vpnClientAddressPool", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "required": true, "props": [{"type": "array", "name": "addressPrefixes", "arg": "@AddressSpace_create.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "@AddressSpace_create.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_create"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "arg": "$parameters.properties.vpnClientConfiguration.vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}]}, {"type": "array", "name": "vpnClientIpsecPolicies", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "thumbprint", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "publicCertData", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "arg": "$parameters.properties.vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "arg": "$parameters.properties.vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.tags", "additionalProps": {"item": {"type": "string"}}}], "clientFlatten": true}}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}]}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}, {"name": "update", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}, {"nullable": true, "type": "ResourceLocation", "var": "$parameters.location", "options": ["l", "location"], "hide": true, "group": "", "help": {"short": "Location. Values from: `az account list-locations`. You can configure the default location using `az configure --defaults location=`."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.allowRemoteVnetTraffic", "options": ["allow-remote-vnet-traffic"], "group": "", "help": {"short": "Configure this gateway to accept traffic from other Azure Virtual Networks. This configuration does not support connectivity to Azure Virtual WAN."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.allowVirtualWanTraffic", "options": ["allow-vwan-traffic"], "group": "", "help": {"short": "Configures this gateway to accept traffic from remote Virtual WAN networks."}}, {"nullable": true, "type": "integer", "var": "$parameters.properties.autoScaleConfiguration.bounds.max", "options": ["max-scale-unit"], "group": "", "help": {"short": "Maximum scale units for auto-scale configuration."}}, {"nullable": true, "type": "integer", "var": "$parameters.properties.autoScaleConfiguration.bounds.min", "options": ["min-scale-unit"], "group": "", "help": {"short": "Minimum scale units for auto-scale configuration."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enableHighBandwidthVpnGateway", "options": ["enable-high-bandwidth", "enable-high-bandwidth-vpn-gateway"], "group": "", "help": {"short": "To enable Advanced Connectivity feature for VPN gateway"}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enablePrivateIpAddress", "options": ["enable-private-ip"], "group": "", "help": {"short": "Whether private IP needs to be enabled on this gateway for connections or not."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.gatewayDefaultSite.id", "options": ["gateway-default-site"], "group": "", "help": {"short": "Name or ID of a local network gateway representing a local network site with default routes."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.gatewayType", "options": ["gateway-type"], "group": "", "help": {"short": "The gateway type."}, "enum": {"items": [{"name": "ExpressRoute", "value": "ExpressRoute"}, {"name": "LocalGateway", "value": "LocalGateway"}, {"name": "Vpn", "value": "Vpn"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.resiliencyModel", "options": ["resiliency-model"], "group": "", "help": {"short": "Indicates if the Express Route Gateway has resiliency model of MultiHomed or SingleHomed"}, "enum": {"items": [{"name": "MultiHomed", "value": "MultiHomed"}, {"name": "SingleHomed", "value": "SingleHomed"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.sku.name", "options": ["sku"], "group": "", "help": {"short": "VNet gateway SKU."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnAuthenticationTypes", "options": ["vpn-auth-type"], "group": "", "help": {"short": "VPN authentication types enabled for the virtual network gateway."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "AAD", "value": "AAD"}, {"name": "Certificate", "value": "Certificate"}, {"name": "Radius", "value": "Radius"}]}}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnType", "options": ["vpn-type"], "group": "", "help": {"short": "VPN routing type."}, "enum": {"items": [{"name": "PolicyBased", "value": "PolicyBased"}, {"name": "RouteBased", "value": "RouteBased"}]}}, {"nullable": true, "type": "object", "var": "$parameters.tags", "options": ["tags"], "group": "", "help": {"short": "Space-separated tags: key[=value] [key[=value] ...]. Use \"\" to clear existing tags."}, "additionalProps": {"item": {"nullable": true, "type": "string"}}}]}, {"name": "AAD Authentication", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadAudience", "options": ["aad-audience"], "group": "AAD Authentication", "help": {"short": "The AADAudience ID of the VirtualNetworkGateway."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadIssuer", "options": ["aad-issuer"], "group": "AAD Authentication", "help": {"short": "The AAD Issuer URI of the VirtualNetworkGateway."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.aadTenant", "options": ["aad-tenant"], "group": "AAD Authentication", "help": {"short": "The AAD Tenant URI of the VirtualNetworkGateway."}}]}, {"name": "BGP Peering", "args": [{"nullable": true, "type": "integer64", "var": "$parameters.properties.bgpSettings.asn", "options": ["asn"], "group": "BGP Peering", "help": {"short": "Autonomous System Number to use for the BGP settings."}, "format": {"maximum": 4294967295, "minimum": 0}}, {"nullable": true, "type": "string", "var": "$parameters.properties.bgpSettings.bgpPeeringAddress", "options": ["bgp-peering-address"], "group": "BGP Peering", "help": {"short": "IP address to use for BGP peering."}}, {"nullable": true, "type": "integer32", "var": "$parameters.properties.bgpSettings.peerWeight", "options": ["peer-weight"], "group": "BGP Peering", "help": {"short": "Weight (0-100) added to routes learned through BGP peering."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enableBgp", "options": ["enable-bgp"], "group": "BGP Peering", "help": {"short": "Enable BGP (Border Gateway Protocol)."}}]}, {"name": "BgpSettings", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses", "options": ["bgp-peering-addresses"], "hide": true, "group": "BgpSettings", "help": {"short": "BGP peering address with IP configuration ID for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].customBgpIpAddresses", "options": ["custom-bgp-ip-addresses"], "help": {"short": "The list of custom BGP peering addresses which belong to IP configuration."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].ipconfigurationId", "options": ["ipconfiguration-id"], "help": {"short": "The ID of IP configuration which belongs to gateway."}}]}}]}, {"name": "CustomRoutes", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "hide": true, "group": "CustomRoutes", "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"nullable": true, "type": "ResourceId", "var": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}]}, {"name": "Identity", "args": [{"nullable": true, "type": "string", "var": "$parameters.identity.type", "options": ["type"], "group": "Identity", "help": {"short": "The type of identity used for the resource. The type 'SystemAssigned, UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the virtual machine."}, "enum": {"items": [{"name": "None", "value": "None"}, {"name": "SystemAssigned", "value": "SystemAssigned"}, {"name": "SystemAssigned, UserAssigned", "value": "SystemAssigned, UserAssigned"}, {"name": "UserAssigned", "value": "UserAssigned"}]}}, {"nullable": true, "type": "object", "var": "$parameters.identity.userAssignedIdentities", "options": ["user-assigned-ids", "user-assigned-identities"], "group": "Identity", "help": {"short": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'."}, "additionalProps": {"item": {"nullable": true, "blank": {"value": {}}, "type": "object"}}}]}, {"name": "Parameters", "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.id", "options": ["id"], "hide": true, "group": "Parameters", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}]}, {"name": "Properties", "args": [{"nullable": true, "type": "string", "var": "$parameters.extendedLocation.name", "options": ["edge-zone"], "hide": true, "group": "Properties", "help": {"short": "The name of edge zone."}}, {"nullable": true, "type": "string", "var": "$parameters.extendedLocation.type", "options": ["edge-zone-type"], "hide": true, "group": "Properties", "help": {"short": "The type of the extended location."}, "default": {"value": "EdgeZone"}, "enum": {"items": [{"name": "EdgeZone", "value": "EdgeZone"}]}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.activeActive", "options": ["active"], "group": "Properties", "help": {"short": "ActiveActive flag."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.adminState", "options": ["admin-state"], "hide": true, "group": "Properties", "help": {"short": "Property to indicate if the Express Route Gateway serves traffic when there are multiple Express Route Gateways in the vnet"}, "enum": {"items": [{"name": "Disabled", "value": "Disabled"}, {"name": "Enabled", "value": "Enabled"}]}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.disableIPSecReplayProtection", "options": ["disable-ip-sec-replay-protection"], "hide": true, "group": "Properties", "help": {"short": "disableIPSecReplayProtection flag."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enableBgpRouteTranslationForNat", "options": ["enable-bgp-route-translation-for-nat"], "hide": true, "group": "Properties", "help": {"short": "EnableBgpRouteTranslationForNat flag."}}, {"nullable": true, "type": "boolean", "var": "$parameters.properties.enableDnsForwarding", "options": ["enable-dns-forwarding"], "hide": true, "group": "Properties", "help": {"short": "Whether dns forwarding is enabled or not."}}, {"nullable": true, "type": "array", "var": "$parameters.properties.ipConfigurations", "options": ["ip-configurations"], "group": "Properties", "help": {"short": "IP configurations for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.ipConfigurations[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ipConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.ipConfigurations[].properties.privateIPAllocationMethod", "options": ["private-ip-allocation-method"], "group": "Properties", "help": {"short": "The private IP address allocation method."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}, {"nullable": true, "type": "object", "var": "$parameters.properties.ipConfigurations[].properties.publicIPAddress", "options": ["public-ip-address"], "group": "Properties", "help": {"short": "The reference to the public IP resource."}, "args": [{"nullable": true, "type": "string", "var": "@SubResource_update.id", "options": ["id"], "help": {"short": "Resource ID."}}], "cls": "SubResource_update"}, {"nullable": true, "type": "string", "var": "$parameters.properties.ipConfigurations[].properties.subnet.id", "options": ["subnet"], "group": "Subnet", "help": {"short": "test"}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.natRules", "options": ["nat-rules"], "hide": true, "group": "Properties", "help": {"short": "NatRules for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "ResourceId", "var": "$parameters.properties.natRules[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}, "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.natRules[].name", "options": ["name"], "group": "", "help": {"short": "Required. The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "array<@VpnNatRuleMapping_update>", "var": "$parameters.properties.natRules[].properties.externalMappings", "options": ["external-mappings"], "group": "Properties", "help": {"short": "The private IP address external mapping for NAT."}, "item": {"nullable": true, "type": "@VpnNatRuleMapping_update"}}, {"nullable": true, "type": "array", "var": "$parameters.properties.natRules[].properties.internalMappings", "options": ["internal-mappings-ip"], "group": "Properties", "help": {"short": "The private IP address internal mapping for NAT."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@VpnNatRuleMapping_update.addressSpace", "options": ["address-space"], "help": {"short": "Address space for Vpn NatRule mapping."}}, {"nullable": true, "type": "string", "var": "@VpnNatRuleMapping_update.portRange", "options": ["port-range"], "hide": true, "group": "", "help": {"short": "Port range for Vpn NatRule mapping."}}], "cls": "VpnNatRuleMapping_update"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.natRules[].properties.ipConfigurationId", "options": ["ip-config-id"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.natRules[].properties.mode", "options": ["mode"], "group": "Properties", "help": {"short": "The Source NAT direction of a VPN NAT."}, "enum": {"items": [{"name": "EgressSnat", "value": "EgressSnat"}, {"name": "IngressSnat", "value": "IngressSnat"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.natRules[].properties.type", "options": ["type"], "group": "Properties", "help": {"short": "The IP Configuration ID this NAT rule applies to."}, "enum": {"items": [{"name": "Dynamic", "value": "Dynamic"}, {"name": "Static", "value": "Static"}]}}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.sku.tier", "options": ["sku-tier"], "group": "Properties", "help": {"short": "Gateway SKU tier."}, "enum": {"items": [{"name": "Basic", "value": "Basic"}, {"name": "ErGw1AZ", "value": "ErGw1AZ"}, {"name": "ErGw2AZ", "value": "ErGw2AZ"}, {"name": "ErGw3AZ", "value": "ErGw3AZ"}, {"name": "ErGwScale", "value": "ErGwScale"}, {"name": "HighPerformance", "value": "HighPerformance"}, {"name": "Standard", "value": "Standard"}, {"name": "UltraPerformance", "value": "UltraPerformance"}, {"name": "VpnGw1", "value": "VpnGw1"}, {"name": "VpnGw1AZ", "value": "VpnGw1AZ"}, {"name": "VpnGw2", "value": "VpnGw2"}, {"name": "VpnGw2AZ", "value": "VpnGw2AZ"}, {"name": "VpnGw3", "value": "VpnGw3"}, {"name": "VpnGw3AZ", "value": "VpnGw3AZ"}, {"name": "VpnGw4", "value": "VpnGw4"}, {"name": "VpnGw4AZ", "value": "VpnGw4AZ"}, {"name": "VpnGw5", "value": "VpnGw5"}, {"name": "VpnGw5AZ", "value": "VpnGw5AZ"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vNetExtendedLocationResourceId", "options": ["edge-zone-vnet-id"], "hide": true, "group": "Properties", "help": {"short": "The Extended vnet resource id of the local gateway."}}, {"nullable": true, "type": "object", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus", "options": ["virtual-network-gateway-migration-status"], "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayMigrationStatus which represents the status of migration."}, "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.errorMessage", "options": ["error-message"], "help": {"short": "Error if any occurs during migration."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.phase", "options": ["phase"], "help": {"short": "Represent the current migration phase of gateway."}, "enum": {"items": [{"name": "Abort", "value": "Abort"}, {"name": "AbortSucceeded", "value": "AbortSucceeded"}, {"name": "Commit", "value": "Commit"}, {"name": "CommitSucceeded", "value": "CommitSucceeded"}, {"name": "Execute", "value": "Execute"}, {"name": "ExecuteSucceeded", "value": "ExecuteSucceeded"}, {"name": "None", "value": "None"}, {"name": "Prepare", "value": "Prepare"}, {"name": "PrepareSucceeded", "value": "PrepareSucceeded"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayMigrationStatus.state", "options": ["state"], "help": {"short": "Represent the current state of gateway migration."}, "enum": {"items": [{"name": "Failed", "value": "Failed"}, {"name": "InProgress", "value": "InProgress"}, {"name": "None", "value": "None"}, {"name": "Succeeded", "value": "Succeeded"}]}}]}, {"nullable": true, "type": "array", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "hide": true, "group": "Properties", "help": {"short": "The reference to the VirtualNetworkGatewayPolicyGroup resource which represents the available VirtualNetworkGatewayPolicyGroup for the gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "boolean", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "options": ["is-default"], "group": "Properties", "help": {"short": "Shows if this is a Default VirtualNetworkGatewayPolicyGroup or not."}}, {"type": "array", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "options": ["policy-members"], "group": "Properties", "help": {"short": "Multiple PolicyMembers for VirtualNetworkGatewayPolicyGroup."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "options": ["attribute-type"], "help": {"short": "The Vpn Policy member attribute type."}, "enum": {"items": [{"name": "AADGroupId", "value": "AADGroupId"}, {"name": "CertificateGroupId", "value": "CertificateGroupId"}, {"name": "RadiusAzureGroupId", "value": "RadiusAzureGroupId"}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue", "options": ["attribute-value"], "help": {"short": "The value of Attribute used for this VirtualNetworkGatewayPolicyGroupMember."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name", "options": ["name"], "help": {"short": "Name of the VirtualNetworkGatewayPolicyGroupMember."}}]}}, {"type": "integer32", "var": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "options": ["priority"], "group": "Properties", "help": {"short": "Priority for VirtualNetworkGatewayPolicyGroup."}}]}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnGatewayGeneration", "options": ["vpn-gateway-generation"], "hide": true, "group": "Properties", "help": {"short": "The generation for the virtual network gateway. vpn_gateway_generation should not be provided if gateway_type is not Vpn."}, "enum": {"items": [{"name": "Generation1", "value": "Generation1"}, {"name": "Generation2", "value": "Generation2"}, {"name": "None", "value": "None"}]}}]}, {"name": "Root Cert Authentication", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates", "options": ["vpn-client-root-certificates"], "group": "Root Cert Authentication", "help": {"short": "VpnClientRootCertificate for virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "options": ["public-cert-data"], "group": "Properties", "help": {"short": "The certificate public data."}}]}}]}, {"name": "VPN Client", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.customRoutes.addressPrefixes", "options": ["custom-routes"], "group": "VPN Client", "help": {"short": "Space-separated list of CIDR prefixes representing the custom routes address space specified by the customer for VpnClient."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServerAddress", "options": ["radius-server"], "group": "VPN Client", "help": {"short": "Radius server address to connect to."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServerSecret", "options": ["radius-secret"], "group": "VPN Client", "help": {"short": "Radius secret to use for authentication."}}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.addressPrefixes", "options": ["address-prefixes"], "group": "VPN Client", "help": {"short": "Space-separated list of CIDR prefixes representing the address space for the P2S Vpnclient."}, "item": {"nullable": true, "type": "string"}, "singularOptions": ["address-prefix"]}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientProtocols", "options": ["client-protocol"], "group": "VPN Client", "help": {"short": "Protocols to use for connecting. Allowed values: IkeV2, OpenVPN, SSTP."}, "item": {"nullable": true, "type": "string", "enum": {"items": [{"name": "IkeV2", "value": "IkeV2"}, {"name": "OpenVPN", "value": "OpenVPN"}, {"name": "SSTP", "value": "SSTP"}]}}}]}, {"name": "VpnClientConfiguration", "args": [{"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.radiusServers", "options": ["radius-servers"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "The radiusServers property for multiple radius server configuration."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "options": ["radius-server-address"], "help": {"short": "The address of this radius server."}}, {"nullable": true, "type": "integer64", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerScore", "options": ["radius-server-score"], "help": {"short": "The initial score assigned to this radius server."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "options": ["radius-server-secret"], "help": {"short": "The secret used for this radius server."}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "options": ["vng-client-connection-configurations"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "per ip address pool connection policy for virtual network gateway P2S client."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id", "options": ["id"], "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"type": "array<@SubResource_update>", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "options": ["virtual-network-gateway-policy-groups"], "group": "Properties", "help": {"short": "List of references to virtualNetworkGatewayPolicyGroups"}, "item": {"nullable": true, "type": "@SubResource_update"}}, {"type": "object", "var": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "options": ["vpn-client-address-pool"], "group": "Properties", "help": {"short": "The reference to the address space resource which represents Address space for P2S VpnClient."}, "args": [{"nullable": true, "type": "array", "var": "@AddressSpace_update.addressPrefixes", "options": ["address-prefixes"], "help": {"short": "A list of address blocks reserved for this virtual network in CIDR notation."}, "item": {"nullable": true, "type": "string"}}, {"nullable": true, "type": "array", "var": "@AddressSpace_update.ipamPoolPrefixAllocations", "options": ["ipam-pool-prefix-allocations"], "help": {"short": "A list of IPAM Pools allocating IP address prefixes."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "@AddressSpace_update.ipamPoolPrefixAllocations[].numberOfIpAddresses", "options": ["number-of-ip-addresses"], "help": {"short": "Number of IP addresses to allocate."}}, {"nullable": true, "type": "ResourceId", "var": "@AddressSpace_update.ipamPoolPrefixAllocations[].pool.id", "options": ["id"], "group": "Pool", "help": {"short": "Resource id of the associated Azure IpamPool resource."}}]}}], "cls": "AddressSpace_update"}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "options": ["vpn-client-ipsec-policies"], "group": "VpnClientConfiguration", "help": {"short": "VpnClientIpsecPolicies for virtual network gateway P2S client."}, "item": {"nullable": true, "type": "object", "args": [{"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].dhGroup", "options": ["dh-group"], "help": {"short": "The DH Group used in IKE Phase 1 for initial SA."}, "enum": {"items": [{"name": "DHGroup1", "value": "DHGroup1"}, {"name": "DHGroup14", "value": "DHGroup14"}, {"name": "DHGroup2", "value": "DHGroup2"}, {"name": "DHGroup2048", "value": "DHGroup2048"}, {"name": "DHGroup24", "value": "DHGroup24"}, {"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeEncryption", "options": ["ike-encryption"], "help": {"short": "The IKE encryption algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeIntegrity", "options": ["ike-integrity"], "help": {"short": "The IKE integrity algorithm (IKE phase 2)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}, {"name": "SHA384", "value": "SHA384"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecEncryption", "options": ["ipsec-encryption"], "help": {"short": "The IPSec encryption algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "AES128", "value": "AES128"}, {"name": "AES192", "value": "AES192"}, {"name": "AES256", "value": "AES256"}, {"name": "DES", "value": "DES"}, {"name": "DES3", "value": "DES3"}, {"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "None", "value": "None"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecIntegrity", "options": ["ipsec-integrity"], "help": {"short": "The IPSec integrity algorithm (IKE phase 1)."}, "enum": {"items": [{"name": "GCMAES128", "value": "GCMAES128"}, {"name": "GCMAES192", "value": "GCMAES192"}, {"name": "GCMAES256", "value": "GCMAES256"}, {"name": "MD5", "value": "MD5"}, {"name": "SHA1", "value": "SHA1"}, {"name": "SHA256", "value": "SHA256"}]}}, {"type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].pfsGroup", "options": ["pfs-group"], "help": {"short": "The Pfs Group used in IKE Phase 2 for new child SA."}, "enum": {"items": [{"name": "ECP256", "value": "ECP256"}, {"name": "ECP384", "value": "ECP384"}, {"name": "None", "value": "None"}, {"name": "PFS1", "value": "PFS1"}, {"name": "PFS14", "value": "PFS14"}, {"name": "PFS2", "value": "PFS2"}, {"name": "PFS2048", "value": "PFS2048"}, {"name": "PFS24", "value": "PFS24"}, {"name": "PFSMM", "value": "PFSMM"}]}}, {"type": "integer32", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saDataSizeKilobytes", "options": ["sa-data-size-kilobytes"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel."}}, {"type": "integer32", "var": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saLifeTimeSeconds", "options": ["sa-life-time-seconds"], "help": {"short": "The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel."}}]}}, {"nullable": true, "type": "array", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "options": ["vpn-client-revoked-certificates"], "hide": true, "group": "VpnClientConfiguration", "help": {"short": "VpnClientRevokedCertificate for Virtual network gateway."}, "item": {"nullable": true, "type": "object", "args": [{"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id", "options": ["id"], "hide": true, "group": "", "help": {"short": "Resource ID."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name", "options": ["name"], "help": {"short": "The name of the resource that is unique within a resource group. This name can be used to access the resource."}}, {"nullable": true, "type": "string", "var": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint", "options": ["thumbprint"], "group": "Properties", "help": {"short": "The revoked VPN client certificate thumbprint."}}]}}]}], "operations": [{"operationId": "VirtualNetworkGateways_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Instance", "json": {"schema": {"type": "object", "name": "parameters", "required": true, "props": [{"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name", "arg": "$parameters.extendedLocation.name"}, {"type": "string", "name": "type", "arg": "$parameters.extendedLocation.type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "arg": "$parameters.id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"type": "string", "name": "type", "arg": "$parameters.identity.type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "arg": "$parameters.identity.userAssignedIdentities", "additionalProps": {"item": {"type": "object"}}}]}, {"type": "ResourceLocation", "name": "location", "arg": "$parameters.location"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive", "arg": "$parameters.properties.activeActive"}, {"type": "string", "name": "adminState", "arg": "$parameters.properties.adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic", "arg": "$parameters.properties.allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic", "arg": "$parameters.properties.allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max", "arg": "$parameters.properties.autoScaleConfiguration.bounds.max"}, {"type": "integer", "name": "min", "arg": "$parameters.properties.autoScaleConfiguration.bounds.min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "arg": "$parameters.properties.bgpSettings.asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].customBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId", "arg": "$parameters.properties.bgpSettings.bgpPeeringAddresses[].ipconfigurationId"}]}}, {"type": "integer32", "name": "peerWeight", "arg": "$parameters.properties.bgpSettings.peerWeight"}]}, {"type": "object", "name": "customRoutes", "props": [{"type": "array", "name": "addressPrefixes", "arg": "$parameters.properties.customRoutes.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}]}, {"type": "boolean", "name": "disableIPSecReplayProtection", "arg": "$parameters.properties.disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp", "arg": "$parameters.properties.enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat", "arg": "$parameters.properties.enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding", "arg": "$parameters.properties.enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway", "arg": "$parameters.properties.enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress", "arg": "$parameters.properties.enablePrivateIpAddress"}, {"type": "object", "name": "gatewayDefaultSite", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.gatewayDefaultSite.id"}]}, {"type": "string", "name": "gatewayType", "arg": "$parameters.properties.gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"type": "array", "name": "ipConfigurations", "arg": "$parameters.properties.ipConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.ipConfigurations[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.ipConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "privateIPAllocationMethod", "arg": "$parameters.properties.ipConfigurations[].properties.privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"type": "object", "name": "publicIPAddress", "arg": "$parameters.properties.ipConfigurations[].properties.publicIPAddress", "props": [{"type": "string", "name": "id", "arg": "@SubResource_update.id"}], "cls": "SubResource_update"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.ipConfigurations[].properties.subnet.id"}]}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "arg": "$parameters.properties.natRules", "item": {"type": "object", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.natRules[].id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name", "arg": "$parameters.properties.natRules[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_update>", "name": "externalMappings", "arg": "$parameters.properties.natRules[].properties.externalMappings", "item": {"type": "@VpnNatRuleMapping_update"}}, {"type": "array", "name": "internalMappings", "arg": "$parameters.properties.natRules[].properties.internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace", "arg": "@VpnNatRuleMapping_update.addressSpace"}, {"type": "string", "name": "portRange", "arg": "@VpnNatRuleMapping_update.portRange"}], "cls": "VpnNatRuleMapping_update"}}, {"type": "string", "name": "ipConfigurationId", "arg": "$parameters.properties.natRules[].properties.ipConfigurationId"}, {"type": "string", "name": "mode", "arg": "$parameters.properties.natRules[].properties.mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"type": "string", "name": "type", "arg": "$parameters.properties.natRules[].properties.type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}]}}, {"type": "string", "name": "resiliencyModel", "arg": "$parameters.properties.resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"type": "object", "name": "sku", "props": [{"type": "string", "name": "name", "arg": "$parameters.properties.sku.name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "arg": "$parameters.properties.sku.tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId", "arg": "$parameters.properties.vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.errorMessage"}, {"type": "string", "name": "phase", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "arg": "$parameters.properties.virtualNetworkGatewayMigrationStatus.state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.isDefault", "required": true}, {"type": "array", "name": "policyMembers", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].attributeValue"}, {"type": "string", "name": "name", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.policyMembers[].name"}]}}, {"type": "integer32", "name": "priority", "arg": "$parameters.properties.virtualNetworkGatewayPolicyGroups[].properties.priority", "required": true}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience", "arg": "$parameters.properties.vpnClientConfiguration.aadAudience"}, {"type": "string", "name": "aadIssuer", "arg": "$parameters.properties.vpnClientConfiguration.aadIssuer"}, {"type": "string", "name": "aadTenant", "arg": "$parameters.properties.vpnClientConfiguration.aadTenant"}, {"type": "string", "name": "radiusServerAddress", "arg": "$parameters.properties.vpnClientConfiguration.radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "arg": "$parameters.properties.vpnClientConfiguration.radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "arg": "$parameters.properties.vpnClientConfiguration.radiusServers[].radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@SubResource_update>", "name": "virtualNetworkGatewayPolicyGroups", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_update"}}, {"type": "object", "name": "vpnClientAddressPool", "arg": "$parameters.properties.vpnClientConfiguration.vngClientConnectionConfigurations[].properties.vpnClientAddressPool", "required": true, "props": [{"type": "array", "name": "addressPrefixes", "arg": "@AddressSpace_update.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "@AddressSpace_update.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_update"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "arg": "$parameters.properties.vpnClientConfiguration.vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "arg": "$parameters.properties.customRoutes.ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"type": "string", "name": "numberOfIpAddresses", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.ipamPoolPrefixAllocations[].numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientAddressPool.ipamPoolPrefixAllocations[].pool.id"}], "clientFlatten": true}]}}]}, {"type": "array", "name": "vpnClientIpsecPolicies", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientIpsecPolicies[].saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].name"}, {"type": "object", "name": "properties", "props": [{"type": "string", "name": "thumbprint", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRevokedCertificates[].properties.thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates", "item": {"type": "object", "props": [{"type": "string", "name": "id", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].id"}, {"type": "string", "name": "name", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "string", "name": "publicCertData", "arg": "$parameters.properties.vpnClientConfiguration.vpnClientRootCertificates[].properties.publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "arg": "$parameters.properties.vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "arg": "$parameters.properties.vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "arg": "$parameters.tags", "additionalProps": {"item": {"type": "string"}}}], "clientFlatten": true}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGateways_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Instance", "clientFlatten": true}], "confirmation": ""}], "commandGroups": [{"name": "identity", "commands": [{"name": "assign", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "subresource": "identity", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}]}, {"name": "Parameters.identity", "args": [{"blank": {"value": "True"}, "type": "string", "var": "$parameters.identity.systemAssigned", "options": ["system-assigned", "mi-system-assigned"], "group": "Parameters.identity", "help": {"short": "Set the system managed identity."}}, {"blank": {"value": []}, "type": "array", "var": "$parameters.identity.userAssigned", "options": ["user-assigned", "mi-user-assigned"], "group": "Parameters.identity", "help": {"short": "Set the user managed identities."}, "item": {"type": "string"}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "object", "name": "identity"}}}, "operations": [{"operationId": "VirtualNetworkGateways_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Subresource", "json": {"schema": {"action": "assign", "type": "IdentityObject", "name": "parameters.identity", "required": true, "userAssigned": {"action": "assign", "type": "array", "name": "userAssigned", "arg": "$parameters.identity.userAssigned", "item": {"action": "assign", "type": "string"}}, "systemAssigned": {"action": "assign", "type": "string", "name": "systemAssigned", "arg": "$parameters.identity.systemAssigned"}}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGateways_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}]}, {"name": "remove", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "subresource": "identity", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}]}, {"name": "Parameters.identity", "args": [{"blank": {"value": "True"}, "type": "string", "var": "$parameters.identity.systemAssigned", "options": ["system-assigned", "mi-system-assigned"], "group": "Parameters.identity", "help": {"short": "Set the system managed identity."}}, {"blank": {"value": []}, "type": "array", "var": "$parameters.identity.userAssigned", "options": ["user-assigned", "mi-user-assigned"], "group": "Parameters.identity", "help": {"short": "Set the user managed identities."}, "item": {"type": "string"}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "object", "name": "identity"}}}, "operations": [{"operationId": "VirtualNetworkGateways_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}, {"instanceUpdate": {"ref": "$Subresource", "json": {"schema": {"action": "remove", "type": "IdentityObject", "name": "parameters.identity", "required": true, "userAssigned": {"action": "remove", "type": "array", "name": "userAssigned", "arg": "$parameters.identity.userAssigned", "item": {"action": "remove", "type": "string"}}, "systemAssigned": {"action": "remove", "type": "string", "name": "systemAssigned", "arg": "$parameters.identity.systemAssigned"}}}}}, {"longRunning": {"finalStateVia": "azure-async-operation"}, "operationId": "VirtualNetworkGateways_CreateOrUpdate", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "put", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}, "body": {"json": {"ref": "$Instance"}}}, "responses": [{"statusCode": [200, 201], "body": {"json": {"var": "$Instance", "schema": {"type": "@VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}]}, {"name": "show", "version": "2025-01-01", "resources": [{"id": "/subscriptions/{}/resourcegroups/{}/providers/microsoft.network/virtualnetworkgateways/{}", "version": "2025-01-01", "subresource": "identity", "swagger": "mgmt-plane/network/ResourceProviders/Microsoft.Network/Paths/L3N1YnNjcmlwdGlvbnMve3N1YnNjcmlwdGlvbklkfS9yZXNvdXJjZUdyb3Vwcy97cmVzb3VyY2VHcm91cE5hbWV9L3Byb3ZpZGVycy9NaWNyb3NvZnQuTmV0d29yay92aXJ0dWFsTmV0d29ya0dhdGV3YXlzL3t2aXJ0dWFsTmV0d29ya0dhdGV3YXlOYW1lfQ==/V/MjAyNS0wMS0wMQ=="}], "argGroups": [{"name": "", "args": [{"type": "ResourceGroupName", "var": "$Path.resourceGroupName", "options": ["g", "resource-group"], "required": true, "idPart": "resource_group"}, {"type": "SubscriptionId", "var": "$Path.subscriptionId", "options": ["subscription"], "required": true, "idPart": "subscription"}, {"type": "string", "var": "$Path.virtualNetworkGatewayName", "options": ["n", "name"], "required": true, "group": "", "idPart": "name", "help": {"short": "Name of the VNet gateway."}}]}], "subresourceSelector": {"var": "$Subresource", "ref": "$Instance", "json": {"type": "object", "name": "parameters", "prop": {"type": "object", "name": "identity"}}}, "operations": [{"operationId": "VirtualNetworkGateways_Get", "http": {"path": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}", "request": {"method": "get", "path": {"params": [{"type": "string", "name": "resourceGroupName", "arg": "$Path.resourceGroupName", "required": true}, {"type": "string", "name": "subscriptionId", "arg": "$Path.subscriptionId", "required": true}, {"type": "string", "name": "virtualNetworkGatewayName", "arg": "$Path.virtualNetworkGatewayName", "required": true}]}, "query": {"consts": [{"readOnly": true, "const": true, "default": {"value": "2025-01-01"}, "type": "string", "name": "api-version", "required": true}]}}, "responses": [{"statusCode": [200], "body": {"json": {"var": "$Instance", "schema": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "object", "name": "extendedLocation", "props": [{"type": "string", "name": "name"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "EdgeZone"}]}}]}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}"}}, {"type": "IdentityObject", "name": "identity", "props": [{"readOnly": true, "type": "string", "name": "principalId"}, {"readOnly": true, "type": "string", "name": "tenantId"}, {"type": "string", "name": "type", "enum": {"items": [{"value": "None"}, {"value": "SystemAssigned"}, {"value": "SystemAssigned, UserAssigned"}, {"value": "UserAssigned"}]}}, {"type": "object", "name": "userAssignedIdentities", "additionalProps": {"item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "clientId"}, {"readOnly": true, "type": "string", "name": "principalId"}]}}}]}, {"type": "ResourceLocation", "name": "location"}, {"readOnly": true, "type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"type": "boolean", "name": "activeActive"}, {"type": "string", "name": "adminState", "enum": {"items": [{"value": "Disabled"}, {"value": "Enabled"}]}}, {"type": "boolean", "name": "allowRemoteVnetTraffic"}, {"type": "boolean", "name": "allowVirtualWanTraffic"}, {"type": "object", "name": "autoScaleConfiguration", "props": [{"type": "object", "name": "bounds", "props": [{"type": "integer", "name": "max"}, {"type": "integer", "name": "min"}]}]}, {"type": "object", "name": "bgpSettings", "props": [{"type": "integer64", "name": "asn", "format": {"maximum": 4294967295, "minimum": 0}}, {"type": "string", "name": "bgpPeeringAddress"}, {"type": "array", "name": "bgpPeeringAddresses", "item": {"type": "object", "props": [{"type": "array", "name": "customBgpIpAddresses", "item": {"type": "string"}}, {"readOnly": true, "type": "array", "name": "defaultBgpIpAddresses", "item": {"type": "string"}}, {"type": "string", "name": "ipconfigurationId"}, {"readOnly": true, "type": "array", "name": "tunnelIpAddresses", "item": {"type": "string"}}]}}, {"type": "integer32", "name": "peerWeight"}]}, {"type": "@AddressSpace_read", "name": "customRoutes"}, {"type": "boolean", "name": "disableIPSecReplayProtection"}, {"type": "boolean", "name": "enableBgp"}, {"type": "boolean", "name": "enableBgpRouteTranslationForNat"}, {"type": "boolean", "name": "enableDnsForwarding"}, {"type": "boolean", "name": "enableHighBandwidthVpnGateway"}, {"type": "boolean", "name": "enablePrivateIpAddress"}, {"type": "@SubResource_read", "name": "gatewayDefaultSite"}, {"type": "string", "name": "gatewayType", "enum": {"items": [{"value": "ExpressRoute"}, {"value": "LocalGateway"}, {"value": "Vpn"}]}}, {"readOnly": true, "type": "string", "name": "inboundDnsForwardingEndpoint"}, {"type": "array", "name": "ipConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "privateIPAddress"}, {"type": "string", "name": "privateIPAllocationMethod", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "@SubResource_read", "name": "publicIPAddress"}, {"type": "object", "name": "subnet", "props": [{"type": "string", "name": "id"}], "cls": "SubResource_read"}], "clientFlatten": true}]}}, {"type": "array", "name": "natRules", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "ResourceId", "name": "id", "format": {"template": "/subscriptions/{}/resourceGroups/{}/providers/Microsoft.Network/virtualNetworkGateways/{}/natRules/{}"}}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "array<@VpnNatRuleMapping_read>", "name": "externalMappings", "item": {"type": "@VpnNatRuleMapping_read"}}, {"type": "array", "name": "internalMappings", "item": {"type": "object", "props": [{"type": "string", "name": "addressSpace"}, {"type": "string", "name": "portRange"}], "cls": "VpnNatRuleMapping_read"}}, {"type": "string", "name": "ipConfigurationId"}, {"type": "string", "name": "mode", "enum": {"items": [{"value": "EgressSnat"}, {"value": "IngressSnat"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "type", "enum": {"items": [{"value": "Dynamic"}, {"value": "Static"}]}}], "clientFlatten": true}, {"readOnly": true, "type": "string", "name": "type"}]}}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "resiliencyModel", "enum": {"items": [{"value": "MultiHomed"}, {"value": "SingleHomed"}]}}, {"readOnly": true, "type": "string", "name": "resourceGuid"}, {"type": "object", "name": "sku", "props": [{"readOnly": true, "type": "integer32", "name": "capacity"}, {"type": "string", "name": "name", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}, {"type": "string", "name": "tier", "enum": {"items": [{"value": "Basic"}, {"value": "ErGw1AZ"}, {"value": "ErGw2AZ"}, {"value": "ErGw3AZ"}, {"value": "ErGwScale"}, {"value": "HighPerformance"}, {"value": "Standard"}, {"value": "UltraPerformance"}, {"value": "VpnGw1"}, {"value": "VpnGw1AZ"}, {"value": "VpnGw2"}, {"value": "VpnGw2AZ"}, {"value": "VpnGw3"}, {"value": "VpnGw3AZ"}, {"value": "VpnGw4"}, {"value": "VpnGw4AZ"}, {"value": "VpnGw5"}, {"value": "VpnGw5AZ"}]}}]}, {"type": "string", "name": "vNetExtendedLocationResourceId"}, {"type": "object", "name": "virtualNetworkGatewayMigrationStatus", "props": [{"type": "string", "name": "errorMessage"}, {"type": "string", "name": "phase", "enum": {"items": [{"value": "Abort"}, {"value": "AbortSucceeded"}, {"value": "Commit"}, {"value": "CommitSucceeded"}, {"value": "Execute"}, {"value": "ExecuteSucceeded"}, {"value": "None"}, {"value": "Prepare"}, {"value": "PrepareSucceeded"}]}}, {"type": "string", "name": "state", "enum": {"items": [{"value": "Failed"}, {"value": "InProgress"}, {"value": "None"}, {"value": "Succeeded"}]}}]}, {"type": "array", "name": "virtualNetworkGatewayPolicyGroups", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"type": "boolean", "name": "isDefault", "required": true}, {"type": "array", "name": "policyMembers", "required": true, "item": {"type": "object", "props": [{"type": "string", "name": "attributeType", "enum": {"items": [{"value": "AADGroupId"}, {"value": "CertificateGroupId"}, {"value": "RadiusAzureGroupId"}]}}, {"type": "string", "name": "attributeValue"}, {"type": "string", "name": "name"}]}}, {"type": "integer32", "name": "priority", "required": true}, {"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"readOnly": true, "type": "array<@SubResource_read>", "name": "vngClientConnectionConfigurations", "item": {"type": "@SubResource_read"}}], "clientFlatten": true}]}}, {"type": "object", "name": "vpnClientConfiguration", "props": [{"type": "string", "name": "aadAudience"}, {"type": "string", "name": "aadIssuer"}, {"type": "string", "name": "aadTenant"}, {"type": "string", "name": "radiusServerAddress"}, {"type": "string", "name": "radiusServerSecret", "secret": true}, {"type": "array", "name": "radiusServers", "item": {"type": "object", "props": [{"type": "string", "name": "radiusServerAddress", "required": true}, {"type": "integer64", "name": "radiusServerScore"}, {"type": "string", "name": "radiusServerSecret", "secret": true}]}}, {"type": "array", "name": "vngClientConnectionConfigurations", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "array<@SubResource_read>", "name": "virtualNetworkGatewayPolicyGroups", "required": true, "item": {"type": "@SubResource_read"}}, {"type": "@AddressSpace_read", "name": "vpnClientAddressPool", "required": true}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnAuthenticationTypes", "item": {"type": "string", "enum": {"items": [{"value": "AAD"}, {"value": "Certificate"}, {"value": "Radius"}]}}}, {"type": "object", "name": "vpnClientAddressPool", "props": [{"type": "array", "name": "addressPrefixes", "item": {"type": "string"}}, {"type": "array", "name": "ipamPoolPrefixAllocations", "item": {"type": "object", "props": [{"readOnly": true, "type": "array", "name": "allocatedAddressPrefixes", "item": {"type": "string"}}, {"type": "string", "name": "numberOfIpAddresses"}, {"type": "object", "name": "pool", "props": [{"type": "ResourceId", "name": "id"}], "clientFlatten": true}]}}], "cls": "AddressSpace_read"}, {"type": "array", "name": "vpnClientIpsecPolicies", "item": {"type": "object", "props": [{"type": "string", "name": "dhGroup", "required": true, "enum": {"items": [{"value": "DHGroup1"}, {"value": "DHGroup14"}, {"value": "DHGroup2"}, {"value": "DHGroup2048"}, {"value": "DHGroup24"}, {"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}]}}, {"type": "string", "name": "ikeEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES256"}]}}, {"type": "string", "name": "ikeIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}, {"value": "SHA384"}]}}, {"type": "string", "name": "ipsecEncryption", "required": true, "enum": {"items": [{"value": "AES128"}, {"value": "AES192"}, {"value": "AES256"}, {"value": "DES"}, {"value": "DES3"}, {"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "None"}]}}, {"type": "string", "name": "ipsecIntegrity", "required": true, "enum": {"items": [{"value": "GCMAES128"}, {"value": "GCMAES192"}, {"value": "GCMAES256"}, {"value": "MD5"}, {"value": "SHA1"}, {"value": "SHA256"}]}}, {"type": "string", "name": "pfsGroup", "required": true, "enum": {"items": [{"value": "ECP256"}, {"value": "ECP384"}, {"value": "None"}, {"value": "PFS1"}, {"value": "PFS14"}, {"value": "PFS2"}, {"value": "PFS2048"}, {"value": "PFS24"}, {"value": "PFSMM"}]}}, {"type": "integer32", "name": "saDataSizeKilobytes", "required": true}, {"type": "integer32", "name": "saLifeTimeSeconds", "required": true}]}}, {"type": "array", "name": "vpnClientProtocols", "item": {"type": "string", "enum": {"items": [{"value": "IkeV2"}, {"value": "OpenVPN"}, {"value": "SSTP"}]}}}, {"type": "array", "name": "vpnClientRevokedCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "thumbprint"}], "clientFlatten": true}]}}, {"type": "array", "name": "vpnClientRootCertificates", "item": {"type": "object", "props": [{"readOnly": true, "type": "string", "name": "etag"}, {"type": "string", "name": "id"}, {"type": "string", "name": "name"}, {"type": "object", "name": "properties", "required": true, "props": [{"readOnly": true, "type": "string", "name": "provisioningState", "enum": {"items": [{"value": "Deleting"}, {"value": "Failed"}, {"value": "Succeeded"}, {"value": "Updating"}]}}, {"type": "string", "name": "publicCertData", "required": true}], "clientFlatten": true}]}}]}, {"type": "string", "name": "vpnGatewayGeneration", "enum": {"items": [{"value": "Generation1"}, {"value": "Generation2"}, {"value": "None"}]}}, {"type": "string", "name": "vpnType", "enum": {"items": [{"value": "PolicyBased"}, {"value": "RouteBased"}]}}], "clientFlatten": true}, {"type": "object", "name": "tags", "additionalProps": {"item": {"type": "string"}}}, {"readOnly": true, "type": "string", "name": "type"}], "cls": "VirtualNetworkGateway_read"}}}}, {"isError": true, "body": {"json": {"schema": {"type": "@ODataV4Format"}}}}]}}], "outputs": [{"type": "object", "ref": "$Subresource", "clientFlatten": true}]}]}]}]} \ No newline at end of file diff --git a/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml new file mode 100644 index 000000000..b334a082e --- /dev/null +++ b/Resources/mgmt-plane/L3N1YnNjcmlwdGlvbnMve30vcmVzb3VyY2Vncm91cHMve30vcHJvdmlkZXJzL21pY3Jvc29mdC5uZXR3b3JrL3ZpcnR1YWxuZXR3b3JrZ2F0ZXdheXMve30=/2025-01-01.xml @@ -0,0 +1,5329 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +