6.5.5.4 GET schema v2

 {
   "$schema": "http://json-schema.org/draft-04/schema#",
   "title": "GET JSON Schema for loadbalancers frontendipconfigurations v2",
   "type": "object",
   "definitions": {
     "resourceRef": {
       "type": "object",
       "additionalProperties": false,
       "properties": {
         "resourceRef": {
           "type": "string"
         }
       },
       "required": [
         "resourceRef"
       ]
     },
     "GUID": {
       "type": "string",
       "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$"
     },
     "protocol": {
       "enum": [ "Tcp", "Udp", "Http", "Https", "GRE", "ESP", "All" ]
     },
     "ipAllocationMethod": {
       "enum": [ "Dynamic", "Static", "Unmanaged" ]
     },
   "provisioningState": {
     "enum": [ "Succeeded", "Updating", "Deleting", "Failed" ]
   },
   "resourceCounters": {
     "type": "array",
     "items": {
     "type": "object",
       "properties": {
         "name": {
           "enum": [
             "TotalPackets",
             "DroppedPackets",
             "DroppedPacketsIPv6",
             "FlowEntries",
             "DroppedFlowEntries",
             "SynPackets",
             "AverageBandwidth",
             "PacketsPerSecond"
           ]
         },
         "unit": {
           "enum": [ "Decimal", "Seconds", "MilliSeconds" ]
         },
         "currentValue": {
           "type": "number"
         },
         "context": {
           "type": "object",
           "properties": {
             "source": {
               "enum": [ "SoftwareLoadBalancer" ]
             },
             "category": {
               "enum": [ "Performance" ]
             }
           },
           "required": [ "source","category" ]
         }
       },
       "required": [ "name", "unit", "currentValue", "context" ]
     }
   }
   },
   "properties": {
     "resourceRef": {
       "type": "string"
     },
     "resourceId": {
       "type": "string"
     },
     "etag": {
       "type": "string"
     },
     "instanceId": {
       "$ref": "#/definitions/GUID"
     },
     "properties": {
       "type": "object",
       "properties": {
       "provisioningState": {
         "$ref": "#/definitions/provisioningState"
       },
       "publicIPAddress": {
           "$ref": "#/definitions/resourceRef"
         },
         "privateIPAddress": {
           "type": "string",
           "oneOf": [
           {"format": "ipv4"},
           {"format": "ipv6"}
         ]
         },
         "privateIPAllocationMethod": {
           "$ref": "#/definitions/ipAllocationMethod"
         },
         "subnet": {
           "$ref": "#/definitions/resourceRef"
         },
         "loadBalancingRules": {
           "type": "array",
           "items": {
             "$ref": "#/definitions/resourceRef"
           }
         },
         "inboundNatRules": {
           "type": "array",
           "items": {
             "$ref": "#/definitions/resourceRef"
           }
         },
       "outboundNatRules": {
          "type": "array",
         "items": {
           "$ref": "#/definitions/resourceRef"
         }
       },
       "counters": {
         "$ref": "#/definitions/resourceCounters"
       }
   },
     "required": [
       "provisioningState"
     ],
     "oneOf": [
       {
         "type": "object",
         "required": [ "publicIPAddress" ]
       },
       {
         "type": "object",
         "required": [ "privateIPAddress" ]
       }
     ]
     }
   },
   "required": [
     "resourceRef",
     "resourceId",
     "etag",
     "instanceId",
     "properties"
   ]
 }