{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "PUT JSON Schema for loadBalancerMuxes",
"type": "object",
"definitions": {
"resourceRef": {
"type": "object",
"additionalProperties": false,
"properties": {
"resourceRef": {
"type": "string"
}
},
"required": [
"resourceRef"
]
},
"protocol": {
"enum": [ "Tcp", "Udp", "Http", "Https", "GRE", "ESP", "All" ]
},
"provisioningState": {
"enum": [ "Succeeded", "Updating", "Deleting", "Failed" ]
},
"peerRouterConfigurations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"routerName": {
"type": "string"
},
"routerIPAddress": {
"type": "string",
"format": "ipv4"
},
"peerASN": {
"type": "integer"
},
"id": {
"type": "string"
}
},
"required": [
"routerName",
"routerIPAddress",
"peerASN",
"id"
]
}
}
},
"properties": {
"resourceRef": {
"type": "string"
},
"resourceId": {
"type": "string"
},
"instanceId": {
"type": "string"
},
"properties": {
"type": "object",
"properties": {
"provisioningState": {
"$ref": "#/definitions/provisioningState"
},
"routerConfiguration": {
"type": "object",
"properties": {
"localASN": {
"type": "integer"
},
"peerRouterConfigurations": {
"$ref": "#/definitions/peerRouterConfigurations"
}
},
"required": [
"localASN",
"peerRouterConfigurations"
]
},
"virtualServer": {
"$ref": "#/definitions/resourceRef"
},
"connections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"managementAddresses": {
"type": "array",
"items": {
"type": "string",
"format": "ipv4"
}
},
"credential": {
"$ref": "#/definitions/resourceRef"
},
"credentialType": {
"type": "string"
},
"protocol": {
"$ref": "#/definitions/protocol"
},
"port": {
"type": "string"
}
},
"required": [
"managementAddresses",
"credential",
"credentialType"
]
}
}
},
"required": [
"routerConfiguration",
"virtualServer"
]
}
},
"required": [
"properties"
]
}