swagger: "2.0"
schemes:
  - https
host: management.azure.com
info:
  description: The Microsoft Azure Network management API provides a RESTful set of web services that interact with Microsoft Azure Networks service to manage your network resources. The API has entities that capture the relationship between an end user and the Microsoft Azure Networks service.
  title: NetworkManagementClient
  version: 2019-07-01
  x-apisguru-categories:
    - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/network/resource-manager/Microsoft.Network/stable/2019-07-01/virtualNetworkGateway.json
      version: "2.0"
  x-preferred: true
  x-providerName: azure.com
  x-serviceName: network-virtualNetworkGateway
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: Azure Active Directory OAuth2 Flow.
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
paths:
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections":
    get:
      description: The List VirtualNetworkGatewayConnections operation retrieves all the virtual network gateways connections created.
      operationId: VirtualNetworkGatewayConnections_List
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation resets the virtual network gateway connection shared key.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnectionListResult"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        ListVirtualNetworkGatewayConnectionsinResourceGroup:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn1
                    location: centralus
                    name: conn1
                    properties:
                      connectionProtocol: IKEv1
                      connectionType: IPsec
                      egressBytesTransferred: 0
                      enableBgp: false
                      ingressBytesTransferred: 0
                      ipsecPolicies: []
                      localNetworkGateway2:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1
                        properties: {}
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                      routingWeight: 0
                      trafficSelectorPolicies: []
                      usePolicyBasedTrafficSelectors: false
                      virtualNetworkGateway1:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1
                        properties: {}
                    type: Microsoft.Network/connections
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/conn2
                    location: eastus
                    name: conn2
                    properties:
                      connectionProtocol: IKEv2
                      connectionType: IPsec
                      egressBytesTransferred: 0
                      enableBgp: false
                      ingressBytesTransferred: 0
                      ipsecPolicies: []
                      localNetworkGateway2:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2
                        properties: {}
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                      routingWeight: 0
                      trafficSelectorPolicies: []
                      usePolicyBasedTrafficSelectors: false
                      virtualNetworkGateway1:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2
                        properties: {}
                    type: Microsoft.Network/connections
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}":
    delete:
      description: Deletes the specified virtual network Gateway connection.
      operationId: VirtualNetworkGatewayConnections_Delete
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        DeleteVirtualNetworkGatewayConnection:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: conn1
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
    get:
      description: Gets the specified virtual network gateway connection by resource group.
      operationId: VirtualNetworkGatewayConnections_Get
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        GetVirtualNetworkGatewayConnection:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: connS2S
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S
                location: centralus
                name: connS2S
                properties:
                  connectionProtocol: IKEv2
                  connectionStatus: Connecting
                  connectionType: IPsec
                  egressBytesTransferred: 0
                  enableBgp: false
                  ingressBytesTransferred: 0
                  ipsecPolicies: []
                  localNetworkGateway2:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                    properties: {}
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  routingWeight: 0
                  sharedKey: Abc123
                  trafficSelectorPolicies: []
                  usePolicyBasedTrafficSelectors: false
                  virtualNetworkGateway1:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                    properties: {}
                type: Microsoft.Network/connections
    patch:
      description: Updates a virtual network gateway connection tags.
      operationId: VirtualNetworkGatewayConnections_UpdateTags
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Parameters supplied to update virtual network gateway connection tags.
          in: body
          name: parameters
          required: true
          schema:
            description: Tags object for patch operations.
            properties:
              tags:
                additionalProperties:
                  type: string
                description: Resource tags.
                type: object
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        UpdateVirtualNetworkGatewayConnectionTags:
          parameters:
            api-version: 2019-07-01
            parameters:
              tags:
                tag1: value1
                tag2: value2
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: test
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/test
                location: westus
                name: test
                properties:
                  connectionStatus: Unknown
                  connectionType: IPsec
                  egressBytesTransferred: 0
                  enableBgp: false
                  ingressBytesTransferred: 0
                  ipsecPolicies: []
                  localNetworkGateway2:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw
                    properties: {}
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  routingWeight: 0
                  sharedKey: temp1234
                  trafficSelectorPolicies: []
                  usePolicyBasedTrafficSelectors: false
                  virtualNetworkGateway1:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                    properties: {}
                tags:
                  tag1: value1
                  tag2: value2
                type: Microsoft.Network/connections
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
    put:
      description: Creates or updates a virtual network gateway connection in the specified resource group.
      operationId: VirtualNetworkGatewayConnections_CreateOrUpdate
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Parameters supplied to the create or update virtual network gateway connection operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
        "201":
          description: Create successful. The operation returns the resulting VirtualNetworkGatewayConnection resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        CreateVirtualNetworkGatewayConnection_S2S:
          parameters:
            api-version: 2019-07-01
            parameters:
              location: centralus
              properties:
                connectionProtocol: IKEv2
                connectionType: IPsec
                enableBgp: false
                ipsecPolicies: []
                localNetworkGateway2:
                  id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                  location: centralus
                  properties:
                    gatewayIpAddress: x.x.x.x
                    localNetworkAddressSpace:
                      addressPrefixes:
                        - 10.1.0.0/16
                  tags: {}
                routingWeight: 0
                sharedKey: Abc123
                trafficSelectorPolicies: []
                usePolicyBasedTrafficSelectors: false
                virtualNetworkGateway1:
                  id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                  location: centralus
                  properties:
                    activeActive: false
                    bgpSettings:
                      asn: 65514
                      bgpPeeringAddress: 10.0.1.30
                      peerWeight: 0
                    enableBgp: false
                    gatewayType: Vpn
                    ipConfigurations:
                      - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1
                        name: gwipconfig1
                        properties:
                          privateIPAllocationMethod: Dynamic
                          publicIPAddress:
                            id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                          subnet:
                            id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                    sku:
                      capacity: 2
                      name: VpnGw1
                      tier: VpnGw1
                    vpnType: RouteBased
                  tags: {}
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: connS2S
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S
                location: centralus
                name: connS2S
                properties:
                  connectionProtocol: IKEv2
                  connectionType: IPsec
                  egressBytesTransferred: 0
                  enableBgp: false
                  ingressBytesTransferred: 0
                  ipsecPolicies: []
                  localNetworkGateway2:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                    properties: {}
                  provisioningState: Updating
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  routingWeight: 0
                  sharedKey: Abc123
                  usePolicyBasedTrafficSelectors: false
                  virtualNetworkGateway1:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                    properties: {}
                type: Microsoft.Network/connections
            "201":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/connections/connS2S
                location: centralus
                name: connS2S
                properties:
                  connectionProtocol: IKEv2
                  connectionType: IPsec
                  egressBytesTransferred: 0
                  enableBgp: false
                  ingressBytesTransferred: 0
                  ipsecPolicies: []
                  localNetworkGateway2:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                    properties: {}
                  provisioningState: Updating
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  routingWeight: 0
                  sharedKey: Abc123
                  usePolicyBasedTrafficSelectors: false
                  virtualNetworkGateway1:
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                    properties: {}
                type: Microsoft.Network/connections
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey":
    get:
      description: The Get VirtualNetworkGatewayConnectionSharedKey operation retrieves information about the specified virtual network gateway connection shared key through Network resource provider.
      operationId: VirtualNetworkGatewayConnections_GetSharedKey
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The virtual network gateway connection shared key name.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns a list of VirtualNetworkGatewayConnection resources.
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        GetVirtualNetworkGatewayConnectionSharedKey:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: connS2S
          responses:
            "200":
              body:
                value: AzureAbc123
    put:
      description: The Put VirtualNetworkGatewayConnectionSharedKey operation sets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.
      operationId: VirtualNetworkGatewayConnections_SetSharedKey
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The virtual network gateway connection name.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Parameters supplied to the Begin Set Virtual Network Gateway connection Shared key operation throughNetwork resource provider.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns the resulting ConnectionSharedKey resource.
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
        "201":
          description: Request successful. The operation returns the resulting ConnectionSharedKey resource.
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        SetVirtualNetworkGatewayConnectionSharedKey:
          parameters:
            api-version: 2019-07-01
            parameters:
              value: AzureAbc123
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: connS2S
          responses:
            "200":
              body:
                value: AzureAbc123
            "201":
              body:
                value: AzureAbc123
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/sharedkey/reset":
    post:
      description: The VirtualNetworkGatewayConnectionResetSharedKey operation resets the virtual network gateway connection shared key for passed virtual network gateway connection in the specified resource group through Network resource provider.
      operationId: VirtualNetworkGatewayConnections_ResetSharedKey
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The virtual network gateway connection reset shared key Name.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Parameters supplied to the begin reset virtual network gateway connection shared key operation through network resource provider.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/ConnectionResetSharedKey"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation sets the virtual network gateway connection shared key.
          schema:
            $ref: "#/definitions/ConnectionResetSharedKey"
        "202":
          description: Request successful. The operation sets the virtual network gateway connection shared key.
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        ResetVirtualNetworkGatewayConnectionSharedKey:
          parameters:
            api-version: 2019-07-01
            parameters:
              keyLength: 128
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: conn1
          responses:
            "200":
              body:
                keyLength: 128
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/startPacketCapture":
    post:
      description: Starts packet capture on virtual network gateway connection in the specified resource group.
      operationId: VirtualNetworkGatewayConnections_StartPacketCapture
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Virtual network gateway packet capture parameters supplied to start packet capture on gateway connection.
          in: body
          name: parameters
          required: false
          schema:
            $ref: "#/definitions/VpnPacketCaptureStartParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation packet capture started on virtual network gateway connection.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Common error representation.
            properties:
              code:
                description: Error code.
                type: string
              details:
                description: Error details.
                items:
                  description: Common error details representation.
                  properties:
                    code:
                      description: Error code.
                      type: string
                    message:
                      description: Error message.
                      type: string
                    target:
                      description: Error target.
                      type: string
                type: array
              innerError:
                description: Inner error message.
                type: string
              message:
                description: Error message.
                type: string
              target:
                description: Error target.
                type: string
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        Start packet capture on virtual network gateway connection with filter:
          parameters:
            api-version: 2019-07-01
            parameters:
              filterData: "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}"
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: vpngwcn1
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
        Start packet capture on virtual network gateway connection without filter:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: vpngwcn1
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/stopPacketCapture":
    post:
      description: Stops packet capture on virtual network gateway connection in the specified resource group.
      operationId: VirtualNetworkGatewayConnections_StopPacketCapture
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway Connection.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Virtual network gateway packet capture parameters supplied to stop packet capture on gateway connection.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VpnPacketCaptureStopParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation packet capture stopped on virtual network gateway connection.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Common error representation.
            properties:
              code:
                description: Error code.
                type: string
              details:
                description: Error details.
                items:
                  description: Common error details representation.
                  properties:
                    code:
                      description: Error code.
                      type: string
                    message:
                      description: Error message.
                      type: string
                    target:
                      description: Error target.
                      type: string
                type: array
              innerError:
                description: Inner error message.
                type: string
              message:
                description: Error message.
                type: string
              target:
                description: Error target.
                type: string
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-examples:
        Stop packet capture on virtual network gateway connection:
          parameters:
            api-version: 2019-07-01
            parameters:
              sasUrl: https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: vpngwcn1
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/connections/{virtualNetworkGatewayConnectionName}/vpndeviceconfigurationscript":
    post:
      description: Gets a xml format representation for vpn device configuration script.
      operationId: VirtualNetworkGateways_VpnDeviceConfigurationScript
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway connection for which the configuration script is generated.
          in: path
          name: virtualNetworkGatewayConnectionName
          required: true
          type: string
        - description: Parameters supplied to the generate vpn device script operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VpnDeviceScriptParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Xml format representation for vpn device configuration script.
          schema:
            type: string
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVPNDeviceConfigurationScript:
          parameters:
            api-version: 2019-07-01
            parameters:
              deviceFamily: ISR
              firmwareVersion: IOS 15.1 (Preview)
              vendor: Cisco
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayConnectionName: vpngw
          responses:
            "200":
              body: "! Microsoft Corporation\r

                ! ---------------------------------------------------------------------------------------------------------------------\r

                ! Sample VPN tunnel configuration template for IOS-based devices\r

                !\r

                ! This configuration template applies to Cisco VPN devices running IOS 15.1 or beyond (ISR or ASR)\r

                !\r

                \r

                \r

                \t\t\r

                \r

                ! ---------------------------------------------------------------------------------------------------------------------\r

                ! ACL rules\r

                !\r

                ! Some VPN devices require explicit ACL rules to allow cross-premises traffic:\r

                !\r

                ! 1. Allow traffic between on premises address ranges and VNet address ranges\r

                ! 2. Allow IKE traffic (UDP:500) between on premises VPN devices and Azure VPN gateway\r

                ! 3. Allow IPsec traffic (Proto:ESP) between on premises VPN devices and Azure VPN gateway\r

                !\r

                \t\t\r

                access-list 101 permit ip 10.1.0.0 0.0.255.255 10.0.0.0 0.0.255.255\r

                \r

                ! ---------------------------------------------------------------------------------------------------------------------\r

                ! Internet Key Exchange (IKE) configuration\r

                !\r

                ! This section specifies the authentication, encryption, hashing, and Diffie-Hellman group parameters for IKE\r

                ! main mode or phase 1\r

                !\r

                \r

                crypto ikev2 proposal SwaggerS2S-proposal\r

                \  encryption DES3\r

                \  integrity  SHA384\r

                \  group      DHGroup24\r

                \  lifetime   3600\r

                \ exit\r

                \r

                crypto ikev2 policy SwaggerS2S-policy\r

                \  proposal SwaggerS2S-proposal\r

                \  exit\r

                \r

                crypto ikev2 keyring SwaggerBranch-keyring\r

                \t\t\r

                \t\tpeer 52.173.199.254\r

                \t\taddress        52.173.199.254\r

                \t\tpre-shared-key lALEHuppeopJmA94exRNiRr2QzuZ6lOsvzu5IlJUEA6LthbTc8g5MTT86MCsGNMzGkTAaLuLnEJoD1Cn4cIlr94qKZm9drsgllzWvsPNezS71stAkaW1Bb7h6GBnDlDP\r

                \  exit\r

                \r

                crypto ikev2 profile  SwaggerS2S-profile\r

                \  match address  local 10.3.0.0\r

                \tmatch identity remote address 52.173.199.254 255.255.255.255\r

                \t\t\r

                \  authentication remote pre-share\r

                \  authentication local  pre-share\r

                \  keyring        SwaggerBranch-keyring\r

                \  exit\r

                \r

                ! ---------------------------------------------------------------------------------------------------------------------\r

                ! IPsec configuration\r

                !\r

                ! This section specifies encryption, authentication, tunnel mode properties for the Phase 2 negotiation\r

                !\r

                crypto ipsec transform-set SwaggerS2S-TransformSet DES3 DES3\r

                \ mode  tunnel\r

                \ exit\r

                \r

                ! ---------------------------------------------------------------------------------------------------------------------\r

                ! Crypto map configuration\r

                !\r

                ! This section defines a crypto profile that binds the cross-premises network traffic to the IPsec and IKE\r

                ! policy profiles for this connection. Then defines the VTI (virtual tunnel interface) with the crypto\r

                ! profile. A random interface number (tunnel 1) was used with a random link local address (169.254.0.1/28)\r

                ! for the tunnel interface. If either selection is already used in the VPN device, please select another\r

                ! interface number or address.  The only requirement is that they must not overlap with another interface\r

                ! on the same VPN device.\r

                !\r

                crypto ipsec profile SwaggerS2S-IPsecProfile\r

                \  set transform-set  SwaggerS2S-TransformSet\r

                \  set ikev2-profile  SwaggerS2S-profile\r

                \  set pfs            None\r

                \  set security-association lifetime 3600\r

                \ exit\r

                \r

                \r

                int tunnel 52.173.199.254\r

                \  ip address 169.254.0.1 255.255.255.252\r

                \  ip tcp adjust-mss 1350\r

                \  tunnel source 10.3.0.0\r

                \  tunnel mode ipsec ipv4\r

                \  tunnel destination 52.173.199.254\r

                \  tunnel protection ipsec profile SwaggerS2S-IPsecProfile\r

                \  exit\r

                \r

                \tip route 10.0.0.0 255.255.0.0 tunnel 52.173.199.254 "
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways":
    get:
      description: Gets all the local network gateways in a resource group.
      operationId: LocalNetworkGateways_List
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns a list of LocalNetworkGateway resources.
          schema:
            $ref: "#/definitions/LocalNetworkGatewayListResult"
      tags:
        - LocalNetworkGateways
      x-ms-examples:
        ListLocalNetworkGateways:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw1
                    location: centralus
                    name: localgw1
                    properties:
                      gatewayIpAddress: x.x.x.x
                      localNetworkAddressSpace:
                        addressPrefixes:
                          - 10.1.0.0/16
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                    type: Microsoft.Network/localNetworkGateways
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw2
                    location: eastus
                    name: localgw2
                    properties:
                      gatewayIpAddress: x.x.x.x
                      localNetworkAddressSpace:
                        addressPrefixes:
                          - 10.2.0.0/16
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                    type: Microsoft.Network/localNetworkGateways
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/localNetworkGateways/{localNetworkGatewayName}":
    delete:
      description: Deletes the specified local network gateway.
      operationId: LocalNetworkGateways_Delete
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the local network gateway.
          in: path
          minLength: 1
          name: localNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - LocalNetworkGateways
      x-ms-examples:
        DeleteLocalNetworkGateway:
          parameters:
            api-version: 2019-07-01
            localNetworkGatewayName: localgw
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
    get:
      description: Gets the specified local network gateway in a resource group.
      operationId: LocalNetworkGateways_Get
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the local network gateway.
          in: path
          minLength: 1
          name: localNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns the resulting LocalNetworkGateway resource.
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
      tags:
        - LocalNetworkGateways
      x-ms-examples:
        GetLocalNetworkGateway:
          parameters:
            api-version: 2019-07-01
            localNetworkGatewayName: localgw
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                location: centralus
                name: localgw
                properties:
                  gatewayIpAddress: x.x.x.x
                  localNetworkAddressSpace:
                    addressPrefixes:
                      - 10.1.0.0/16
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                type: Microsoft.Network/localNetworkGateways
    patch:
      description: Updates a local network gateway tags.
      operationId: LocalNetworkGateways_UpdateTags
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the local network gateway.
          in: path
          minLength: 1
          name: localNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to update local network gateway tags.
          in: body
          name: parameters
          required: true
          schema:
            description: Tags object for patch operations.
            properties:
              tags:
                additionalProperties:
                  type: string
                description: Resource tags.
                type: object
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting LocalNetworkGateway resource.
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
      tags:
        - LocalNetworkGateways
      x-ms-examples:
        UpdateLocalNetworkGatewayTags:
          parameters:
            api-version: 2019-07-01
            localNetworkGatewayName: lgw
            parameters:
              tags:
                tag1: value1
                tag2: value2
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/lgw
                location: westus
                name: lgw
                properties:
                  gatewayIpAddress: 12.0.0.1
                  localNetworkAddressSpace:
                    addressPrefixes:
                      - 12.0.0.0/8
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                tags:
                  tag1: value1
                  tag2: value2
                type: Microsoft.Network/localNetworkGateways
      x-ms-long-running-operation: true
    put:
      description: Creates or updates a local network gateway in the specified resource group.
      operationId: LocalNetworkGateways_CreateOrUpdate
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the local network gateway.
          in: path
          minLength: 1
          name: localNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to the create or update local network gateway operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting LocalNetworkGateway resource.
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
        "201":
          description: Create successful. The operation returns the resulting LocalNetworkGateway resource.
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
      tags:
        - LocalNetworkGateways
      x-ms-examples:
        CreateLocalNetworkGateway:
          parameters:
            api-version: 2019-07-01
            localNetworkGatewayName: localgw
            parameters:
              location: Central US
              properties:
                gatewayIpAddress: 11.12.13.14
                localNetworkAddressSpace:
                  addressPrefixes:
                    - 10.1.0.0/16
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                location: centralus
                name: localgw
                properties:
                  gatewayIpAddress: 11.12.13.14
                  localNetworkAddressSpace:
                    addressPrefixes:
                      - 10.1.0.0/16
                  provisioningState: Updating
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                type: Microsoft.Network/localNetworkGateways
            "201":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/localNetworkGateways/localgw
                location: centralus
                name: localgw
                properties:
                  gatewayIpAddress: 11.12.13.14
                  localNetworkAddressSpace:
                    addressPrefixes:
                      - 10.1.0.0/16
                  provisioningState: Updating
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                type: Microsoft.Network/localNetworkGateways
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways":
    get:
      description: Gets all virtual network gateways by resource group.
      operationId: VirtualNetworkGateways_List
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns a list of VirtualNetworkGateway resources.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayListResult"
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        ListVirtualNetworkGatewaysinResourceGroup:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1
                    location: loc1
                    name: vpngw1
                    properties:
                      activeActive: false
                      bgpSettings:
                        asn: 65515
                        bgpPeeringAddress: 10.0.0.14
                        peerWeight: 0
                      customRoutes:
                        addressPrefixes:
                          - 101.168.0.6/32
                      enableBgp: false
                      gatewayType: Vpn
                      ipConfigurations:
                        - etag: W/"00000000-0000-0000-0000-000000000000"
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw1/ipConfigurations/default
                          name: default
                          properties:
                            privateIPAllocationMethod: Dynamic
                            provisioningState: Succeeded
                            publicIPAddress:
                              id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw1-ip
                            subnet:
                              id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                      sku:
                        capacity: 2
                        name: VpnGw1
                        tier: VpnGw1
                      vpnClientConfiguration:
                        vpnClientProtocols: []
                        vpnClientRevokedCertificates: []
                        vpnClientRootCertificates: []
                      vpnGatewayGeneration: None
                      vpnType: RouteBased
                    type: Microsoft.Network/virtualNetworkGateways
                  - etag: W/"00000000-0000-0000-0000-000000000000"
                    id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2
                    location: loc2
                    name: vpngw2
                    properties:
                      activeActive: false
                      bgpSettings:
                        asn: 65515
                        bgpPeeringAddress: 10.1.0.46
                        peerWeight: 0
                      customRoutes:
                        addressPrefixes:
                          - 101.168.0.6/32
                      enableBgp: false
                      gatewayType: Vpn
                      ipConfigurations:
                        - etag: W/"00000000-0000-0000-0000-000000000000"
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw2/ipConfigurations/default
                          name: default
                          properties:
                            privateIPAllocationMethod: Dynamic
                            provisioningState: Succeeded
                            publicIPAddress:
                              id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/vpngw2-ip
                            subnet:
                              id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                      sku:
                        capacity: 2
                        name: VpnGw1
                        tier: VpnGw1
                      vpnClientConfiguration:
                        aadAudience: fd11706c-e78c-4828-8be7-ac7dcefd4b17
                        aadIssuer: https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/
                        aadTenant: https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1
                        vpnClientProtocols:
                          - OpenVPN
                        vpnClientRevokedCertificates: []
                        vpnClientRootCertificates: []
                      vpnGatewayGeneration: None
                      vpnType: RouteBased
                    type: Microsoft.Network/virtualNetworkGateways
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}":
    delete:
      description: Deletes the specified virtual network gateway.
      operationId: VirtualNetworkGateways_Delete
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        DeleteVirtualNetworkGateway:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200": {}
            "202": {}
            "204": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
    get:
      description: Gets the specified virtual network gateway by resource group.
      operationId: VirtualNetworkGateways_Get
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns a VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGateway:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                location: centralus
                name: vpngw
                properties:
                  activeActive: false
                  bgpSettings:
                    asn: 65514
                    bgpPeeringAddress: 10.0.1.30
                    peerWeight: 0
                  customRoutes:
                    addressPrefixes:
                      - 101.168.0.6/32
                  enableBgp: false
                  gatewayType: Vpn
                  ipConfigurations:
                    - etag: W/"00000000-0000-0000-0000-000000000000"
                      id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1
                      name: gwipconfig1
                      properties:
                        privateIPAllocationMethod: Dynamic
                        provisioningState: Succeeded
                        publicIPAddress:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                        subnet:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  sku:
                    capacity: 0
                    name: VpnGw1
                    tier: VpnGw1
                  vpnClientConfiguration:
                    aadAudience: fd11706c-e78c-4828-8be7-ac7dcefd4b17
                    aadIssuer: https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/
                    aadTenant: https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1
                    vpnClientProtocols:
                      - OpenVPN
                    vpnClientRevokedCertificates: []
                    vpnClientRootCertificates: []
                  vpnGatewayGeneration: None
                  vpnType: RouteBased
                type: Microsoft.Network/virtualNetworkGateways
    patch:
      description: Updates a virtual network gateway tags.
      operationId: VirtualNetworkGateways_UpdateTags
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to update virtual network gateway tags.
          in: body
          name: parameters
          required: true
          schema:
            description: Tags object for patch operations.
            properties:
              tags:
                additionalProperties:
                  type: string
                description: Resource tags.
                type: object
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        UpdateVirtualNetworkGatewayTags:
          parameters:
            api-version: 2019-07-01
            parameters:
              tags:
                tag1: value1
                tag2: value2
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body:
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                location: westus
                name: vpngw
                properties:
                  activeActive: false
                  bgpSettings:
                    asn: 65515
                    bgpPeeringAddress: 10.0.0.254
                    peerWeight: 0
                  customRoutes:
                    addressPrefixes:
                      - 101.168.0.6/32
                  enableBgp: false
                  gatewayType: Vpn
                  ipConfigurations:
                    - id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/default
                      name: default
                      properties:
                        privateIPAllocationMethod: Dynamic
                        provisioningState: Succeeded
                        publicIPAddress:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/testpub1
                        subnet:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet2/subnets/GatewaySubnet
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  sku:
                    capacity: 2
                    name: VpnGw1
                    tier: VpnGw1
                  vpnGatewayGeneration: None
                  vpnType: RouteBased
                tags:
                  tag1: value1
                  tag2: value2
                type: Microsoft.Network/virtualNetworkGateways
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
    put:
      description: Creates or updates a virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_CreateOrUpdate
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to create or update virtual network gateway operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Update successful. The operation returns the resulting VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
        "201":
          description: Create successful. The operation returns the resulting VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        UpdateVirtualNetworkGateway:
          parameters:
            api-version: 2019-07-01
            parameters:
              location: centralus
              properties:
                activeActive: false
                bgpSettings:
                  asn: 65515
                  bgpPeeringAddress: 10.0.1.30
                  peerWeight: 0
                customRoutes:
                  addressPrefixes:
                    - 101.168.0.6/32
                enableBgp: false
                gatewayType: Vpn
                ipConfigurations:
                  - name: gwipconfig1
                    properties:
                      privateIPAllocationMethod: Dynamic
                      publicIPAddress:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                      subnet:
                        id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                sku:
                  name: VpnGw1
                  tier: VpnGw1
                vpnType: RouteBased
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                location: centralus
                name: vpngw
                properties:
                  activeActive: false
                  bgpSettings:
                    asn: 65515
                    bgpPeeringAddress: 10.0.1.30
                    peerWeight: 0
                  customRoutes:
                    addressPrefixes:
                      - 101.168.0.6/32
                  enableBgp: false
                  gatewayType: Vpn
                  ipConfigurations:
                    - etag: W/"00000000-0000-0000-0000-000000000000"
                      id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1
                      name: gwipconfig1
                      properties:
                        privateIPAllocationMethod: Dynamic
                        provisioningState: Succeeded
                        publicIPAddress:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                        subnet:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  sku:
                    capacity: 0
                    name: VpnGw1
                    tier: VpnGw1
                  vpnClientConfiguration:
                    aadAudience: ""
                    aadIssuer: ""
                    aadTenant: ""
                    vpnClientProtocols:
                      - OpenVPN
                    vpnClientRevokedCertificates: []
                    vpnClientRootCertificates: []
                  vpnGatewayGeneration: None
                  vpnType: RouteBased
                type: Microsoft.Network/virtualNetworkGateways
            "201":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                location: centralus
                name: vpngw
                properties:
                  activeActive: false
                  bgpSettings:
                    asn: 65515
                    bgpPeeringAddress: 10.0.1.30
                    peerWeight: 0
                  customRoutes:
                    addressPrefixes:
                      - 101.168.0.6/32
                  enableBgp: false
                  gatewayType: Vpn
                  ipConfigurations:
                    - etag: W/"00000000-0000-0000-0000-000000000000"
                      id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1
                      name: gwipconfig1
                      properties:
                        privateIPAllocationMethod: Dynamic
                        provisioningState: Succeeded
                        publicIPAddress:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                        subnet:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  sku:
                    capacity: 0
                    name: VpnGw1
                    tier: VpnGw1
                  vpnClientConfiguration:
                    aadAudience: fd11706c-e78c-4828-8be7-ac7dcefd4b17
                    aadIssuer: https://sts.windows.net/99163270-c9ab-4279-bb12-5353ed9bf6e1/
                    aadTenant: https://login.microsoftonline.com/99163270-c9ab-4279-bb12-5353ed9bf6e1
                    vpnClientProtocols:
                      - OpenVPN
                    vpnClientRevokedCertificates: []
                    vpnClientRootCertificates: []
                  vpnType: RouteBased
                type: Microsoft.Network/virtualNetworkGateways
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: azure-async-operation
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/connections":
    get:
      description: Gets all the connections in a virtual network gateway.
      operationId: VirtualNetworkGateways_ListConnections
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns a list of VirtualNetworkGatewayConnection resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayListConnectionsResult"
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        VirtualNetworkGatewaysListConnections:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: testrg
            subscriptionId: subid
            virtualNetworkGatewayName: test-vpn-gateway-1
          responses:
            "200":
              body:
                value:
                  - etag: W/\"00000000-0000-0000-0000-000000000000\"
                    id: /subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/connections/test-vpn-connection
                    location: eastus
                    name: test-vpn-connection
                    properties:
                      connectionType: Vnet2Vnet
                      egressBytesTransferred: 0
                      enableBgp: true
                      ingressBytesTransferred: 0
                      ipsecPolicies: []
                      provisioningState: Succeeded
                      resourceGuid: 00000000-0000-0000-0000-000000000000
                      routingWeight: 22
                      trafficSelectorPolicies: []
                      usePolicyBasedTrafficSelectors: false
                      virtualNetworkGateway1:
                        id: /subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-1
                      virtualNetworkGateway2:
                        id: /subscriptions/subid/resourceGroups/testrg-2/providers/Microsoft.Network/virtualNetworkGateways/test-vpn-gateway-2
                    type: Microsoft.Network/connections
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnclientpackage":
    post:
      description: Generates VPN client package for P2S client of the virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_Generatevpnclientpackage
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to the generate virtual network gateway VPN client package operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VpnClientParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: VPN client package URL.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GenerateVPNClientPackage:
          parameters:
            api-version: 2019-07-01
            parameters: {}
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: ""
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/generatevpnprofile":
    post:
      description: Generates VPN profile for P2S client of the virtual network gateway in the specified resource group. Used for IKEV2 and radius based authentication.
      operationId: VirtualNetworkGateways_GenerateVpnProfile
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to the generate virtual network gateway VPN client package operation.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VpnClientParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: VPN profile package URL.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GenerateVirtualNetworkGatewayVPNProfile:
          parameters:
            api-version: 2019-07-01
            parameters: {}
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: ""
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getAdvertisedRoutes":
    post:
      description: This operation retrieves a list of routes the virtual network gateway is advertising to the specified peer.
      operationId: VirtualNetworkGateways_GetAdvertisedRoutes
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: The IP address of the peer.
          in: query
          name: peer
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: List of learned BGP routes.
          schema:
            $ref: "#/definitions/GatewayRouteListResult"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGatewayAdvertisedRoutes:
          parameters:
            api-version: 2019-07-01
            peer: test
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: {}
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getBgpPeerStatus":
    post:
      description: The GetBgpPeerStatus operation retrieves the status of all BGP peers.
      operationId: VirtualNetworkGateways_GetBgpPeerStatus
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: The IP address of the peer to retrieve the status of.
          in: query
          name: peer
          required: false
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: List of BGP peer statuses.
          schema:
            $ref: "#/definitions/BgpPeerStatusListResult"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGatewayBGPPeerStatus:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: {}
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getLearnedRoutes":
    post:
      description: This operation retrieves a list of routes the virtual network gateway has learned, including routes learned from BGP peers.
      operationId: VirtualNetworkGateways_GetLearnedRoutes
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: List of advertised BGP routes.
          schema:
            $ref: "#/definitions/GatewayRouteListResult"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGatewayLearnedRoutes:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: {}
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getVpnClientConnectionHealth":
    post:
      description: Get VPN client connection health detail per P2S client connection of the virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_GetVpnclientConnectionHealth
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: List of VPN client connection health details.
          schema:
            $ref: "#/definitions/VpnClientConnectionHealthDetailListResult"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGatewayVpnclientConnectionHealth:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: p2s-vnet-test
            subscriptionId: subid
            virtualNetworkGatewayName: vpnp2sgw
          responses:
            "200":
              body:
                value:
                  - egressBytesTransferred: 33420
                    egressPacketsTransferred: 557
                    ingressBytesTransferred: 33420
                    ingressPacketsTransferred: 557
                    maxBandwidth: 240000000
                    maxPacketsPerSecond: 4
                    privateIpAddress: 192.168.210.2
                    publicIpAddress: 167.220.2.232:45522
                    vpnConnectionDuration: 900
                    vpnConnectionId: IKEv2_1e1cfe59-5c7c-4315-a876-b11fbfdfeed4
                    vpnConnectionTime: 2019-05-02T22:26:22
                    vpnUserName: gwp2schildcert
                  - egressBytesTransferred: 23420
                    egressPacketsTransferred: 357
                    ingressBytesTransferred: 23420
                    ingressPacketsTransferred: 357
                    maxBandwidth: 220000000
                    maxPacketsPerSecond: 4
                    privateIpAddress: 192.168.210.1
                    publicIpAddress: 167.220.2.232:45213
                    vpnConnectionDuration: 800
                    vpnConnectionId: IKEv2_571cfe59-2c7d-1415-e813-c51fbfdfea16
                    vpnConnectionTime: 2019-05-01T21:06:12
                    vpnUserName: gwp2schildcert
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnclientipsecparameters":
    post:
      description: The Get VpnclientIpsecParameters operation retrieves information about the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.
      operationId: VirtualNetworkGateways_GetVpnclientIpsecParameters
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The virtual network gateway name.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation returns the set vpnclient ipsec parameters for P2S client of VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VpnClientIPsecParameters"
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        Get VirtualNetworkGateway VpnClientIpsecParameters:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body:
                dhGroup: DHGroup2
                ikeEncryption: AES256
                ikeIntegrity: SHA384
                ipsecEncryption: AES256
                ipsecIntegrity: SHA256
                pfsGroup: PFS2
                saDataSizeKilobytes: 429497
                saLifeTimeSeconds: 86473
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/getvpnprofilepackageurl":
    post:
      description: Gets pre-generated VPN profile for P2S client of the virtual network gateway in the specified resource group. The profile needs to be generated first using generateVpnProfile.
      operationId: VirtualNetworkGateways_GetVpnProfilePackageUrl
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: VPN profile package URL.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        GetVirtualNetworkGatewayVPNProfilePackageURL:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: ""
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/reset":
    post:
      description: Resets the primary of the virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_Reset
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Virtual network gateway vip address supplied to the begin reset of the active-active feature enabled gateway.
          in: query
          name: gatewayVip
          required: false
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation reset the primary of the virtual network gateway.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        ResetVirtualNetworkGateway:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body:
                etag: W/"00000000-0000-0000-0000-000000000000"
                id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw
                location: centralus
                name: vpngw
                properties:
                  activeActive: false
                  bgpSettings:
                    asn: 65514
                    bgpPeeringAddress: 10.0.1.30
                    peerWeight: 0
                  customRoutes:
                    addressPrefixes:
                      - 101.168.0.6/32
                  enableBgp: false
                  gatewayType: Vpn
                  ipConfigurations:
                    - etag: W/"00000000-0000-0000-0000-000000000000"
                      id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworkGateways/vpngw/ipConfigurations/gwipconfig1
                      name: gwipconfig1
                      properties:
                        privateIPAllocationMethod: Dynamic
                        provisioningState: Succeeded
                        publicIPAddress:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/publicIPAddresses/gwpip
                        subnet:
                          id: /subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnet1/subnets/GatewaySubnet
                  provisioningState: Succeeded
                  resourceGuid: 00000000-0000-0000-0000-000000000000
                  sku:
                    capacity: 0
                    name: VpnGw1
                    tier: VpnGw1
                  vpnType: RouteBased
                type: Microsoft.Network/virtualNetworkGateways
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/resetvpnclientsharedkey":
    post:
      description: Resets the VPN client shared key of the virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_ResetVpnClientSharedKey
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation reset the vpn client shared key of the virtual network gateway.
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        ResetVpnClientSharedKey:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/setvpnclientipsecparameters":
    post:
      description: The Set VpnclientIpsecParameters operation sets the vpnclient ipsec policy for P2S client of virtual network gateway in the specified resource group through Network resource provider.
      operationId: VirtualNetworkGateways_SetVpnclientIpsecParameters
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Parameters supplied to the Begin Set vpnclient ipsec parameters of Virtual Network Gateway P2S client operation through Network resource provider.
          in: body
          name: vpnclientIpsecParams
          required: true
          schema:
            $ref: "#/definitions/VpnClientIPsecParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation sets the specified vpnclient ipsec parameters for P2S client of the virtual network gateway.
          schema:
            $ref: "#/definitions/VpnClientIPsecParameters"
        "202":
          description: Accepted and the operation will complete asynchronously.
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        Set VirtualNetworkGateway VpnClientIpsecParameters:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
            vpnclientIpsecParams:
              dhGroup: DHGroup2
              ikeEncryption: AES256
              ikeIntegrity: SHA384
              ipsecEncryption: AES256
              ipsecIntegrity: SHA256
              pfsGroup: PFS2
              saDataSizeKilobytes: 429497
              saLifeTimeSeconds: 86473
          responses:
            "200":
              body: ""
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/startPacketCapture":
    post:
      description: Starts packet capture on virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_StartPacketCapture
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Virtual network gateway packet capture parameters supplied to start packet capture on gateway.
          in: body
          name: parameters
          required: false
          schema:
            $ref: "#/definitions/VpnPacketCaptureStartParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation packet capture started on virtual network gateway.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Common error representation.
            properties:
              code:
                description: Error code.
                type: string
              details:
                description: Error details.
                items:
                  description: Common error details representation.
                  properties:
                    code:
                      description: Error code.
                      type: string
                    message:
                      description: Error message.
                      type: string
                    target:
                      description: Error target.
                      type: string
                type: array
              innerError:
                description: Inner error message.
                type: string
              message:
                description: Error message.
                type: string
              target:
                description: Error target.
                type: string
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        Start packet capture on virtual network gateway with filter:
          parameters:
            api-version: 2019-07-01
            parameters:
              filterData: "{'TracingFlags': 11,'MaxPacketBufferSize': 120,'MaxFileSize': 200,'Filters': [{'SourceSubnets': ['20.1.1.0/24'],'DestinationSubnets': ['10.1.1.0/24'],'SourcePort': [500],'DestinationPort': [4500],'Protocol': null,'IpSubnetValueAsAny': true,'TcpFlags': 16,'PortValueAsAny': true}]}"
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
        Start packet capture on virtual network gateway without filter:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/stopPacketCapture":
    post:
      description: Stops packet capture on virtual network gateway in the specified resource group.
      operationId: VirtualNetworkGateways_StopPacketCapture
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Virtual network gateway packet capture parameters supplied to stop packet capture on gateway.
          in: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VpnPacketCaptureStopParameters"
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Request successful. The operation packet capture stopped on virtual network gateway.
          schema:
            type: string
        "202":
          description: Accepted and the operation will complete asynchronously.
        default:
          description: Error response describing why the operation failed.
          schema:
            description: Common error representation.
            properties:
              code:
                description: Error code.
                type: string
              details:
                description: Error details.
                items:
                  description: Common error details representation.
                  properties:
                    code:
                      description: Error code.
                      type: string
                    message:
                      description: Error message.
                      type: string
                    target:
                      description: Error target.
                      type: string
                type: array
              innerError:
                description: Inner error message.
                type: string
              message:
                description: Error message.
                type: string
              target:
                description: Error target.
                type: string
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        Stop packet capture on virtual network gateway:
          parameters:
            api-version: 2019-07-01
            parameters:
              sasUrl: https://teststorage.blob.core.windows.net/?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-09-13T07:44:05Z&st=2019-09-06T23:44:05Z&spr=https&sig=V1h9D1riltvZMI69d6ihENnFo%2FrCvTqGgjO2lf%2FVBhE%3D
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: '"{"Status":"Successful","Data":null}"'
            "202": {}
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworkGateways/{virtualNetworkGatewayName}/supportedvpndevices":
    post:
      description: Gets a xml format representation for supported vpn devices.
      operationId: VirtualNetworkGateways_SupportedVpnDevices
      parameters:
        - description: The name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
        - description: The name of the virtual network gateway.
          in: path
          name: virtualNetworkGatewayName
          required: true
          type: string
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
        - description: The subscription credentials which uniquely identify the Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
      responses:
        "200":
          description: Xml format representation for supported vpn devices.
          schema:
            type: string
      tags:
        - VirtualNetworkGateways
      x-ms-examples:
        ListVirtualNetworkGatewaySupportedVPNDevices:
          parameters:
            api-version: 2019-07-01
            resourceGroupName: rg1
            subscriptionId: subid
            virtualNetworkGatewayName: vpngw
          responses:
            "200":
              body: <?xml version="1.0" encoding="utf-8"?><RpVpnDeviceList version="1.0"><Vendor name="Cisco"><DeviceFamily name="ISR"><FirmwareVersion name="IOS 15.1 (Preview)" /></DeviceFamily><DeviceFamily name="ASA (Adaptive Security Appliance)"><FirmwareVersion name="ASA_9.8.x_ActivePassive_NoBGP_NoCustomPolicies"/><FirmwareVersion name="ASA_9.8(x)_CustomPolicies" /></DeviceFamily></Vendor><Vendor name="Juniper"><DeviceFamily name="Juniper_SRX_GA"><FirmwareVersion name="Juniper_SRX_12.x_GA" /></DeviceFamily><DeviceFamily name="Juniper_SSG_GA"><FirmwareVersion name="Juniper_SSG_ScreenOS-6.2.x_GA"/></DeviceFamily><DeviceFamily name="Juniper_JSeries_GA"><FirmwareVersion name="Juniper_JSeries_JunOS12.x._GA" /></DeviceFamily></Vendor><Vendor name="Ubiquiti"><DeviceFamily name="EdgeRouter"><FirmwareVersion name="Ubiquiti_EdgeOS_1.10.x-RouteBased_VTI" /><FirmwareVersionname="Ubiquiti_EdgeOS_1.10.x-RouteBased_BGP" /></DeviceFamily></Vendor></RpVpnDeviceList>
definitions:
  BgpPeerStatus:
    description: BGP peer status details.
    properties:
      asn:
        description: The autonomous system number of the remote BGP peer.
        format: int32
        readOnly: true
        type: integer
      connectedDuration:
        description: For how long the peering has been up.
        readOnly: true
        type: string
      localAddress:
        description: The virtual network gateway's local address.
        readOnly: true
        type: string
      messagesReceived:
        description: The number of BGP messages received.
        format: int64
        readOnly: true
        type: integer
      messagesSent:
        description: The number of BGP messages sent.
        format: int64
        readOnly: true
        type: integer
      neighbor:
        description: The remote BGP peer.
        readOnly: true
        type: string
      routesReceived:
        description: The number of routes learned from this peer.
        format: int64
        readOnly: true
        type: integer
      state:
        description: The BGP peer state.
        enum:
          - Unknown
          - Stopped
          - Idle
          - Connecting
          - Connected
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: BgpPeerState
  BgpPeerStatusListResult:
    description: Response for list BGP peer status API service call.
    properties:
      value:
        description: List of BGP peers.
        items:
          $ref: "#/definitions/BgpPeerStatus"
        type: array
  BgpSettings:
    description: BGP settings details.
    properties:
      asn:
        description: The BGP speaker's ASN.
        format: int64
        type: integer
      bgpPeeringAddress:
        description: The BGP peering address and BGP identifier of this BGP speaker.
        type: string
      peerWeight:
        description: The weight added to routes learned from this BGP speaker.
        format: int32
        type: integer
  ConnectionProtocol:
    description: Gateway connection protocol.
    enum:
      - IKEv2
      - IKEv1
    type: string
    x-ms-enum:
      modelAsString: true
      name: VirtualNetworkGatewayConnectionProtocol
  ConnectionResetSharedKey:
    description: The virtual network connection reset shared key.
    properties:
      keyLength:
        description: The virtual network connection reset shared key length, should between 1 and 128.
        format: int32
        maximum: 128
        minimum: 1
        type: integer
    required:
      - keyLength
  ConnectionSharedKey:
    allOf:
      - description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
    description: Response for GetConnectionSharedKey API service call.
    properties:
      value:
        description: The virtual network connection shared key value.
        type: string
    required:
      - value
  DhGroup:
    description: The DH Groups used in IKE Phase 1 for initial SA.
    enum:
      - None
      - DHGroup1
      - DHGroup2
      - DHGroup14
      - DHGroup2048
      - ECP256
      - ECP384
      - DHGroup24
    type: string
    x-ms-enum:
      modelAsString: true
      name: DhGroup
  GatewayRoute:
    description: Gateway routing details.
    properties:
      asPath:
        description: The route's AS path sequence.
        readOnly: true
        type: string
      localAddress:
        description: The gateway's local address.
        readOnly: true
        type: string
      network:
        description: The route's network prefix.
        readOnly: true
        type: string
      nextHop:
        description: The route's next hop.
        readOnly: true
        type: string
      origin:
        description: The source this route was learned from.
        readOnly: true
        type: string
      sourcePeer:
        description: The peer this route was learned from.
        readOnly: true
        type: string
      weight:
        description: The route's weight.
        format: int32
        readOnly: true
        type: integer
  GatewayRouteListResult:
    description: List of virtual network gateway routes.
    properties:
      value:
        description: List of gateway routes.
        items:
          $ref: "#/definitions/GatewayRoute"
        type: array
  IkeEncryption:
    description: The IKE encryption algorithm (IKE phase 2).
    enum:
      - DES
      - DES3
      - AES128
      - AES192
      - AES256
      - GCMAES256
      - GCMAES128
    type: string
    x-ms-enum:
      modelAsString: true
      name: IkeEncryption
  IkeIntegrity:
    description: The IKE integrity algorithm (IKE phase 2).
    enum:
      - MD5
      - SHA1
      - SHA256
      - SHA384
      - GCMAES256
      - GCMAES128
    type: string
    x-ms-enum:
      modelAsString: true
      name: IkeIntegrity
  IpsecEncryption:
    description: The IPSec encryption algorithm (IKE phase 1).
    enum:
      - None
      - DES
      - DES3
      - AES128
      - AES192
      - AES256
      - GCMAES128
      - GCMAES192
      - GCMAES256
    type: string
    x-ms-enum:
      modelAsString: true
      name: IpsecEncryption
  IpsecIntegrity:
    description: The IPSec integrity algorithm (IKE phase 1).
    enum:
      - MD5
      - SHA1
      - SHA256
      - GCMAES128
      - GCMAES192
      - GCMAES256
    type: string
    x-ms-enum:
      modelAsString: true
      name: IpsecIntegrity
  IpsecPolicy:
    description: An IPSec Policy configuration for a virtual network gateway connection.
    properties:
      dhGroup:
        $ref: "#/definitions/DhGroup"
        description: The DH Group used in IKE Phase 1 for initial SA.
      ikeEncryption:
        $ref: "#/definitions/IkeEncryption"
        description: The IKE encryption algorithm (IKE phase 2).
      ikeIntegrity:
        $ref: "#/definitions/IkeIntegrity"
        description: The IKE integrity algorithm (IKE phase 2).
      ipsecEncryption:
        $ref: "#/definitions/IpsecEncryption"
        description: The IPSec encryption algorithm (IKE phase 1).
      ipsecIntegrity:
        $ref: "#/definitions/IpsecIntegrity"
        description: The IPSec integrity algorithm (IKE phase 1).
      pfsGroup:
        $ref: "#/definitions/PfsGroup"
        description: The Pfs Group used in IKE Phase 2 for new child SA.
      saDataSizeKilobytes:
        description: The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for a site to site VPN tunnel.
        format: int32
        type: integer
      saLifeTimeSeconds:
        description: The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for a site to site VPN tunnel.
        format: int32
        type: integer
    required:
      - saLifeTimeSeconds
      - saDataSizeKilobytes
      - ipsecEncryption
      - ipsecIntegrity
      - ikeEncryption
      - ikeIntegrity
      - dhGroup
      - pfsGroup
  LocalNetworkGateway:
    allOf:
      - description: Common resource representation.
        properties:
          id:
            description: Resource ID.
            type: string
          location:
            description: Resource location.
            type: string
          name:
            description: Resource name.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: Resource tags.
            type: object
          type:
            description: Resource type.
            readOnly: true
            type: string
        x-ms-azure-resource: true
    description: A common class for general resource information.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/LocalNetworkGatewayPropertiesFormat"
        description: Properties of the local network gateway.
        x-ms-client-flatten: true
    required:
      - properties
  LocalNetworkGatewayListResult:
    description: Response for ListLocalNetworkGateways API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        readOnly: true
        type: string
      value:
        description: A list of local network gateways that exists in a resource group.
        items:
          $ref: "#/definitions/LocalNetworkGateway"
        type: array
  LocalNetworkGatewayPropertiesFormat:
    description: LocalNetworkGateway properties.
    properties:
      bgpSettings:
        $ref: "#/definitions/BgpSettings"
        description: Local network gateway's BGP speaker settings.
      gatewayIpAddress:
        description: IP address of local network gateway.
        type: string
      localNetworkAddressSpace:
        description: AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network.
        properties:
          addressPrefixes:
            description: A list of address blocks reserved for this virtual network in CIDR notation.
            items:
              type: string
            type: array
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      resourceGuid:
        description: The resource GUID property of the local network gateway resource.
        type: string
  PfsGroup:
    description: The Pfs Groups used in IKE Phase 2 for new child SA.
    enum:
      - None
      - PFS1
      - PFS2
      - PFS2048
      - ECP256
      - ECP384
      - PFS24
      - PFS14
      - PFSMM
    type: string
    x-ms-enum:
      modelAsString: true
      name: PfsGroup
  TrafficSelectorPolicy:
    description: An traffic selector policy for a virtual network gateway connection.
    properties:
      localAddressRanges:
        description: A collection of local address spaces in CIDR format
        items:
          type: string
        type: array
      remoteAddressRanges:
        description: A collection of remote address spaces in CIDR format
        items:
          type: string
        type: array
    required:
      - localAddressRanges
      - remoteAddressRanges
  TunnelConnectionHealth:
    description: VirtualNetworkGatewayConnection properties.
    properties:
      connectionStatus:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionStatus"
        description: Virtual Network Gateway connection status.
        readOnly: true
      egressBytesTransferred:
        description: The Egress Bytes Transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      ingressBytesTransferred:
        description: The Ingress Bytes Transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      lastConnectionEstablishedUtcTime:
        description: The time at which connection was established in Utc format.
        readOnly: true
        type: string
      tunnel:
        description: Tunnel name.
        readOnly: true
        type: string
  VirtualNetworkConnectionGatewayReference:
    description: A reference to VirtualNetworkGateway or LocalNetworkGateway resource.
    properties:
      id:
        description: The ID of VirtualNetworkGateway or LocalNetworkGateway resource.
        type: string
    required:
      - id
  VirtualNetworkGateway:
    allOf:
      - description: Common resource representation.
        properties:
          id:
            description: Resource ID.
            type: string
          location:
            description: Resource location.
            type: string
          name:
            description: Resource name.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: Resource tags.
            type: object
          type:
            description: Resource type.
            readOnly: true
            type: string
        x-ms-azure-resource: true
    description: A common class for general resource information.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayPropertiesFormat"
        description: Properties of the virtual network gateway.
        x-ms-client-flatten: true
    required:
      - properties
  VirtualNetworkGatewayConnection:
    allOf:
      - description: Common resource representation.
        properties:
          id:
            description: Resource ID.
            type: string
          location:
            description: Resource location.
            type: string
          name:
            description: Resource name.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: Resource tags.
            type: object
          type:
            description: Resource type.
            readOnly: true
            type: string
        x-ms-azure-resource: true
    description: A common class for general resource information.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat"
        description: Properties of the virtual network gateway connection.
        x-ms-client-flatten: true
    required:
      - properties
  VirtualNetworkGatewayConnectionListEntity:
    allOf:
      - description: Common resource representation.
        properties:
          id:
            description: Resource ID.
            type: string
          location:
            description: Resource location.
            type: string
          name:
            description: Resource name.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: Resource tags.
            type: object
          type:
            description: Resource type.
            readOnly: true
            type: string
        x-ms-azure-resource: true
    description: A common class for general resource information.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionListEntityPropertiesFormat"
        description: Properties of the virtual network gateway connection.
        x-ms-client-flatten: true
    required:
      - properties
  VirtualNetworkGatewayConnectionListEntityPropertiesFormat:
    description: VirtualNetworkGatewayConnection properties.
    properties:
      authorizationKey:
        description: The authorizationKey.
        type: string
      connectionProtocol:
        $ref: "#/definitions/ConnectionProtocol"
        description: Connection protocol used for this connection.
      connectionStatus:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionStatus"
        description: Virtual Network Gateway connection status.
        readOnly: true
      connectionType:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionType"
        description: Gateway connection type.
      egressBytesTransferred:
        description: The egress bytes transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      enableBgp:
        description: EnableBgp flag.
        type: boolean
      expressRouteGatewayBypass:
        description: Bypass ExpressRoute Gateway for data forwarding.
        type: boolean
      ingressBytesTransferred:
        description: The ingress bytes transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      ipsecPolicies:
        description: The IPSec Policies to be considered by this connection.
        items:
          $ref: "#/definitions/IpsecPolicy"
        type: array
      localNetworkGateway2:
        $ref: "#/definitions/VirtualNetworkConnectionGatewayReference"
        description: The reference to local network gateway resource.
      peer:
        description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      resourceGuid:
        description: The resource GUID property of the virtual network gateway connection resource.
        type: string
      routingWeight:
        description: The routing weight.
        format: int32
        type: integer
      sharedKey:
        description: The IPSec shared key.
        type: string
      trafficSelectorPolicies:
        description: The Traffic Selector Policies to be considered by this connection.
        items:
          $ref: "#/definitions/TrafficSelectorPolicy"
        type: array
      tunnelConnectionStatus:
        description: Collection of all tunnels' connection health status.
        items:
          $ref: "#/definitions/TunnelConnectionHealth"
        readOnly: true
        type: array
      usePolicyBasedTrafficSelectors:
        description: Enable policy-based traffic selectors.
        type: boolean
      virtualNetworkGateway1:
        $ref: "#/definitions/VirtualNetworkConnectionGatewayReference"
        description: The reference to virtual network gateway resource.
      virtualNetworkGateway2:
        $ref: "#/definitions/VirtualNetworkConnectionGatewayReference"
        description: The reference to virtual network gateway resource.
    required:
      - virtualNetworkGateway1
      - connectionType
  VirtualNetworkGatewayConnectionListResult:
    description: Response for the ListVirtualNetworkGatewayConnections API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        readOnly: true
        type: string
      value:
        description: A list of VirtualNetworkGatewayConnection resources that exists in a resource group.
        items:
          $ref: "#/definitions/VirtualNetworkGatewayConnection"
        type: array
  VirtualNetworkGatewayConnectionPropertiesFormat:
    description: VirtualNetworkGatewayConnection properties.
    properties:
      authorizationKey:
        description: The authorizationKey.
        type: string
      connectionProtocol:
        $ref: "#/definitions/ConnectionProtocol"
        description: Connection protocol used for this connection.
      connectionStatus:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionStatus"
        description: Virtual Network Gateway connection status.
        readOnly: true
      connectionType:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionType"
        description: Gateway connection type.
      egressBytesTransferred:
        description: The egress bytes transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      enableBgp:
        description: EnableBgp flag.
        type: boolean
      expressRouteGatewayBypass:
        description: Bypass ExpressRoute Gateway for data forwarding.
        type: boolean
      ingressBytesTransferred:
        description: The ingress bytes transferred in this connection.
        format: int64
        readOnly: true
        type: integer
      ipsecPolicies:
        description: The IPSec Policies to be considered by this connection.
        items:
          $ref: "#/definitions/IpsecPolicy"
        type: array
      localNetworkGateway2:
        $ref: "#/definitions/LocalNetworkGateway"
        description: The reference to local network gateway resource.
      peer:
        description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      resourceGuid:
        description: The resource GUID property of the virtual network gateway connection resource.
        type: string
      routingWeight:
        description: The routing weight.
        format: int32
        type: integer
      sharedKey:
        description: The IPSec shared key.
        type: string
      trafficSelectorPolicies:
        description: The Traffic Selector Policies to be considered by this connection.
        items:
          $ref: "#/definitions/TrafficSelectorPolicy"
        type: array
      tunnelConnectionStatus:
        description: Collection of all tunnels' connection health status.
        items:
          $ref: "#/definitions/TunnelConnectionHealth"
        readOnly: true
        type: array
      usePolicyBasedTrafficSelectors:
        description: Enable policy-based traffic selectors.
        type: boolean
      virtualNetworkGateway1:
        $ref: "#/definitions/VirtualNetworkGateway"
        description: The reference to virtual network gateway resource.
      virtualNetworkGateway2:
        $ref: "#/definitions/VirtualNetworkGateway"
        description: The reference to virtual network gateway resource.
    required:
      - virtualNetworkGateway1
      - connectionType
  VirtualNetworkGatewayConnectionStatus:
    description: Virtual Network Gateway connection status.
    enum:
      - Unknown
      - Connecting
      - Connected
      - NotConnected
    type: string
    x-ms-enum:
      modelAsString: true
      name: VirtualNetworkGatewayConnectionStatus
  VirtualNetworkGatewayConnectionType:
    description: Gateway connection type.
    enum:
      - IPsec
      - Vnet2Vnet
      - ExpressRoute
      - VPNClient
    type: string
    x-ms-enum:
      modelAsString: true
      name: VirtualNetworkGatewayConnectionType
  VirtualNetworkGatewayIPConfiguration:
    allOf:
      - description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
    description: IP configuration for virtual network gateway.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      name:
        description: The name of the resource that is unique within a resource group. This name can be used to access the resource.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayIPConfigurationPropertiesFormat"
        description: Properties of the virtual network gateway ip configuration.
        x-ms-client-flatten: true
  VirtualNetworkGatewayIPConfigurationPropertiesFormat:
    description: Properties of VirtualNetworkGatewayIPConfiguration.
    properties:
      privateIPAllocationMethod:
        description: IP address allocation method.
        enum:
          - Static
          - Dynamic
        type: string
        x-ms-enum:
          modelAsString: true
          name: IPAllocationMethod
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      publicIPAddress:
        description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
      subnet:
        description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
  VirtualNetworkGatewayListConnectionsResult:
    description: Response for the VirtualNetworkGatewayListConnections API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        readOnly: true
        type: string
      value:
        description: A list of VirtualNetworkGatewayConnection resources that exists in a resource group.
        items:
          $ref: "#/definitions/VirtualNetworkGatewayConnectionListEntity"
        type: array
  VirtualNetworkGatewayListResult:
    description: Response for the ListVirtualNetworkGateways API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        readOnly: true
        type: string
      value:
        description: A list of VirtualNetworkGateway resources that exists in a resource group.
        items:
          $ref: "#/definitions/VirtualNetworkGateway"
        type: array
  VirtualNetworkGatewayPropertiesFormat:
    description: VirtualNetworkGateway properties.
    properties:
      activeActive:
        description: ActiveActive flag.
        type: boolean
      bgpSettings:
        $ref: "#/definitions/BgpSettings"
        description: Virtual network gateway's BGP speaker settings.
      customRoutes:
        description: AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network.
        properties:
          addressPrefixes:
            description: A list of address blocks reserved for this virtual network in CIDR notation.
            items:
              type: string
            type: array
      enableBgp:
        description: Whether BGP is enabled for this virtual network gateway or not.
        type: boolean
      gatewayDefaultSite:
        description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
      gatewayType:
        description: The type of this virtual network gateway.
        enum:
          - Vpn
          - ExpressRoute
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewayType
      ipConfigurations:
        description: IP configurations for virtual network gateway.
        items:
          $ref: "#/definitions/VirtualNetworkGatewayIPConfiguration"
        type: array
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      resourceGuid:
        description: The resource GUID property of the virtual network gateway resource.
        type: string
      sku:
        $ref: "#/definitions/VirtualNetworkGatewaySku"
        description: The reference of the VirtualNetworkGatewaySku resource which represents the SKU selected for Virtual network gateway.
      vpnClientConfiguration:
        $ref: "#/definitions/VpnClientConfiguration"
        description: The reference of the VpnClientConfiguration resource which represents the P2S VpnClient configurations.
      vpnGatewayGeneration:
        description: The generation for this VirtualNetworkGateway. Must be None if gatewayType is not VPN.
        enum:
          - None
          - Generation1
          - Generation2
        type: string
        x-ms-enum:
          modelAsString: true
          name: VpnGatewayGeneration
      vpnType:
        description: The type of this virtual network gateway.
        enum:
          - PolicyBased
          - RouteBased
        type: string
        x-ms-enum:
          modelAsString: true
          name: VpnType
  VirtualNetworkGatewaySku:
    description: VirtualNetworkGatewaySku details.
    properties:
      capacity:
        description: The capacity.
        format: int32
        type: integer
      name:
        description: Gateway SKU name.
        enum:
          - Basic
          - HighPerformance
          - Standard
          - UltraPerformance
          - VpnGw1
          - VpnGw2
          - VpnGw3
          - VpnGw4
          - VpnGw5
          - VpnGw1AZ
          - VpnGw2AZ
          - VpnGw3AZ
          - VpnGw4AZ
          - VpnGw5AZ
          - ErGw1AZ
          - ErGw2AZ
          - ErGw3AZ
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewaySkuName
      tier:
        description: Gateway SKU tier.
        enum:
          - Basic
          - HighPerformance
          - Standard
          - UltraPerformance
          - VpnGw1
          - VpnGw2
          - VpnGw3
          - VpnGw4
          - VpnGw5
          - VpnGw1AZ
          - VpnGw2AZ
          - VpnGw3AZ
          - VpnGw4AZ
          - VpnGw5AZ
          - ErGw1AZ
          - ErGw2AZ
          - ErGw3AZ
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewaySkuTier
  VpnClientConfiguration:
    description: VpnClientConfiguration for P2S client.
    properties:
      aadAudience:
        description: The AADAudience property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
        type: string
      aadIssuer:
        description: The AADIssuer property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
        type: string
      aadTenant:
        description: The AADTenant property of the VirtualNetworkGateway resource for vpn client connection used for AAD authentication.
        type: string
      radiusServerAddress:
        description: The radius server address property of the VirtualNetworkGateway resource for vpn client connection.
        type: string
      radiusServerSecret:
        description: The radius secret property of the VirtualNetworkGateway resource for vpn client connection.
        type: string
      vpnClientAddressPool:
        description: AddressSpace contains an array of IP address ranges that can be used by subnets of the virtual network.
        properties:
          addressPrefixes:
            description: A list of address blocks reserved for this virtual network in CIDR notation.
            items:
              type: string
            type: array
      vpnClientIpsecPolicies:
        description: VpnClientIpsecPolicies for virtual network gateway P2S client.
        items:
          $ref: "#/definitions/IpsecPolicy"
        type: array
      vpnClientProtocols:
        description: VpnClientProtocols for Virtual network gateway.
        items:
          description: VPN client protocol enabled for the virtual network gateway.
          enum:
            - IkeV2
            - SSTP
            - OpenVPN
          type: string
          x-ms-enum:
            modelAsString: true
            name: VpnClientProtocol
        type: array
      vpnClientRevokedCertificates:
        description: VpnClientRevokedCertificate for Virtual network gateway.
        items:
          $ref: "#/definitions/VpnClientRevokedCertificate"
        type: array
      vpnClientRootCertificates:
        description: VpnClientRootCertificate for virtual network gateway.
        items:
          $ref: "#/definitions/VpnClientRootCertificate"
        type: array
  VpnClientConnectionHealthDetail:
    description: VPN client connection health detail.
    properties:
      egressBytesTransferred:
        description: The egress bytes per second.
        format: int64
        readOnly: true
        type: integer
      egressPacketsTransferred:
        description: The egress packets per second.
        format: int64
        readOnly: true
        type: integer
      ingressBytesTransferred:
        description: The ingress bytes per second.
        format: int64
        readOnly: true
        type: integer
      ingressPacketsTransferred:
        description: The ingress packets per second.
        format: int64
        readOnly: true
        type: integer
      maxBandwidth:
        description: The max band width.
        format: int64
        readOnly: true
        type: integer
      maxPacketsPerSecond:
        description: The max packets transferred per second.
        format: int64
        readOnly: true
        type: integer
      privateIpAddress:
        description: The assigned private Ip of a connected vpn client.
        readOnly: true
        type: string
      publicIpAddress:
        description: The public Ip of a connected vpn client.
        readOnly: true
        type: string
      vpnConnectionDuration:
        description: The duration time of a connected vpn client.
        format: int64
        readOnly: true
        type: integer
      vpnConnectionId:
        description: The vpn client Id.
        readOnly: true
        type: string
      vpnConnectionTime:
        description: The start time of a connected vpn client.
        readOnly: true
        type: string
      vpnUserName:
        description: The user name of a connected vpn client.
        readOnly: true
        type: string
  VpnClientConnectionHealthDetailListResult:
    description: List of virtual network gateway vpn client connection health.
    properties:
      value:
        description: List of vpn client connection health.
        items:
          $ref: "#/definitions/VpnClientConnectionHealthDetail"
        type: array
  VpnClientIPsecParameters:
    description: An IPSec parameters for a virtual network gateway P2S connection.
    properties:
      dhGroup:
        $ref: "#/definitions/DhGroup"
        description: The DH Group used in IKE Phase 1 for initial SA.
      ikeEncryption:
        $ref: "#/definitions/IkeEncryption"
        description: The IKE encryption algorithm (IKE phase 2).
      ikeIntegrity:
        $ref: "#/definitions/IkeIntegrity"
        description: The IKE integrity algorithm (IKE phase 2).
      ipsecEncryption:
        $ref: "#/definitions/IpsecEncryption"
        description: The IPSec encryption algorithm (IKE phase 1).
      ipsecIntegrity:
        $ref: "#/definitions/IpsecIntegrity"
        description: The IPSec integrity algorithm (IKE phase 1).
      pfsGroup:
        $ref: "#/definitions/PfsGroup"
        description: The Pfs Group used in IKE Phase 2 for new child SA.
      saDataSizeKilobytes:
        description: The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for P2S client..
        format: int32
        type: integer
      saLifeTimeSeconds:
        description: The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for P2S client.
        format: int32
        type: integer
    required:
      - saLifeTimeSeconds
      - saDataSizeKilobytes
      - ipsecEncryption
      - ipsecIntegrity
      - ikeEncryption
      - ikeIntegrity
      - dhGroup
      - pfsGroup
  VpnClientParameters:
    description: Vpn Client Parameters for package generation.
    properties:
      authenticationMethod:
        description: VPN client authentication method.
        enum:
          - EAPTLS
          - EAPMSCHAPv2
        type: string
        x-ms-enum:
          modelAsString: true
          name: AuthenticationMethod
      clientRootCertificates:
        description: A list of client root certificates public certificate data encoded as Base-64 strings. Optional parameter for external radius based authentication with EAPTLS.
        items:
          type: string
        type: array
      processorArchitecture:
        description: VPN client Processor Architecture.
        enum:
          - Amd64
          - X86
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProcessorArchitecture
      radiusServerAuthCertificate:
        description: The public certificate data for the radius server authentication certificate as a Base-64 encoded string. Required only if external radius authentication has been configured with EAPTLS authentication.
        type: string
  VpnClientRevokedCertificate:
    allOf:
      - description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
    description: VPN client revoked certificate of virtual network gateway.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      name:
        description: The name of the resource that is unique within a resource group. This name can be used to access the resource.
        type: string
      properties:
        $ref: "#/definitions/VpnClientRevokedCertificatePropertiesFormat"
        description: Properties of the vpn client revoked certificate.
        x-ms-client-flatten: true
  VpnClientRevokedCertificatePropertiesFormat:
    description: Properties of the revoked VPN client certificate of virtual network gateway.
    properties:
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      thumbprint:
        description: The revoked VPN client certificate thumbprint.
        type: string
  VpnClientRootCertificate:
    allOf:
      - description: Reference to another subresource.
        properties:
          id:
            description: Resource ID.
            type: string
        x-ms-azure-resource: true
    description: VPN client root certificate of virtual network gateway.
    properties:
      etag:
        description: A unique read-only string that changes whenever the resource is updated.
        type: string
      name:
        description: The name of the resource that is unique within a resource group. This name can be used to access the resource.
        type: string
      properties:
        $ref: "#/definitions/VpnClientRootCertificatePropertiesFormat"
        description: Properties of the vpn client root certificate.
        x-ms-client-flatten: true
    required:
      - properties
  VpnClientRootCertificatePropertiesFormat:
    description: Properties of SSL certificates of application gateway.
    properties:
      provisioningState:
        description: The current provisioning state.
        enum:
          - Succeeded
          - Updating
          - Deleting
          - Failed
        readOnly: true
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProvisioningState
      publicCertData:
        description: The certificate public data.
        type: string
    required:
      - publicCertData
  VpnDeviceScriptParameters:
    description: Vpn device configuration script generation parameters.
    properties:
      deviceFamily:
        description: The device family for the vpn device.
        type: string
      firmwareVersion:
        description: The firmware version for the vpn device.
        type: string
      vendor:
        description: The vendor for the vpn device.
        type: string
  VpnPacketCaptureStartParameters:
    description: Start packet capture parameters on virtual network gateway.
    properties:
      filterData:
        description: Start Packet capture parameters.
        type: string
  VpnPacketCaptureStopParameters:
    description: Stop packet capture parameters.
    properties:
      sasUrl:
        description: SAS url for packet capture on virtual network gateway.
        type: string
