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: 2015-06-15
  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/2015-06-15/virtualNetworkGateway.json
      version: "2.0"
  x-preferred: false
  x-providerName: azure.com
  x-serviceName: network-virtualNetworkGateway
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
  - text/json
produces:
  - application/json
  - text/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
parameters:
  ApiVersionParameter:
    description: Client API version.
    in: query
    name: api-version
    required: true
    type: string
  SubscriptionIdParameter:
    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
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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation resets the virtual network gateway connection shared key.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnectionListResult"
      tags:
        - VirtualNetworkGatewayConnections
      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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - VirtualNetworkGatewayConnections
      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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation returns the resulting VirtualNetworkPeering resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayConnection"
      tags:
        - VirtualNetworkGatewayConnections
    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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      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-long-running-operation: true
  "/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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: ""
          schema:
            $ref: "#/definitions/ConnectionSharedKeyResult"
      tags:
        - VirtualNetworkGatewayConnections
    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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: ""
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
        "201":
          description: ""
          schema:
            $ref: "#/definitions/ConnectionSharedKey"
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-long-running-operation: true
  "/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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation sets the virtual network gateway connection shared key.
          schema:
            $ref: "#/definitions/ConnectionResetSharedKey"
        "202":
          description: ""
      tags:
        - VirtualNetworkGatewayConnections
      x-ms-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
  "/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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation returns a list of LocalNetworkGateway resources.
          schema:
            $ref: "#/definitions/LocalNetworkGatewayListResult"
      tags:
        - 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
          name: localNetworkGatewayName
          required: true
          type: string
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - LocalNetworkGateways
      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
          name: localNetworkGatewayName
          required: true
          type: string
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation returns the resulting LocalNetworkGateway resource.
          schema:
            $ref: "#/definitions/LocalNetworkGateway"
      tags:
        - LocalNetworkGateways
    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
          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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      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-long-running-operation: true
  "/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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation returns a list of VirtualNetworkGateway resources.
          schema:
            $ref: "#/definitions/VirtualNetworkGatewayListResult"
      tags:
        - 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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Delete successful.
        "202":
          description: Accepted and the operation will complete asynchronously.
        "204":
          description: Delete successful.
      tags:
        - VirtualNetworkGateways
      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
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "200":
          description: Request successful. The operation returns a VirtualNetworkGateway resource.
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
      tags:
        - VirtualNetworkGateways
    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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      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-long-running-operation: true
  "/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"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      responses:
        "202":
          description: VPN client package URL.
          schema:
            type: string
      tags:
        - VirtualNetworkGateways
      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: body
          name: parameters
          required: true
          schema:
            $ref: "#/definitions/VirtualNetworkGateway"
        - $ref: "#/parameters/ApiVersionParameter"
        - $ref: "#/parameters/SubscriptionIdParameter"
      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-long-running-operation: true
      x-ms-long-running-operation-options:
        final-state-via: location
definitions:
  BgpSettings:
    properties:
      asn:
        description: Gets or sets this BGP speaker's ASN
        format: int64
        type: integer
      bgpPeeringAddress:
        description: Gets or sets the BGP peering address and BGP identifier of this BGP speaker
        type: string
      peerWeight:
        description: Gets or sets the weight added to routes learned from this BGP speaker
        format: int32
        type: integer
  ConnectionResetSharedKey:
    properties:
      keyLength:
        description: The virtual network connection reset shared key length
        format: int64
        type: integer
  ConnectionSharedKey:
    description: Response for GetConnectionSharedKey API service call
    properties:
      value:
        description: The virtual network connection shared key value
        type: string
  ConnectionSharedKeyResult:
    description: Response for CheckConnectionSharedKey API service call
    properties:
      value:
        description: The virtual network connection shared key value
        type: string
  LocalNetworkGateway:
    allOf:
      - description: Azure resource manager resource properties.
        properties:
          id:
            description: Resource Identifier.
            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: Gets a unique read-only string that changes whenever the resource is updated
        type: string
      properties:
        $ref: "#/definitions/LocalNetworkGatewayPropertiesFormat"
        x-ms-client-flatten: true
  LocalNetworkGatewayListResult:
    description: Response for ListLocalNetworkGateways API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        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: Gets or sets Provisioning state of the LocalNetworkGateway resource Updating/Deleting/Failed
        type: string
      resourceGuid:
        description: The resource GUID property of the LocalNetworkGateway resource.
        type: string
  VirtualNetworkGateway:
    allOf:
      - description: Azure resource manager resource properties.
        properties:
          id:
            description: Resource Identifier.
            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: Gets a unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayPropertiesFormat"
        x-ms-client-flatten: true
  VirtualNetworkGatewayConnection:
    allOf:
      - description: Azure resource manager resource properties.
        properties:
          id:
            description: Resource Identifier.
            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: Gets a unique read-only string that changes whenever the resource is updated.
        type: string
      properties:
        $ref: "#/definitions/VirtualNetworkGatewayConnectionPropertiesFormat"
        x-ms-client-flatten: true
  VirtualNetworkGatewayConnectionListResult:
    description: Response for the ListVirtualNetworkGatewayConnections API service call
    properties:
      nextLink:
        description: The URL to get the next set of results.
        type: string
      value:
        description: Gets 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
      connectionStatus:
        description: Virtual network Gateway connection status. Possible values are 'Unknown', 'Connecting', 'Connected' and 'NotConnected'.
        enum:
          - Unknown
          - Connecting
          - Connected
          - NotConnected
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewayConnectionStatus
      connectionType:
        description: "Gateway connection type. Possible values are: 'IPsec','Vnet2Vnet','ExpressRoute', and 'VPNClient."
        enum:
          - IPsec
          - Vnet2Vnet
          - ExpressRoute
          - VPNClient
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewayConnectionType
      egressBytesTransferred:
        description: The egress bytes transferred in this connection.
        format: int64
        type: integer
      enableBgp:
        description: EnableBgp flag
        type: boolean
      ingressBytesTransferred:
        description: The ingress bytes transferred in this connection.
        format: int64
        type: integer
      localNetworkGateway2:
        $ref: "#/definitions/LocalNetworkGateway"
      peer:
        description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            type: string
        x-ms-azure-resource: true
      provisioningState:
        description: "The provisioning state of the VirtualNetworkGatewayConnection resource. Possible values are: 'Updating', 'Deleting', and 'Failed'."
        type: string
      resourceGuid:
        description: The resource GUID property of the VirtualNetworkGatewayConnection resource.
        type: string
      routingWeight:
        description: The routing weight.
        format: int32
        type: integer
      sharedKey:
        description: The IPSec shared key.
        type: string
      virtualNetworkGateway1:
        $ref: "#/definitions/VirtualNetworkGateway"
      virtualNetworkGateway2:
        $ref: "#/definitions/VirtualNetworkGateway"
  VirtualNetworkGatewayIPConfiguration:
    allOf:
      - description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            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"
        x-ms-client-flatten: true
  VirtualNetworkGatewayIPConfigurationPropertiesFormat:
    description: Properties of VirtualNetworkGatewayIPConfiguration
    properties:
      privateIPAddress:
        description: Gets or sets the privateIPAddress of the IP Configuration
        type: string
      privateIPAllocationMethod:
        description: "The private IP allocation method. Possible values are: 'Static' and 'Dynamic'."
        enum:
          - Static
          - Dynamic
        type: string
        x-ms-enum:
          modelAsString: true
          name: IPAllocationMethod
      provisioningState:
        description: "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'."
        type: string
      publicIPAddress:
        description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            type: string
        x-ms-azure-resource: true
      subnet:
        description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            type: string
        x-ms-azure-resource: true
  VirtualNetworkGatewayListResult:
    description: Response for the ListVirtualNetworkGateways API service call.
    properties:
      nextLink:
        description: The URL to get the next set of results.
        type: string
      value:
        description: Gets a list of VirtualNetworkGateway resources that exists in a resource group.
        items:
          $ref: "#/definitions/VirtualNetworkGateway"
        type: array
  VirtualNetworkGatewayPropertiesFormat:
    description: VirtualNetworkGateway properties
    properties:
      bgpSettings:
        $ref: "#/definitions/BgpSettings"
        description: Virtual network gateway's BGP speaker settings.
      enableBgp:
        description: Whether BGP is enabled for this virtual network gateway or not.
        type: boolean
      gatewayDefaultSite:
        description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            type: string
        x-ms-azure-resource: true
      gatewayType:
        description: "The type of this virtual network gateway. Possible values are: 'Vpn' and 'ExpressRoute'."
        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 provisioning state of the VirtualNetworkGateway resource. Possible values are: 'Updating', 'Deleting', and 'Failed'."
        type: string
      resourceGuid:
        description: The resource GUID property of the VirtualNetworkGateway 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.
      vpnType:
        description: "The type of this virtual network gateway. Possible values are: 'PolicyBased' and 'RouteBased'."
        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 -Basic/HighPerformance/Standard
        enum:
          - Basic
          - HighPerformance
          - Standard
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewaySkuName
      tier:
        description: Gateway sku tier -Basic/HighPerformance/Standard
        enum:
          - Basic
          - HighPerformance
          - Standard
        type: string
        x-ms-enum:
          modelAsString: true
          name: VirtualNetworkGatewaySkuTier
  VpnClientConfiguration:
    description: VpnClientConfiguration for P2S client
    properties:
      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
      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
  VpnClientParameters:
    description: VpnClientParameters
    properties:
      ProcessorArchitecture:
        description: "VPN client Processor Architecture. Possible values are: 'AMD64' and 'X86'."
        enum:
          - Amd64
          - X86
        type: string
        x-ms-enum:
          modelAsString: true
          name: ProcessorArchitecture
  VpnClientRevokedCertificate:
    allOf:
      - description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            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"
        x-ms-client-flatten: true
  VpnClientRevokedCertificatePropertiesFormat:
    description: Properties of the revoked VPN client certificate of virtual network gateway.
    properties:
      provisioningState:
        description: "The provisioning state of the VPN client revoked certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'."
        type: string
      thumbprint:
        description: The revoked VPN client certificate thumbprint.
        type: string
  VpnClientRootCertificate:
    allOf:
      - description: Azure resource manager sub resource properties.
        properties:
          id:
            description: Resource Identifier.
            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"
        x-ms-client-flatten: true
  VpnClientRootCertificatePropertiesFormat:
    description: Properties of SSL certificates of application gateway
    properties:
      provisioningState:
        description: "The provisioning state of the VPN client root certificate resource. Possible values are: 'Updating', 'Deleting', and 'Failed'."
        type: string
      publicCertData:
        description: Gets or sets the certificate public data
        type: string
