LoadBalancingRule

A load balancing rule for a load balancer.

Microsoft AzureHigh AvailabilityLayer 4Load BalancingNetworks

Properties

Name Type Description
id string Resource ID.
name string Name of the resource.
type string Resource type.
properties object Properties of load balancer load balancing rule.
etag string A unique read-only string that changes whenever the resource is updated.
View JSON Schema on GitHub

JSON Schema

microsoft-azure-load-balancer-load-balancing-rule-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/microsoft-azure-load-balancer/json-schema/microsoft-azure-load-balancer-load-balancing-rule-schema.json",
  "title": "LoadBalancingRule",
  "description": "A load balancing rule for a load balancer.",
  "x-generated": "2026-11-12",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/microsoft-azure-load-balancer-load-balancers-api-openapi.yml#/components/schemas/LoadBalancingRule",
  "type": "object",
  "properties": {
    "properties": {
      "$ref": "#/$defs/LoadBalancingRulePropertiesFormat",
      "description": "Properties of load balancer load balancing rule.",
      "x-ms-client-flatten": true
    },
    "etag": {
      "type": "string",
      "description": "A unique read-only string that changes whenever the resource is updated.",
      "readOnly": true
    }
  },
  "allOf": [
    {
      "$ref": "#/$defs/SubResourceModel"
    }
  ],
  "$defs": {
    "LoadBalancingRulePropertiesFormat": {
      "type": "object",
      "description": "Properties of the load balancer.",
      "properties": {
        "frontendIPConfiguration": {
          "$ref": "#/$defs/SubResource",
          "description": "A reference to frontend IP addresses."
        },
        "backendAddressPool": {
          "$ref": "#/$defs/SubResource",
          "description": "A reference to a pool of DIPs. Inbound traffic is randomly load balanced across IPs in the backend IPs."
        },
        "backendAddressPools": {
          "type": "array",
          "description": "An array of references to pool of DIPs.",
          "items": {
            "$ref": "#/$defs/SubResource"
          }
        },
        "probe": {
          "$ref": "#/$defs/SubResource",
          "description": "The reference to the load balancer probe used by the load balancing rule."
        },
        "protocol": {
          "$ref": "#/$defs/TransportProtocol",
          "description": "The reference to the transport protocol used by the load balancing rule."
        },
        "loadDistribution": {
          "$ref": "#/$defs/LoadDistribution",
          "description": "The load distribution policy for this rule."
        },
        "frontendPort": {
          "type": "integer",
          "format": "int32",
          "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\"."
        },
        "backendPort": {
          "type": "integer",
          "format": "int32",
          "description": "The port used for internal connections on the endpoint. Acceptable values are between 0 and 65535. Note that value 0 enables \"Any Port\"."
        },
        "idleTimeoutInMinutes": {
          "type": "integer",
          "format": "int32",
          "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."
        },
        "enableFloatingIP": {
          "type": "boolean",
          "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."
        },
        "enableTcpReset": {
          "type": "boolean",
          "description": "Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP."
        },
        "disableOutboundSnat": {
          "type": "boolean",
          "description": "Configures SNAT for the VMs in the backend pool to use the publicIP address specified in the frontend of the load balancing rule."
        },
        "enableConnectionTracking": {
          "type": "boolean",
          "description": "Enables UDP flow tracking for the load balancing rule. This property is retained for rule-level configuration compatibility. When enableConnectionTracking is specified on the associated frontend IP configuration, the frontend setting takes precedence."
        },
        "provisioningState": {
          "$ref": "#/$defs/ProvisioningState",
          "description": "The provisioning state of the load balancing rule resource.",
          "readOnly": true
        }
      },
      "required": [
        "protocol",
        "frontendPort"
      ]
    },
    "LoadDistribution": {
      "type": "string",
      "description": "The load distribution policy for this rule.",
      "enum": [
        "Default",
        "SourceIP",
        "SourceIPProtocol"
      ],
      "x-ms-enum": {
        "name": "LoadDistribution",
        "modelAsString": true,
        "values": [
          {
            "name": "Default",
            "value": "Default",
            "description": "Default"
          },
          {
            "name": "SourceIP",
            "value": "SourceIP",
            "description": "SourceIP"
          },
          {
            "name": "SourceIPProtocol",
            "value": "SourceIPProtocol",
            "description": "SourceIPProtocol"
          }
        ]
      }
    },
    "ProvisioningState": {
      "type": "string",
      "description": "Provisioning states of a resource.",
      "enum": [
        "Failed",
        "Succeeded",
        "Canceled",
        "Creating",
        "Updating",
        "Deleting"
      ],
      "x-ms-enum": {
        "name": "ProvisioningState",
        "modelAsString": true,
        "values": [
          {
            "name": "Failed",
            "value": "Failed",
            "description": "Failed"
          },
          {
            "name": "Succeeded",
            "value": "Succeeded",
            "description": "Succeeded"
          },
          {
            "name": "Canceled",
            "value": "Canceled",
            "description": "Canceled"
          },
          {
            "name": "Creating",
            "value": "Creating",
            "description": "Creating"
          },
          {
            "name": "Updating",
            "value": "Updating",
            "description": "Updating"
          },
          {
            "name": "Deleting",
            "value": "Deleting",
            "description": "Deleting"
          }
        ]
      }
    },
    "SubResource": {
      "type": "object",
      "description": "Reference to another subresource.",
      "properties": {
        "id": {
          "type": "string",
          "description": "Resource ID."
        }
      }
    },
    "SubResourceModel": {
      "type": "object",
      "description": "Reference to another subresource.",
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the resource."
        },
        "type": {
          "type": "string",
          "description": "Resource type.",
          "readOnly": true
        }
      },
      "allOf": [
        {
          "$ref": "#/$defs/SubResource"
        }
      ],
      "x-ms-azure-resource": true
    },
    "TransportProtocol": {
      "type": "string",
      "description": "The transport protocol for the endpoint.",
      "enum": [
        "Udp",
        "Tcp",
        "All",
        "Quic"
      ],
      "x-ms-enum": {
        "name": "TransportProtocol",
        "modelAsString": true,
        "values": [
          {
            "name": "Udp",
            "value": "Udp",
            "description": "Udp"
          },
          {
            "name": "Tcp",
            "value": "Tcp",
            "description": "Tcp"
          },
          {
            "name": "All",
            "value": "All",
            "description": "All"
          },
          {
            "name": "Quic",
            "value": "Quic",
            "description": "Quic"
          }
        ]
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/microsoft-azure-load-balancer-load-balancing-rule"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.