{
  "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": "2018-02-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/2018-02-01/loadBalancer.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "network-loadBalancer",
    "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}/providers/Microsoft.Network/loadBalancers": {
      "get": {
        "description": "Gets all the load balancers in a subscription.",
        "operationId": "LoadBalancers_ListAll",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "List all load balancers": {
            "parameters": {
              "api-version": "2018-02-01",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                      "location": "westus",
                      "name": "lb",
                      "properties": {
                        "backendAddressPools": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb",
                            "name": "belb",
                            "properties": {
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "frontendIPConfigurations": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb",
                            "name": "felb",
                            "properties": {
                              "inboundNatRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb"
                                }
                              ],
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "privateIPAddress": "10.0.1.4",
                              "privateIPAllocationMethod": "Dynamic",
                              "provisioningState": "Succeeded",
                              "subnet": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                              }
                            }
                          }
                        ],
                        "inboundNatPools": [],
                        "inboundNatRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb",
                            "name": "inrlb",
                            "properties": {
                              "backendPort": 3389,
                              "enableFloatingIP": true,
                              "frontendIPConfiguration": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb"
                              },
                              "frontendPort": 3389,
                              "idleTimeoutInMinutes": 15,
                              "protocol": "Tcp",
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "loadBalancingRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                            "name": "rulelb",
                            "properties": {
                              "backendAddressPool": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb"
                              },
                              "backendPort": 80,
                              "enableFloatingIP": true,
                              "frontendIPConfiguration": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb"
                              },
                              "frontendPort": 80,
                              "idleTimeoutInMinutes": 15,
                              "loadDistribution": "Default",
                              "probe": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb"
                              },
                              "protocol": "Tcp",
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "outboundNatRules": [],
                        "probes": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb",
                            "name": "prlb",
                            "properties": {
                              "intervalInSeconds": 15,
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "numberOfProbes": 2,
                              "port": 80,
                              "protocol": "Http",
                              "provisioningState": "Succeeded",
                              "requestPath": "healthcheck.aspx"
                            }
                          }
                        ],
                        "provisioningState": "Succeeded"
                      },
                      "type": "Microsoft.Network/loadBalancers"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg2/providers/Microsoft.Network/loadBalancers/lb3",
                      "location": "westus",
                      "name": "lb3",
                      "properties": {
                        "backendAddressPools": [],
                        "frontendIPConfigurations": [],
                        "inboundNatPools": [],
                        "inboundNatRules": [],
                        "loadBalancingRules": [],
                        "outboundNatRules": [],
                        "probes": [],
                        "provisioningState": "Succeeded"
                      },
                      "type": "Microsoft.Network/loadBalancers"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers": {
      "get": {
        "description": "Gets all the load balancers in a resource group.",
        "operationId": "LoadBalancers_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 LoadBalancer resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "List load balancers in resource group": {
            "parameters": {
              "api-version": "2018-02-01",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                      "location": "westus",
                      "name": "lb",
                      "properties": {
                        "backendAddressPools": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb",
                            "name": "belb",
                            "properties": {
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "frontendIPConfigurations": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb",
                            "name": "felb",
                            "properties": {
                              "inboundNatRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb"
                                }
                              ],
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "privateIPAddress": "10.0.1.4",
                              "privateIPAllocationMethod": "Dynamic",
                              "provisioningState": "Succeeded",
                              "subnet": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                              }
                            }
                          }
                        ],
                        "inboundNatPools": [],
                        "inboundNatRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb",
                            "name": "inrlb",
                            "properties": {
                              "backendPort": 3389,
                              "enableFloatingIP": true,
                              "frontendIPConfiguration": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb"
                              },
                              "frontendPort": 3389,
                              "idleTimeoutInMinutes": 15,
                              "protocol": "Tcp",
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "loadBalancingRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                            "name": "rulelb",
                            "properties": {
                              "backendAddressPool": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/belb"
                              },
                              "backendPort": 80,
                              "enableFloatingIP": true,
                              "frontendIPConfiguration": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/felb"
                              },
                              "frontendPort": 80,
                              "idleTimeoutInMinutes": 15,
                              "loadDistribution": "Default",
                              "probe": {
                                "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb"
                              },
                              "protocol": "Tcp",
                              "provisioningState": "Succeeded"
                            }
                          }
                        ],
                        "outboundNatRules": [],
                        "probes": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/prlb",
                            "name": "prlb",
                            "properties": {
                              "intervalInSeconds": 15,
                              "loadBalancingRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                                }
                              ],
                              "numberOfProbes": 2,
                              "port": 80,
                              "protocol": "Http",
                              "provisioningState": "Succeeded",
                              "requestPath": "healthcheck.aspx"
                            }
                          }
                        ],
                        "provisioningState": "Succeeded"
                      },
                      "type": "Microsoft.Network/loadBalancers"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb2",
                      "location": "westus",
                      "name": "lb2",
                      "properties": {
                        "backendAddressPools": [],
                        "frontendIPConfigurations": [],
                        "inboundNatPools": [],
                        "inboundNatRules": [],
                        "loadBalancingRules": [],
                        "outboundNatRules": [],
                        "probes": [],
                        "provisioningState": "Succeeded"
                      },
                      "type": "Microsoft.Network/loadBalancers"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}": {
      "delete": {
        "description": "Deletes the specified load balancer.",
        "operationId": "LoadBalancers_Delete",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "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": "Request successful. Resource does not exist."
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "Delete load balancer": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the specified load balancer.",
        "operationId": "LoadBalancers_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "Expands referenced resources.",
            "in": "query",
            "name": "$expand",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns the resulting LoadBalancer resource.",
            "schema": {
              "$ref": "#/definitions/LoadBalancer"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "Get load balancer": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "westus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates a load balancer tags.",
        "operationId": "LoadBalancers_UpdateTags",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to update load balancer tags.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "description": "Tags object for patch operations.",
              "properties": {
                "tags": {
                  "additionalProperties": {
                    "type": "string"
                  },
                  "description": "Resource tags.",
                  "type": "object"
                }
              }
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Update successful. The operation returns the resulting LoadBalancer resource.",
            "schema": {
              "$ref": "#/definitions/LoadBalancer"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "Update load balancer tags": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "parameters": {
                "tags": {
                  "tag1": "value1",
                  "tag2": "value2"
                }
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "westus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "tags": {
                    "tag1": "value1",
                    "tag2": "value2"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "description": "Creates or updates a load balancer.",
        "operationId": "LoadBalancers_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the create or update load balancer operation.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/LoadBalancer"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Update successful. The operation returns the resulting LoadBalancer resource.",
            "schema": {
              "$ref": "#/definitions/LoadBalancer"
            }
          },
          "201": {
            "description": "Create successful. The operation returns the resulting LoadBalancer resource.",
            "schema": {
              "$ref": "#/definitions/LoadBalancer"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "Create load balancer": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "parameters": {
                "location": "eastus",
                "properties": {
                  "backendAddressPools": [
                    {
                      "name": "be-lb",
                      "properties": {}
                    }
                  ],
                  "frontendIPConfigurations": [
                    {
                      "name": "fe-lb",
                      "properties": {
                        "subnet": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                        }
                      }
                    }
                  ],
                  "inboundNatPools": [],
                  "inboundNatRules": [
                    {
                      "name": "in-nat-rule",
                      "properties": {
                        "backendPort": 3389,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 3389,
                        "idleTimeoutInMinutes": 15,
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "loadBalancingRules": [
                    {
                      "name": "rulelb",
                      "properties": {
                        "backendAddressPool": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                        },
                        "backendPort": 80,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 80,
                        "idleTimeoutInMinutes": 15,
                        "loadDistribution": "Default",
                        "probe": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                        },
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "outboundNatRules": [],
                  "probes": [
                    {
                      "name": "probe-lb",
                      "properties": {
                        "intervalInSeconds": 15,
                        "numberOfProbes": 2,
                        "port": 80,
                        "protocol": "Http",
                        "requestPath": "healthcheck.aspx"
                      }
                    }
                  ]
                }
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          },
          "Create load balancer with Frontend IP in Zone 1": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "parameters": {
                "location": "eastus",
                "properties": {
                  "backendAddressPools": [
                    {
                      "name": "be-lb",
                      "properties": {}
                    }
                  ],
                  "frontendIPConfigurations": [
                    {
                      "name": "fe-lb",
                      "properties": {
                        "subnet": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                        }
                      },
                      "zones": [
                        "1"
                      ]
                    }
                  ],
                  "inboundNatPools": [],
                  "inboundNatRules": [
                    {
                      "name": "in-nat-rule",
                      "properties": {
                        "backendPort": 3389,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 3389,
                        "idleTimeoutInMinutes": 15,
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "loadBalancingRules": [
                    {
                      "name": "rulelb",
                      "properties": {
                        "backendAddressPool": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                        },
                        "backendPort": 80,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 80,
                        "idleTimeoutInMinutes": 15,
                        "loadDistribution": "Default",
                        "probe": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                        },
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "outboundNatRules": [],
                  "probes": [
                    {
                      "name": "probe-lb",
                      "properties": {
                        "intervalInSeconds": 15,
                        "numberOfProbes": 2,
                        "port": 80,
                        "protocol": "Http",
                        "requestPath": "healthcheck.aspx"
                      }
                    }
                  ]
                }
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        },
                        "zones": [
                          "1"
                        ]
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        },
                        "zones": [
                          "1"
                        ]
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          },
          "Create load balancer with Standard SKU": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "parameters": {
                "location": "eastus",
                "properties": {
                  "backendAddressPools": [
                    {
                      "name": "be-lb",
                      "properties": {}
                    }
                  ],
                  "frontendIPConfigurations": [
                    {
                      "name": "fe-lb",
                      "properties": {
                        "subnet": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                        }
                      }
                    }
                  ],
                  "inboundNatPools": [],
                  "inboundNatRules": [
                    {
                      "name": "in-nat-rule",
                      "properties": {
                        "backendPort": 3389,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 3389,
                        "idleTimeoutInMinutes": 15,
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "loadBalancingRules": [
                    {
                      "name": "rulelb",
                      "properties": {
                        "backendAddressPool": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                        },
                        "backendPort": 80,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                        },
                        "frontendPort": 80,
                        "idleTimeoutInMinutes": 15,
                        "loadDistribution": "Default",
                        "probe": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                        },
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "outboundNatRules": [],
                  "probes": [
                    {
                      "name": "probe-lb",
                      "properties": {
                        "intervalInSeconds": 15,
                        "numberOfProbes": 2,
                        "port": 80,
                        "protocol": "Http",
                        "requestPath": "healthcheck.aspx"
                      }
                    }
                  ]
                },
                "sku": {
                  "name": "Standard"
                }
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Standard"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb",
                        "name": "be-lb",
                        "properties": {
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb",
                        "name": "fe-lb",
                        "properties": {
                          "inboundNatRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule"
                            }
                          ],
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [],
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/in-nat-rule",
                        "name": "in-nat-rule",
                        "properties": {
                          "backendPort": 3389,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 3389,
                          "idleTimeoutInMinutes": 15,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb",
                        "name": "rulelb",
                        "properties": {
                          "backendAddressPool": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/be-lb"
                          },
                          "backendPort": 80,
                          "disableOutboundSnat": false,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/fe-lb"
                          },
                          "frontendPort": 80,
                          "idleTimeoutInMinutes": 15,
                          "loadDistribution": "Default",
                          "probe": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb"
                          },
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "outboundNatRules": [],
                    "probes": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/probes/probe-lb",
                        "name": "probe-lb",
                        "properties": {
                          "intervalInSeconds": 15,
                          "loadBalancingRules": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                            }
                          ],
                          "numberOfProbes": 2,
                          "port": 80,
                          "protocol": "Http",
                          "provisioningState": "Succeeded",
                          "requestPath": "healthcheck.aspx"
                        }
                      }
                    ],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Standard"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          },
          "Create load balancer with inbound nat pool": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "parameters": {
                "location": "eastus",
                "properties": {
                  "backendAddressPools": [],
                  "frontendIPConfigurations": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
                      "name": "test",
                      "properties": {
                        "privateIPAllocationMethod": "Dynamic",
                        "subnet": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet",
                          "properties": {
                            "resourceNavigationLinks": [],
                            "serviceEndpoints": []
                          }
                        }
                      },
                      "zones": []
                    }
                  ],
                  "inboundNatPools": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
                      "name": "test",
                      "properties": {
                        "backendPort": 8888,
                        "enableFloatingIP": true,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test"
                        },
                        "frontendPortRangeEnd": 8085,
                        "frontendPortRangeStart": 8080,
                        "idleTimeoutInMinutes": 10,
                        "protocol": "Tcp"
                      }
                    }
                  ],
                  "inboundNatRules": [],
                  "loadBalancingRules": [],
                  "outboundNatRules": [],
                  "probes": []
                }
              },
              "resourceGroupName": "rg1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
                        "name": "test",
                        "properties": {
                          "inboundNatPools": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
                        "name": "test",
                        "properties": {
                          "backendPort": 8888,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test"
                          },
                          "frontendPortRangeEnd": 8085,
                          "frontendPortRangeStart": 8080,
                          "idleTimeoutInMinutes": 10,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "inboundNatRules": [],
                    "loadBalancingRules": [],
                    "outboundNatRules": [],
                    "probes": [],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb",
                  "location": "eastus",
                  "name": "lb",
                  "properties": {
                    "backendAddressPools": [],
                    "frontendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test",
                        "name": "test",
                        "properties": {
                          "inboundNatPools": [
                            {
                              "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test"
                            }
                          ],
                          "privateIPAddress": "10.0.1.4",
                          "privateIPAllocationMethod": "Dynamic",
                          "provisioningState": "Succeeded",
                          "subnet": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/virtualNetworks/lbvnet/subnets/lbsubnet"
                          }
                        }
                      }
                    ],
                    "inboundNatPools": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/inboundNatPools/test",
                        "name": "test",
                        "properties": {
                          "backendPort": 8888,
                          "enableFloatingIP": true,
                          "frontendIPConfiguration": {
                            "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/test"
                          },
                          "frontendPortRangeEnd": 8085,
                          "frontendPortRangeStart": 8080,
                          "idleTimeoutInMinutes": 10,
                          "protocol": "Tcp",
                          "provisioningState": "Succeeded"
                        }
                      }
                    ],
                    "inboundNatRules": [],
                    "loadBalancingRules": [],
                    "outboundNatRules": [],
                    "probes": [],
                    "provisioningState": "Succeeded"
                  },
                  "sku": {
                    "name": "Basic"
                  },
                  "type": "Microsoft.Network/loadBalancers"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools": {
      "get": {
        "description": "Gets all the load balancer backed address pools.",
        "operationId": "LoadBalancerBackendAddressPools_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer BackendAddressPool resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerBackendAddressPoolListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerBackendAddressPoolList": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend",
                      "name": "backend",
                      "properties": {
                        "backendIPConfigurations": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config"
                          }
                        ],
                        "loadBalancingRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                          }
                        ],
                        "provisioningState": "Succeeded"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/backendAddressPools/{backendAddressPoolName}": {
      "get": {
        "description": "Gets load balancer backend address pool.",
        "operationId": "LoadBalancerBackendAddressPools_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the backend address pool.",
            "in": "path",
            "name": "backendAddressPoolName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns LoadBalancer BackendAddressPool resource.",
            "schema": {
              "$ref": "#/definitions/BackendAddressPool"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerBackendAddressPoolGet": {
            "parameters": {
              "api-version": "2018-02-01",
              "backendAddressPoolName": "backend",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/backend",
                  "name": "backend",
                  "properties": {
                    "backendIPConfigurations": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/nic/ipConfigurations/default-ip-config"
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                      }
                    ],
                    "provisioningState": "Succeeded"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations": {
      "get": {
        "description": "Gets all the load balancer frontend IP configurations.",
        "operationId": "LoadBalancerFrontendIPConfigurations_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer FrontendIPConfiguration resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerFrontendIPConfigurationListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerFrontendIPConfigurationList": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend",
                      "name": "frontend",
                      "properties": {
                        "inboundNatRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb"
                          }
                        ],
                        "loadBalancingRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                          }
                        ],
                        "privateIPAddress": "10.0.1.4",
                        "privateIPAllocationMethod": "Dynamic",
                        "provisioningState": "Succeeded",
                        "subnet": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/frontendIPConfigurations/{frontendIPConfigurationName}": {
      "get": {
        "description": "Gets load balancer frontend IP configuration.",
        "operationId": "LoadBalancerFrontendIPConfigurations_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the frontend IP configuration.",
            "in": "path",
            "name": "frontendIPConfigurationName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns LoadBalancer FrontendIPConfiguration resource.",
            "schema": {
              "$ref": "#/definitions/FrontendIPConfiguration"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerFrontendIPConfigurationGet": {
            "parameters": {
              "api-version": "2018-02-01",
              "frontendIPConfigurationName": "frontend",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/frontendIPConfigurations/frontend",
                  "name": "frontend",
                  "properties": {
                    "inboundNatRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inrlb"
                      }
                    ],
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                      }
                    ],
                    "privateIPAddress": "10.0.1.4",
                    "privateIPAllocationMethod": "Dynamic",
                    "provisioningState": "Succeeded",
                    "subnet": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vnetlb/subnets/subnetlb"
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules": {
      "get": {
        "description": "Gets all the inbound nat rules in a load balancer.",
        "operationId": "InboundNatRules_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer InboundNatRule resources.",
            "schema": {
              "$ref": "#/definitions/InboundNatRuleListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "InboundNatRuleList": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1",
                      "name": "natRule1.1",
                      "properties": {
                        "backendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1"
                        },
                        "backendPort": 3389,
                        "enableFloatingIP": false,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                        },
                        "frontendPort": 3390,
                        "idleTimeoutInMinutes": 4,
                        "protocol": "Tcp",
                        "provisioningState": "Succeeded"
                      }
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.3",
                      "name": "natRule1.3",
                      "properties": {
                        "backendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/3/networkInterfaces/nic1/ipConfigurations/ip1"
                        },
                        "backendPort": 3389,
                        "enableFloatingIP": false,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                        },
                        "frontendPort": 3392,
                        "idleTimeoutInMinutes": 4,
                        "protocol": "Tcp",
                        "provisioningState": "Succeeded"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/inboundNatRules/{inboundNatRuleName}": {
      "delete": {
        "description": "Deletes the specified load balancer inbound nat rule.",
        "operationId": "InboundNatRules_Delete",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the inbound nat rule.",
            "in": "path",
            "name": "inboundNatRuleName",
            "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": "Request successful. Resource does not exist."
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "InboundNatRuleDelete": {
            "parameters": {
              "api-version": "2018-02-01",
              "inboundNatRuleName": "natRule1.1",
              "loadBalancerName": "lb1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the specified load balancer inbound nat rule.",
        "operationId": "InboundNatRules_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the inbound nat rule.",
            "in": "path",
            "name": "inboundNatRuleName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "Expands referenced resources.",
            "in": "query",
            "name": "$expand",
            "required": false,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns the resulting InboundNatRule resource.",
            "schema": {
              "$ref": "#/definitions/InboundNatRule"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "InboundNatRuleGet": {
            "parameters": {
              "api-version": "2018-02-01",
              "inboundNatRuleName": "natRule1.1",
              "loadBalancerName": "lb1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1",
                  "name": "natRule1.1",
                  "properties": {
                    "backendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1"
                    },
                    "backendPort": 3389,
                    "enableFloatingIP": false,
                    "frontendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                    },
                    "frontendPort": 3390,
                    "idleTimeoutInMinutes": 4,
                    "protocol": "Tcp",
                    "provisioningState": "Succeeded"
                  }
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates or updates a load balancer inbound nat rule.",
        "operationId": "InboundNatRules_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the inbound nat rule.",
            "in": "path",
            "name": "inboundNatRuleName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the create or update inbound nat rule operation.",
            "in": "body",
            "name": "inboundNatRuleParameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/InboundNatRule"
            }
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Update successful. The operation returns the resulting InboundNatRule resource.",
            "schema": {
              "$ref": "#/definitions/InboundNatRule"
            }
          },
          "201": {
            "description": "Create successful. The operation returns the resulting InboundNatRule resource.",
            "schema": {
              "$ref": "#/definitions/InboundNatRule"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "InboundNatRuleCreate": {
            "parameters": {
              "api-version": "2018-02-01",
              "inboundNatRuleName": "natRule1.1",
              "inboundNatRuleParameters": {
                "properties": {
                  "backendPort": 3389,
                  "enableFloatingIP": false,
                  "frontendIPConfiguration": {
                    "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                  },
                  "frontendPort": 3390,
                  "idleTimeoutInMinutes": 4,
                  "protocol": "Tcp"
                }
              },
              "loadBalancerName": "lb1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1",
                  "name": "natRule1.1",
                  "properties": {
                    "backendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1"
                    },
                    "backendPort": 3389,
                    "enableFloatingIP": false,
                    "frontendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                    },
                    "frontendPort": 3390,
                    "idleTimeoutInMinutes": 4,
                    "protocol": "Tcp",
                    "provisioningState": "Succeeded"
                  }
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/inboundNatRules/natRule1.1",
                  "name": "natRule1.1",
                  "properties": {
                    "backendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/nic1/ipConfigurations/ip1"
                    },
                    "backendPort": 3389,
                    "enableFloatingIP": false,
                    "frontendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/ip1"
                    },
                    "frontendPort": 3390,
                    "idleTimeoutInMinutes": 4,
                    "protocol": "Tcp",
                    "provisioningState": "Succeeded"
                  }
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules": {
      "get": {
        "description": "Gets all the load balancing rules in a load balancer.",
        "operationId": "LoadBalancerLoadBalancingRules_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer LoadBalancingRule resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerLoadBalancingRuleListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerLoadBalancingRuleList": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1",
                      "name": "rule1",
                      "properties": {
                        "backendAddressPool": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1"
                        },
                        "backendPort": 80,
                        "enableFloatingIP": false,
                        "frontendIPConfiguration": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend"
                        },
                        "frontendPort": 80,
                        "idleTimeoutInMinutes": 15,
                        "loadDistribution": "Default",
                        "probe": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1"
                        },
                        "protocol": "Tcp",
                        "provisioningState": "Succeeded"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/loadBalancingRules/{loadBalancingRuleName}": {
      "get": {
        "description": "Gets the specified load balancer load balancing rule.",
        "operationId": "LoadBalancerLoadBalancingRules_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancing rule.",
            "in": "path",
            "name": "loadBalancingRuleName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns the resulting LoadBalancingRule resource.",
            "schema": {
              "$ref": "#/definitions/LoadBalancingRule"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerLoadBalancingRuleGet": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb1",
              "loadBalancingRuleName": "rule1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/loadBalancingRules/rule1",
                  "name": "rule1",
                  "properties": {
                    "backendAddressPool": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/backendAddressPools/bepool1"
                    },
                    "backendPort": 80,
                    "enableFloatingIP": false,
                    "frontendIPConfiguration": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/frontendIPConfigurations/lbfrontend"
                    },
                    "frontendPort": 80,
                    "idleTimeoutInMinutes": 15,
                    "loadDistribution": "Default",
                    "probe": {
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb1/probes/probe1"
                    },
                    "protocol": "Tcp",
                    "provisioningState": "Succeeded"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/networkInterfaces": {
      "get": {
        "description": "Gets associated load balancer network interfaces.",
        "operationId": "LoadBalancerNetworkInterfaces_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of NetworkInterface resources.",
            "schema": {
              "description": "Response for the ListNetworkInterface API service call.",
              "properties": {
                "nextLink": {
                  "description": "The URL to get the next set of results.",
                  "readOnly": true,
                  "type": "string"
                },
                "value": {
                  "description": "A list of network interfaces in a resource group.",
                  "items": {
                    "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 network interface in a resource group.",
                    "properties": {
                      "etag": {
                        "description": "A unique read-only string that changes whenever the resource is updated.",
                        "type": "string"
                      },
                      "properties": {
                        "$ref": "#/definitions/NetworkInterfacePropertiesFormat",
                        "description": "Properties of the network interface.",
                        "x-ms-client-flatten": true
                      }
                    }
                  },
                  "type": "array"
                }
              }
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerNetworkInterfaceListSimple": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic",
                      "location": "westus",
                      "name": "mynic",
                      "properties": {
                        "dnsSettings": {
                          "appliedDnsServers": [],
                          "dnsServers": []
                        },
                        "enableAcceleratedNetworking": false,
                        "enableIPForwarding": false,
                        "ipConfigurations": [
                          {
                            "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/networkInterfaces/mynic/ipConfigurations/ipconfig1",
                            "name": "ipconfig1",
                            "properties": {
                              "loadBalancerBackendAddressPools": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool1"
                                }
                              ],
                              "loadBalancerInboundNatRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/inbound1"
                                }
                              ],
                              "privateIPAddress": "10.0.1.4",
                              "privateIPAddressVersion": "IPv4",
                              "privateIPAllocationMethod": "Dynamic",
                              "provisioningState": "Succeeded",
                              "subnet": {
                                "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/myVirtualNetwork/subnets/frontendSubnet"
                              }
                            }
                          }
                        ],
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000"
                      },
                      "type": "Microsoft.Network/networkInterfaces"
                    }
                  ]
                }
              }
            }
          },
          "LoadBalancerNetworkInterfaceListVmss": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic",
                      "name": "vmss1Nic",
                      "properties": {
                        "dnsSettings": {
                          "appliedDnsServers": [],
                          "dnsServers": [],
                          "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net"
                        },
                        "enableAcceleratedNetworking": false,
                        "enableIPForwarding": false,
                        "ipConfigurations": [
                          {
                            "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig",
                            "name": "vmss1IpConfig",
                            "properties": {
                              "loadBalancerBackendAddressPools": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool"
                                }
                              ],
                              "loadBalancerInboundNatRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.0"
                                }
                              ],
                              "primary": true,
                              "privateIPAddress": "10.0.0.4",
                              "privateIPAddressVersion": "IPv4",
                              "privateIPAllocationMethod": "Dynamic",
                              "provisioningState": "Succeeded",
                              "subnet": {
                                "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default"
                              }
                            }
                          }
                        ],
                        "macAddress": "00-00-00-00-00-00",
                        "primary": true,
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualMachine": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/0"
                        }
                      }
                    },
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic",
                      "name": "vmss1Nic",
                      "properties": {
                        "dnsSettings": {
                          "appliedDnsServers": [],
                          "dnsServers": [],
                          "internalDomainNameSuffix": "aaaaaaaaaaaaaaaaaaaaaaaaaa.dx.internal.cloudapp.net"
                        },
                        "enableAcceleratedNetworking": false,
                        "enableIPForwarding": false,
                        "ipConfigurations": [
                          {
                            "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1/networkInterfaces/vmss1Nic/ipConfigurations/vmss1IpConfig",
                            "name": "vmss1IpConfig",
                            "properties": {
                              "loadBalancerBackendAddressPools": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/backendAddressPools/bepool"
                                }
                              ],
                              "loadBalancerInboundNatRules": [
                                {
                                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/inboundNatRules/natpool.1"
                                }
                              ],
                              "primary": true,
                              "privateIPAddress": "10.0.0.5",
                              "privateIPAddressVersion": "IPv4",
                              "privateIPAllocationMethod": "Dynamic",
                              "provisioningState": "Succeeded",
                              "subnet": {
                                "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/virtualNetworks/vmss1Vnet/subnets/default"
                              }
                            }
                          }
                        ],
                        "macAddress": "00-00-00-00-00-00",
                        "primary": true,
                        "provisioningState": "Succeeded",
                        "resourceGuid": "00000000-0000-0000-0000-000000000000",
                        "virtualMachine": {
                          "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss1/virtualMachines/1"
                        }
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes": {
      "get": {
        "description": "Gets all the load balancer probes.",
        "operationId": "LoadBalancerProbes_List",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns a list of LoadBalancer Probe resources.",
            "schema": {
              "$ref": "#/definitions/LoadBalancerProbeListResult"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerProbeList": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                      "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/prlb",
                      "name": "prlb",
                      "properties": {
                        "intervalInSeconds": 15,
                        "loadBalancingRules": [
                          {
                            "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                          }
                        ],
                        "numberOfProbes": 2,
                        "port": 80,
                        "protocol": "Http",
                        "provisioningState": "Succeeded",
                        "requestPath": "healthcheck.aspx"
                      }
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/loadBalancers/{loadBalancerName}/probes/{probeName}": {
      "get": {
        "description": "Gets load balancer probe.",
        "operationId": "LoadBalancerProbes_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the load balancer.",
            "in": "path",
            "name": "loadBalancerName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the probe.",
            "in": "path",
            "name": "probeName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Request successful. The operation returns LoadBalancer Probe resource.",
            "schema": {
              "$ref": "#/definitions/Probe"
            }
          }
        },
        "tags": [
          "LoadBalancers"
        ],
        "x-ms-examples": {
          "LoadBalancerProbeGet": {
            "parameters": {
              "api-version": "2018-02-01",
              "loadBalancerName": "lb",
              "probeName": "probe1",
              "resourceGroupName": "testrg",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "etag": "W/\\\"00000000-0000-0000-0000-000000000000\\\"",
                  "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/probes/probe1",
                  "name": "probe1",
                  "properties": {
                    "intervalInSeconds": 15,
                    "loadBalancingRules": [
                      {
                        "id": "/subscriptions/subid/resourceGroups/testrg/providers/Microsoft.Network/loadBalancers/lb/loadBalancingRules/rulelb"
                      }
                    ],
                    "numberOfProbes": 2,
                    "port": 80,
                    "protocol": "Http",
                    "provisioningState": "Succeeded",
                    "requestPath": "healthcheck.aspx"
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "definitions": {
    "BackendAddressPool": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Pool of backend IP addresses.",
      "properties": {
        "etag": {
          "description": "A unique read-only string that changes whenever the resource is updated.",
          "type": "string"
        },
        "name": {
          "description": "Gets 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/BackendAddressPoolPropertiesFormat",
          "description": "Properties of load balancer backend address pool.",
          "x-ms-client-flatten": true
        }
      }
    },
    "BackendAddressPoolPropertiesFormat": {
      "description": "Properties of the backend address pool.",
      "properties": {
        "backendIPConfigurations": {
          "description": "Gets collection of references to IP addresses defined in network interfaces.",
          "items": {
            "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration"
          },
          "readOnly": true,
          "type": "array"
        },
        "loadBalancingRules": {
          "description": "Gets load balancing rules that use this backend address pool.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "outboundNatRule": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "provisioningState": {
          "description": "Get provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        }
      }
    },
    "FrontendIPConfiguration": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Frontend IP address of the load balancer.",
      "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/FrontendIPConfigurationPropertiesFormat",
          "description": "Properties of the load balancer probe.",
          "x-ms-client-flatten": true
        },
        "zones": {
          "description": "A list of availability zones denoting the IP allocated for the resource needs to come from.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      }
    },
    "FrontendIPConfigurationPropertiesFormat": {
      "description": "Properties of Frontend IP Configuration of the load balancer.",
      "properties": {
        "inboundNatPools": {
          "description": "Read only. Inbound pools URIs that use this frontend IP.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "inboundNatRules": {
          "description": "Read only. Inbound rules URIs that use this frontend IP.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "loadBalancingRules": {
          "description": "Gets load balancing rules URIs that use this frontend IP.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "outboundNatRules": {
          "description": "Read only. Outbound rules URIs that use this frontend IP.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "privateIPAddress": {
          "description": "The private IP address 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": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        },
        "publicIPAddress": {
          "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": "Public IP address resource.",
          "properties": {
            "etag": {
              "description": "A unique read-only string that changes whenever the resource is updated.",
              "type": "string"
            },
            "properties": {
              "$ref": "#/definitions/PublicIPAddressPropertiesFormat",
              "description": "Public IP address properties.",
              "x-ms-client-flatten": true
            },
            "sku": {
              "description": "SKU of a public IP address",
              "properties": {
                "name": {
                  "description": "Name of a public IP address SKU.",
                  "enum": [
                    "Basic",
                    "Standard"
                  ],
                  "type": "string",
                  "x-ms-enum": {
                    "modelAsString": true,
                    "name": "PublicIPAddressSkuName"
                  }
                }
              }
            },
            "zones": {
              "description": "A list of availability zones denoting the IP allocated for the resource needs to come from.",
              "items": {
                "type": "string"
              },
              "type": "array"
            }
          }
        },
        "subnet": {
          "allOf": [
            {
              "description": "Reference to another subresource.",
              "properties": {
                "id": {
                  "description": "Resource ID.",
                  "type": "string"
                }
              },
              "x-ms-azure-resource": true
            }
          ],
          "description": "Subnet in a virtual network resource.",
          "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/SubnetPropertiesFormat",
              "description": "Properties of the subnet.",
              "x-ms-client-flatten": true
            }
          }
        }
      }
    },
    "InboundNatPool": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Inbound NAT pool of the load balancer.",
      "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/InboundNatPoolPropertiesFormat",
          "description": "Properties of load balancer inbound nat pool.",
          "x-ms-client-flatten": true
        }
      }
    },
    "InboundNatPoolPropertiesFormat": {
      "description": "Properties of Inbound NAT pool.",
      "properties": {
        "backendPort": {
          "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535.",
          "format": "int32",
          "type": "integer"
        },
        "enableFloatingIP": {
          "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint.",
          "type": "boolean"
        },
        "frontendIPConfiguration": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "frontendPortRangeEnd": {
          "description": "The last port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65535.",
          "format": "int32",
          "type": "integer"
        },
        "frontendPortRangeStart": {
          "description": "The first port number in the range of external ports that will be used to provide Inbound Nat to NICs associated with a load balancer. Acceptable values range between 1 and 65534.",
          "format": "int32",
          "type": "integer"
        },
        "idleTimeoutInMinutes": {
          "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP.",
          "format": "int32",
          "type": "integer"
        },
        "protocol": {
          "$ref": "#/definitions/TransportProtocol"
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        }
      },
      "required": [
        "protocol",
        "frontendPortRangeStart",
        "frontendPortRangeEnd",
        "backendPort"
      ]
    },
    "InboundNatRule": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Inbound NAT rule of the load balancer.",
      "properties": {
        "etag": {
          "description": "A unique read-only string that changes whenever the resource is updated.",
          "type": "string"
        },
        "name": {
          "description": "Gets 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/InboundNatRulePropertiesFormat",
          "description": "Properties of load balancer inbound nat rule.",
          "x-ms-client-flatten": true
        }
      }
    },
    "InboundNatRuleListResult": {
      "description": "Response for ListInboundNatRule API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of inbound nat rules in a load balancer.",
          "items": {
            "$ref": "#/definitions/InboundNatRule"
          },
          "type": "array"
        }
      }
    },
    "InboundNatRulePropertiesFormat": {
      "description": "Properties of the inbound NAT rule.",
      "properties": {
        "backendIPConfiguration": {
          "$ref": "./networkInterface.json#/definitions/NetworkInterfaceIPConfiguration",
          "description": "A reference to a private IP address defined on a network interface of a VM. Traffic sent to the frontend port of each of the frontend IP configurations is forwarded to the backend IP.",
          "readOnly": true
        },
        "backendPort": {
          "description": "The port used for the internal endpoint. Acceptable values range from 1 to 65535.",
          "format": "int32",
          "type": "integer"
        },
        "enableFloatingIP": {
          "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint.",
          "type": "boolean"
        },
        "frontendIPConfiguration": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "frontendPort": {
          "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values range from 1 to 65534.",
          "format": "int32",
          "type": "integer"
        },
        "idleTimeoutInMinutes": {
          "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP.",
          "format": "int32",
          "type": "integer"
        },
        "protocol": {
          "description": "The transport protocol for the endpoint. Possible values are 'Udp' or 'Tcp' or 'All'.",
          "enum": [
            "Udp",
            "Tcp",
            "All"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "TransportProtocol"
          }
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        }
      }
    },
    "LoadBalancer": {
      "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": "LoadBalancer resource",
      "properties": {
        "etag": {
          "description": "A unique read-only string that changes whenever the resource is updated.",
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/LoadBalancerPropertiesFormat",
          "description": "Properties of load balancer.",
          "x-ms-client-flatten": true
        },
        "sku": {
          "$ref": "#/definitions/LoadBalancerSku",
          "description": "The load balancer SKU."
        }
      }
    },
    "LoadBalancerBackendAddressPoolListResult": {
      "description": "Response for ListBackendAddressPool API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of backend address pools in a load balancer.",
          "items": {
            "$ref": "#/definitions/BackendAddressPool"
          },
          "type": "array"
        }
      }
    },
    "LoadBalancerFrontendIPConfigurationListResult": {
      "description": "Response for ListFrontendIPConfiguration API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of frontend IP configurations in a load balancer.",
          "items": {
            "$ref": "#/definitions/FrontendIPConfiguration"
          },
          "type": "array"
        }
      }
    },
    "LoadBalancerListResult": {
      "description": "Response for ListLoadBalancers API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of load balancers in a resource group.",
          "items": {
            "$ref": "#/definitions/LoadBalancer"
          },
          "type": "array"
        }
      }
    },
    "LoadBalancerLoadBalancingRuleListResult": {
      "description": "Response for ListLoadBalancingRule API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of load balancing rules in a load balancer.",
          "items": {
            "$ref": "#/definitions/LoadBalancingRule"
          },
          "type": "array"
        }
      }
    },
    "LoadBalancerProbeListResult": {
      "description": "Response for ListProbe API service call.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "A list of probes in a load balancer.",
          "items": {
            "$ref": "#/definitions/Probe"
          },
          "type": "array"
        }
      }
    },
    "LoadBalancerPropertiesFormat": {
      "description": "Properties of the load balancer.",
      "properties": {
        "backendAddressPools": {
          "description": "Collection of backend address pools used by a load balancer",
          "items": {
            "$ref": "#/definitions/BackendAddressPool"
          },
          "type": "array"
        },
        "frontendIPConfigurations": {
          "description": "Object representing the frontend IPs to be used for the load balancer",
          "items": {
            "$ref": "#/definitions/FrontendIPConfiguration"
          },
          "type": "array"
        },
        "inboundNatPools": {
          "description": "Defines an external port range for inbound NAT to a single backend port on NICs associated with a load balancer. Inbound NAT rules are created automatically for each NIC associated with the Load Balancer using an external port from this range. Defining an Inbound NAT pool on your Load Balancer is mutually exclusive with defining inbound Nat rules. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an inbound NAT pool. They have to reference individual inbound NAT rules.",
          "items": {
            "$ref": "#/definitions/InboundNatPool"
          },
          "type": "array"
        },
        "inboundNatRules": {
          "description": "Collection of inbound NAT Rules used by a load balancer. Defining inbound NAT rules on your load balancer is mutually exclusive with defining an inbound NAT pool. Inbound NAT pools are referenced from virtual machine scale sets. NICs that are associated with individual virtual machines cannot reference an Inbound NAT pool. They have to reference individual inbound NAT rules.",
          "items": {
            "$ref": "#/definitions/InboundNatRule"
          },
          "type": "array"
        },
        "loadBalancingRules": {
          "description": "Object collection representing the load balancing rules Gets the provisioning ",
          "items": {
            "$ref": "#/definitions/LoadBalancingRule"
          },
          "type": "array"
        },
        "outboundNatRules": {
          "description": "The outbound NAT rules.",
          "items": {
            "$ref": "#/definitions/OutboundNatRule"
          },
          "type": "array"
        },
        "probes": {
          "description": "Collection of probe objects used in the load balancer",
          "items": {
            "$ref": "#/definitions/Probe"
          },
          "type": "array"
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        },
        "resourceGuid": {
          "description": "The resource GUID property of the load balancer resource.",
          "type": "string"
        }
      }
    },
    "LoadBalancerSku": {
      "description": "SKU of a load balancer",
      "properties": {
        "name": {
          "description": "Name of a load balancer SKU.",
          "enum": [
            "Basic",
            "Standard"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "LoadBalancerSkuName"
          }
        }
      }
    },
    "LoadBalancingRule": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "A load balancing rule for a load balancer.",
      "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/LoadBalancingRulePropertiesFormat",
          "description": "Properties of load balancer load balancing rule.",
          "x-ms-client-flatten": true
        }
      }
    },
    "LoadBalancingRulePropertiesFormat": {
      "description": "Properties of the load balancer.",
      "properties": {
        "backendAddressPool": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "backendPort": {
          "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"",
          "format": "int32",
          "type": "integer"
        },
        "disableOutboundSnat": {
          "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule.",
          "type": "boolean"
        },
        "enableFloatingIP": {
          "description": "Configures a virtual machine's endpoint for the floating IP capability required to configure a SQL AlwaysOn Availability Group. This setting is required when using the SQL AlwaysOn Availability Groups in SQL server. This setting can't be changed after you create the endpoint.",
          "type": "boolean"
        },
        "frontendIPConfiguration": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "frontendPort": {
          "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 0 and 65534. Note that value 0 enables \"Any Port\"",
          "format": "int32",
          "type": "integer"
        },
        "idleTimeoutInMinutes": {
          "description": "The timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. The default value is 4 minutes. This element is only used when the protocol is set to TCP.",
          "format": "int32",
          "type": "integer"
        },
        "loadDistribution": {
          "description": "The load distribution policy for this rule. Possible values are 'Default', 'SourceIP', and 'SourceIPProtocol'.",
          "enum": [
            "Default",
            "SourceIP",
            "SourceIPProtocol"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "LoadDistribution"
          }
        },
        "probe": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "protocol": {
          "$ref": "#/definitions/TransportProtocol"
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        }
      },
      "required": [
        "protocol",
        "frontendPort"
      ]
    },
    "NetworkInterfacePropertiesFormat": {},
    "OutboundNatRule": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Outbound NAT pool of the load balancer.",
      "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/OutboundNatRulePropertiesFormat",
          "description": "Properties of load balancer outbound nat rule.",
          "x-ms-client-flatten": true
        }
      }
    },
    "OutboundNatRulePropertiesFormat": {
      "description": "Outbound NAT pool of the load balancer.",
      "properties": {
        "allocatedOutboundPorts": {
          "description": "The number of outbound ports to be used for NAT.",
          "format": "int32",
          "type": "integer"
        },
        "backendAddressPool": {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        },
        "frontendIPConfigurations": {
          "description": "The Frontend IP addresses of the load balancer.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "type": "array"
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the PublicIP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        }
      },
      "required": [
        "backendAddressPool"
      ]
    },
    "Probe": {
      "allOf": [
        {
          "description": "Reference to another subresource.",
          "properties": {
            "id": {
              "description": "Resource ID.",
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "A load balancer probe.",
      "properties": {
        "etag": {
          "description": "A unique read-only string that changes whenever the resource is updated.",
          "type": "string"
        },
        "name": {
          "description": "Gets 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/ProbePropertiesFormat",
          "description": "Properties of load balancer probe.",
          "x-ms-client-flatten": true
        }
      }
    },
    "ProbePropertiesFormat": {
      "description": "Load balancer probe resource.",
      "properties": {
        "intervalInSeconds": {
          "description": "The interval, in seconds, for how frequently to probe the endpoint for health status. Typically, the interval is slightly less than half the allocated timeout period (in seconds) which allows two full probes before taking the instance out of rotation. The default value is 15, the minimum value is 5.",
          "format": "int32",
          "type": "integer"
        },
        "loadBalancingRules": {
          "description": "The load balancer rules that use this probe.",
          "items": {
            "description": "Reference to another subresource.",
            "properties": {
              "id": {
                "description": "Resource ID.",
                "type": "string"
              }
            },
            "x-ms-azure-resource": true
          },
          "readOnly": true,
          "type": "array"
        },
        "numberOfProbes": {
          "description": "The number of probes where if no response, will result in stopping further traffic from being delivered to the endpoint. This values allows endpoints to be taken out of rotation faster or slower than the typical times used in Azure.",
          "format": "int32",
          "type": "integer"
        },
        "port": {
          "description": "The port for communicating the probe. Possible values range from 1 to 65535, inclusive.",
          "format": "int32",
          "type": "integer"
        },
        "protocol": {
          "description": "The protocol of the end point. Possible values are: 'Http', 'Tcp' or 'Https'. If 'Tcp' is specified, a received ACK is required for the probe to be successful. If 'Http' or 'Https' is specified, a 200 OK response from the specifies URI is required for the probe to be successful.",
          "enum": [
            "Http",
            "Tcp",
            "Https"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "ProbeProtocol"
          }
        },
        "provisioningState": {
          "description": "Gets the provisioning state of the public IP resource. Possible values are: 'Updating', 'Deleting', and 'Failed'.",
          "type": "string"
        },
        "requestPath": {
          "description": "The URI used for requesting health status from the VM. Path is required if a protocol is set to http. Otherwise, it is not allowed. There is no default value.",
          "type": "string"
        }
      },
      "required": [
        "protocol",
        "port"
      ]
    },
    "PublicIPAddressPropertiesFormat": {},
    "SubnetPropertiesFormat": {},
    "TransportProtocol": {
      "description": "The transport protocol for the endpoint. Possible values are 'Udp' or 'Tcp' or 'All'.",
      "enum": [
        "Udp",
        "Tcp",
        "All"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "TransportProtocol"
      }
    }
  }
}