{
  "openapi": "3.0.0",
  "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": "2017-08-01",
    "x-jentic-source-url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/network/resource-manager/Microsoft.Network/stable/2017-08-01/networkSecurityGroup.json"
  },
  "servers": [
    {
      "url": "https://management.azure.com/"
    }
  ],
  "paths": {
    "/subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups": {
      "get": {
        "parameters": [
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroupListResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroupListResult"
                }
              }
            },
            "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources."
          }
        },
        "tags": [
          "NetworkSecurityGroups"
        ],
        "description": "Gets all network security groups in a subscription.",
        "operationId": "NetworkSecurityGroups_ListAll",
        "x-ms-examples": {
          "List all network security groups": {
            "$ref": "./examples/NetworkSecurityGroupListAll.json"
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups": {
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroupListResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroupListResult"
                }
              }
            },
            "description": "Request successful. The operation returns a list of NetworkSecurityGroup resources."
          }
        },
        "tags": [
          "NetworkSecurityGroups"
        ],
        "description": "Gets all network security groups in a resource group.",
        "operationId": "NetworkSecurityGroups_List",
        "x-ms-examples": {
          "List network security groups in resource group": {
            "$ref": "./examples/NetworkSecurityGroupList.json"
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}": {
      "delete": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Delete successful."
          },
          "202": {
            "description": "Accepted and the operation will complete asynchronously."
          },
          "204": {
            "description": "Request successful. Resource does not exist."
          }
        },
        "tags": [
          "NetworkSecurityGroups"
        ],
        "description": "Deletes the specified network security group.",
        "operationId": "NetworkSecurityGroups_Delete",
        "x-ms-examples": {
          "Delete network security group": {
            "$ref": "./examples/NetworkSecurityGroupDelete.json"
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          },
          {
            "description": "Expands referenced resources.",
            "in": "query",
            "name": "$expand",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              }
            },
            "description": "Request successful. The operation returns the resulting NetworkSecurityGroup resource."
          }
        },
        "tags": [
          "NetworkSecurityGroups"
        ],
        "description": "Gets the specified network security group.",
        "operationId": "NetworkSecurityGroups_Get",
        "x-ms-examples": {
          "Get network security group": {
            "$ref": "./examples/NetworkSecurityGroupGet.json"
          }
        }
      },
      "put": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              }
            },
            "description": "Update successful. The operation returns the resulting NetworkSecurityGroup resource."
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NetworkSecurityGroup"
                }
              }
            },
            "description": "Create successful. The operation returns the resulting NetworkSecurityGroup resource."
          }
        },
        "tags": [
          "NetworkSecurityGroups"
        ],
        "description": "Creates or updates a network security group in the specified resource group.",
        "operationId": "NetworkSecurityGroups_CreateOrUpdate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NetworkSecurityGroup"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/NetworkSecurityGroup"
              }
            }
          },
          "description": "Parameters supplied to the create or update network security group operation.",
          "required": true
        },
        "x-ms-examples": {
          "Create network security group": {
            "$ref": "./examples/NetworkSecurityGroupCreate.json"
          },
          "Create network security group with rule": {
            "$ref": "./examples/NetworkSecurityGroupCreateWithRule.json"
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules": {
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRuleListResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRuleListResult"
                }
              }
            },
            "description": "Request successful. The operation returns a list of SecurityRule resources."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Gets all default security rules in a network security group.",
        "operationId": "DefaultSecurityRules_List",
        "x-ms-examples": {
          "DefaultSecurityRuleList": {
            "$ref": "./examples/DefaultSecurityRuleList.json"
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/defaultSecurityRules/{defaultSecurityRuleName}": {
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the default security rule.",
            "in": "path",
            "name": "defaultSecurityRuleName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              }
            },
            "description": "Request successful. The operation returns the resulting SecurityRule resource."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Get the specified default network security rule.",
        "operationId": "DefaultSecurityRules_Get",
        "x-ms-examples": {
          "DefaultSecurityRuleGet": {
            "$ref": "./examples/DefaultSecurityRuleGet.json"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules": {
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRuleListResult"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRuleListResult"
                }
              }
            },
            "description": "Request successful. The operation returns a list of SecurityRule resources."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Gets all security rules in a network security group.",
        "operationId": "SecurityRules_List",
        "x-ms-examples": {
          "List network security rules in network security group": {
            "$ref": "./examples/NetworkSecurityGroupRuleList.json"
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/networkSecurityGroups/{networkSecurityGroupName}/securityRules/{securityRuleName}": {
      "delete": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the security rule.",
            "in": "path",
            "name": "securityRuleName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Delete successful."
          },
          "202": {
            "description": "Accepted and the operation will complete asynchronously."
          },
          "204": {
            "description": "Request successful. Resource does not exist."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Deletes the specified network security rule.",
        "operationId": "SecurityRules_Delete",
        "x-ms-examples": {
          "Delete network security rule from network security group": {
            "$ref": "./examples/NetworkSecurityGroupRuleDelete.json"
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the security rule.",
            "in": "path",
            "name": "securityRuleName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              }
            },
            "description": "Request successful. The operation returns the resulting SecurityRule resource."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Get the specified network security rule.",
        "operationId": "SecurityRules_Get",
        "x-ms-examples": {
          "Get network security rule in network security group": {
            "$ref": "./examples/NetworkSecurityGroupRuleGet.json"
          }
        }
      },
      "put": {
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the network security group.",
            "in": "path",
            "name": "networkSecurityGroupName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The name of the security rule.",
            "in": "path",
            "name": "securityRuleName",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "$ref": "#/components/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/components/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              }
            },
            "description": "Update successful. The operation returns the resulting SecurityRule resource."
          },
          "201": {
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityRule"
                }
              }
            },
            "description": "Create successful. The operation returns the resulting SecurityRule resource."
          }
        },
        "tags": [
          "SecurityRules"
        ],
        "description": "Creates or updates a security rule in the specified network security group.",
        "operationId": "SecurityRules_CreateOrUpdate",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SecurityRule"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/SecurityRule"
              }
            }
          },
          "description": "Parameters supplied to the create or update network security rule operation.",
          "required": true
        },
        "x-ms-examples": {
          "Create security rule": {
            "$ref": "./examples/NetworkSecurityGroupRuleCreate.json"
          }
        },
        "x-ms-long-running-operation": true
      }
    }
  },
  "components": {
    "parameters": {
      "ApiVersionParameter": {
        "description": "Client API version.",
        "in": "query",
        "name": "api-version",
        "required": true,
        "schema": {
          "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,
        "schema": {
          "type": "string"
        }
      }
    },
    "schemas": {
      "NetworkSecurityGroup": {
        "allOf": [
          {
            "$ref": "./network.json#/definitions/Resource"
          }
        ],
        "description": "NetworkSecurityGroup resource.",
        "properties": {
          "etag": {
            "description": "A unique read-only string that changes whenever the resource is updated.",
            "type": "string"
          },
          "properties": {
            "$ref": "#/components/schemas/NetworkSecurityGroupPropertiesFormat",
            "description": "Properties of the network security group",
            "x-ms-client-flatten": true
          }
        },
        "type": "object"
      },
      "NetworkSecurityGroupListResult": {
        "description": "Response for ListNetworkSecurityGroups API service call.",
        "properties": {
          "nextLink": {
            "description": "The URL to get the next set of results.",
            "type": "string"
          },
          "value": {
            "description": "A list of NetworkSecurityGroup resources.",
            "items": {
              "$ref": "#/components/schemas/NetworkSecurityGroup"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "NetworkSecurityGroupPropertiesFormat": {
        "description": "Network Security Group resource.",
        "properties": {
          "defaultSecurityRules": {
            "description": "The default security rules of network security group.",
            "items": {
              "$ref": "#/components/schemas/SecurityRule"
            },
            "type": "array"
          },
          "networkInterfaces": {
            "description": "A collection of references to network interfaces.",
            "items": {
              "$ref": "./networkInterface.json#/definitions/NetworkInterface"
            },
            "readOnly": true,
            "type": "array"
          },
          "provisioningState": {
            "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
            "type": "string"
          },
          "resourceGuid": {
            "description": "The resource GUID property of the network security group resource.",
            "type": "string"
          },
          "securityRules": {
            "description": "A collection of security rules of the network security group.",
            "items": {
              "$ref": "#/components/schemas/SecurityRule"
            },
            "type": "array"
          },
          "subnets": {
            "description": "A collection of references to subnets.",
            "items": {
              "$ref": "./virtualNetwork.json#/definitions/Subnet"
            },
            "readOnly": true,
            "type": "array"
          }
        },
        "type": "object"
      },
      "SecurityRule": {
        "allOf": [
          {
            "$ref": "./network.json#/definitions/SubResource"
          }
        ],
        "description": "Network security rule.",
        "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": "#/components/schemas/SecurityRulePropertiesFormat",
            "description": "Properties of the security rule",
            "x-ms-client-flatten": true
          }
        },
        "type": "object"
      },
      "SecurityRuleListResult": {
        "description": "Response for ListSecurityRule API service call. Retrieves all security rules that belongs to a network security group.",
        "properties": {
          "nextLink": {
            "description": "The URL to get the next set of results.",
            "type": "string"
          },
          "value": {
            "description": "The security rules in a network security group.",
            "items": {
              "$ref": "#/components/schemas/SecurityRule"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "SecurityRulePropertiesFormat": {
        "description": "Security rule resource.",
        "properties": {
          "access": {
            "description": "The network traffic is allowed or denied. Possible values are: 'Allow' and 'Deny'.",
            "enum": [
              "Allow",
              "Deny"
            ],
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "SecurityRuleAccess"
            }
          },
          "description": {
            "description": "A description for this rule. Restricted to 140 chars.",
            "type": "string"
          },
          "destinationAddressPrefix": {
            "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used.",
            "type": "string"
          },
          "destinationAddressPrefixes": {
            "description": "The destination address prefixes. CIDR or destination IP ranges.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "destinationPortRange": {
            "description": "The destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports.",
            "type": "string"
          },
          "destinationPortRanges": {
            "description": "The destination port ranges.",
            "items": {
              "description": "The destination port.",
              "type": "string"
            },
            "type": "array"
          },
          "direction": {
            "description": "The direction of the rule. The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are: 'Inbound' and 'Outbound'.",
            "enum": [
              "Inbound",
              "Outbound"
            ],
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "SecurityRuleDirection"
            }
          },
          "priority": {
            "description": "The priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule.",
            "format": "int32",
            "type": "integer"
          },
          "protocol": {
            "description": "Network protocol this rule applies to. Possible values are 'Tcp', 'Udp', and '*'.",
            "enum": [
              "Tcp",
              "Udp",
              "*"
            ],
            "type": "string",
            "x-ms-enum": {
              "modelAsString": true,
              "name": "SecurityRuleProtocol"
            }
          },
          "provisioningState": {
            "description": "The provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
            "type": "string"
          },
          "sourceAddressPrefix": {
            "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from. ",
            "type": "string"
          },
          "sourceAddressPrefixes": {
            "description": "The CIDR or source IP ranges.",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "sourcePortRange": {
            "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports.",
            "type": "string"
          },
          "sourcePortRanges": {
            "description": "The source port ranges.",
            "items": {
              "description": "The source port.",
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "protocol",
          "access",
          "direction"
        ],
        "type": "object"
      }
    },
    "securitySchemes": {
      "azure_auth": {
        "description": "Azure Active Directory OAuth2 Flow",
        "flows": {
          "implicit": {
            "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
            "scopes": {
              "user_impersonation": "impersonate your user account"
            }
          }
        },
        "type": "oauth2"
      }
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ]
}