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/operation.json
      version: "2.0"
  x-preferred: true
  x-providerName: azure.com
  x-serviceName: network-operation
  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:
  /providers/Microsoft.Network/operations:
    get:
      description: Lists all of the available Network Rest API operations.
      operationId: Operations_List
      parameters:
        - description: Client API version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK. The request has succeeded.
          schema:
            $ref: "#/definitions/OperationListResult"
      x-ms-examples:
        Get a list of operations for a resource provider:
          parameters:
            api-version: 2019-07-01
            location: westus
            subscriptionId: subid
          responses:
            "200":
              body:
                value:
                  - display:
                      description: Gets LocalNetworkGateway
                      operation: Get LocalNetworkGateway
                      provider: Microsoft Network
                      resource: LocalNetworkGateway
                    name: Microsoft.Network/localnetworkgateways/read
                  - display:
                      description: Creates or updates an existing LocalNetworkGateway
                      operation: Create or update LocalNetworkGateway
                      provider: Microsoft Network
                      resource: LocalNetworkGateway
                    name: Microsoft.Network/localnetworkgateways/write
                  - display:
                      description: Deletes LocalNetworkGateway
                      operation: Delete LocalNetworkGateway
                      provider: Microsoft Network
                      resource: LocalNetworkGateway
                    name: Microsoft.Network/localnetworkgateways/delete
                  - display:
                      description: Gets available metrics for the Network Interface
                      operation: Read Network Interface metric definitions
                      provider: Microsoft Network
                      resource: Network Interface metric definition
                    name: Microsoft.Network/networkInterfaces/providers/Microsoft.Insights/metricDefinitions/read
                    origin: system
                    properties:
                      serviceSpecification:
                        metricSpecifications:
                          - aggregationType: Total
                            availabilities:
                              - blobDuration: 01:00:00
                                retention: 00:00:00
                                timeGrain: 00:01:00
                              - blobDuration: 1.00:00:00
                                retention: 00:00:00
                                timeGrain: 01:00:00
                            dimensions: []
                            displayDescription: Number of bytes the Network Interface sent
                            displayName: Bytes Sent
                            enableRegionalMdmAccount: false
                            fillGapWithZero: false
                            isInternal: false
                            metricFilterPattern: ^__Ready__$
                            name: BytesSentRate
                            unit: Count
                          - aggregationType: Total
                            availabilities:
                              - blobDuration: 01:00:00
                                retention: 00:00:00
                                timeGrain: 00:01:00
                              - blobDuration: 1.00:00:00
                                retention: 00:00:00
                                timeGrain: 01:00:00
                            dimensions: []
                            displayDescription: Number of bytes the Network Interface received
                            displayName: Bytes Received
                            enableRegionalMdmAccount: false
                            fillGapWithZero: false
                            isInternal: false
                            metricFilterPattern: ^__Ready__$
                            name: BytesReceivedRate
                            unit: Count
                  - display:
                      description: Gets the events for network security group
                      operation: Get Network Security Group Event Log Definitions
                      provider: Microsoft Network
                      resource: Network Security Groups Log Definitions
                    name: Microsoft.Network/networksecuritygroups/providers/Microsoft.Insights/logDefinitions/read
                    origin: system
                    properties:
                      serviceSpecification:
                        logSpecifications:
                          - blobDuration: PT1H
                            displayName: Network Security Group Event
                            name: NetworkSecurityGroupEvent
                          - blobDuration: PT1H
                            displayName: Network Security Group Rule Counter
                            name: NetworkSecurityGroupRuleCounter
                          - blobDuration: PT1H
                            displayName: Network Security Group Rule Flow Event
                            name: NetworkSecurityGroupFlowEvent
      x-ms-pageable:
        nextLinkName: nextLink
definitions:
  Availability:
    description: Availability of the metric.
    properties:
      blobDuration:
        description: Duration of the availability blob.
        type: string
      retention:
        description: The retention of the availability.
        type: string
      timeGrain:
        description: The time grain of the availability.
        type: string
  Dimension:
    description: Dimension of the metric.
    properties:
      displayName:
        description: The display name of the dimension.
        type: string
      internalName:
        description: The internal name of the dimension.
        type: string
      name:
        description: The name of the dimension.
        type: string
  LogSpecification:
    description: Description of logging specification.
    properties:
      blobDuration:
        description: Duration of the blob.
        type: string
      displayName:
        description: The display name of the specification.
        type: string
      name:
        description: The name of the specification.
        type: string
  MetricSpecification:
    description: Description of metrics specification.
    properties:
      aggregationType:
        description: The aggregation type.
        type: string
      availabilities:
        description: List of availability.
        items:
          $ref: "#/definitions/Availability"
        type: array
      dimensions:
        description: List of dimensions.
        items:
          $ref: "#/definitions/Dimension"
        type: array
      displayDescription:
        description: The description of the metric.
        type: string
      displayName:
        description: The display name of the metric.
        type: string
      enableRegionalMdmAccount:
        description: Whether regional MDM account enabled.
        type: boolean
      fillGapWithZero:
        description: Whether gaps would be filled with zeros.
        type: boolean
      isInternal:
        description: Whether the metric is internal.
        type: boolean
      metricFilterPattern:
        description: Pattern for the filter of the metric.
        type: string
      name:
        description: The name of the metric.
        type: string
      resourceIdDimensionNameOverride:
        description: The resource Id dimension name override.
        type: string
      sourceMdmAccount:
        description: The source MDM account.
        type: string
      sourceMdmNamespace:
        description: The source MDM namespace.
        type: string
      unit:
        description: Units the metric to be displayed in.
        type: string
  Operation:
    description: Network REST API operation definition.
    properties:
      display:
        description: Display metadata associated with the operation.
        properties:
          description:
            description: Description of the operation.
            type: string
          operation:
            description: "Type of the operation: get, read, delete, etc."
            type: string
          provider:
            description: "Service provider: Microsoft Network."
            type: string
          resource:
            description: Resource on which the operation is performed.
            type: string
      name:
        description: "Operation name: {provider}/{resource}/{operation}."
        type: string
      origin:
        description: Origin of the operation.
        type: string
      properties:
        $ref: "#/definitions/OperationPropertiesFormat"
        description: Operation properties format.
        x-ms-client-flatten: true
    type: object
  OperationListResult:
    description: Result of the request to list Network operations. It contains a list of operations and a URL link to get the next set of results.
    properties:
      nextLink:
        description: URL to get the next set of operation list results if there are any.
        type: string
      value:
        description: List of Network operations supported by the Network resource provider.
        items:
          $ref: "#/definitions/Operation"
        type: array
  OperationPropertiesFormat:
    description: Description of operation properties format.
    properties:
      serviceSpecification:
        description: Specification of the service.
        properties:
          logSpecifications:
            description: Operation log specification.
            items:
              $ref: "#/definitions/LogSpecification"
            type: array
          metricSpecifications:
            description: Operation service specification.
            items:
              $ref: "#/definitions/MetricSpecification"
            type: array
