{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "GET ALL JSON Schema for service Insertions",
"type": "object",
"definitions": {
"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}$"
},
"resourceMetadata": {
"properties": {
"client": {
"type": "string"
},
"tenantId": {
"type": "string"
},
"groupId": {
"type": "string"
},
"resourceName": {
"type": "string"
},
"originalHref": {
"type": "string"
}
}
},
"provisioningState": {
"enum": [ "Succeeded", "Updating", "Deleting", "Failed" ]
},
"serviceInsertions": {
"type": "object",
"properties": {
"resourceRef": {
"type": "string"
},
"resourceId": {
"type": "string"
},
"etag": {
"type": "string"
},
"instanceId": {
"type": "string"
},
"resourceMetadata": {
"$ref": "#/definitions/resourceMetadata"
},
"properties": {
"type": "object",
"properties": {
"provisioningState": {
"$ref": "#/definitions/provisioningState"
},
"serviceInsertionRules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resourceRef": {
"type": "string"
},
"resourceId": {
"type": "string"
},
"resourceMetadata": {
"$ref": "#/definitions/resourceMetadata"
},
"etag": {
"type": "string"
},
"instanceId": {
"$ref": "#/definitions/GUID"
},
"properties": {
"type": "object",
"properties": {
"provisioningState": {
"$ref": "#/definitions/provisioningState"
},
"description": {
"type": "string"
},
"protocol": {
"enum": [ "All", "Tcp", "Udp", "Http" ]
},
"sourcePortRangeStart": {
"type": "integer"
},
"sourcePortRangeEnd": {
"type": "integer"
},
"destinationPortRangeStart": {
"type": "integer"
},
"destinationPortRangeEnd": {
"type": "integer"
},
"sourceSubnets": {
"type": "array",
"items": {
"type": "string"
}
},
"destinationSubnets": {
"type": "array",
"items": {
"type": "string"
}
}
},
"required": [
"provisioningState",
"protocol",
"sourcePortRangeStart",
"sourcePortRangeEnd",
"destinationPortRangeStart",
"destinationPortRangeEnd",
"sourceSubnets",
"destinationSubnets"
]
}
},
"required": [
"resourceRef",
"resourceId",
"etag",
"instanceId",
"properties"
]
}
},
"serviceInsertionElements": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resourceRef": {
"type": "string"
},
"resourceId": {
"type": "string"
},
"resourceMetadata": {
"$ref": "#/definitions/resourceMetadata"
},
"etag": {
"type": "string"
},
"instanceId": {
"$ref": "#/definitions/GUID"
},
"properties": {
"type": "object",
"properties": {
"provisioningState": {
"$ref": "#/definitions/provisioningState"
},
"description": {
"type": "string"
},
"order": {
"type": "integer"
}
},
"required": [
"provisioningState",
"order"
]
}
},
"required": [
"resourceRef",
"resourceId",
"etag",
"instanceId",
"properties"
]
}
},
"priority": {
"type": "integer"
},
"ipConfigurations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resourceRef": {
"type": "string"
}
},
"required": [
"resourceRef"
]
}
},
"subnets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resourceRef": {
"type": "string"
}
},
"required": [
"resourceRef"
]
}
}
},
"required": [
"provisioningState",
"serviceInsertionRules",
"serviceInsertionElements",
"priority"
]
}
},
"required": [
"resourceRef",
"resourceId",
"etag",
"instanceId",
"properties"
]
},
"ServiceInsertionsArray": {
"type": "array",
"minItems": 0,
"uniqueItems": true,
"items": { "$ref": "#/definitions/serviceInsertions" }
}
},
"properties": {
"value": { "$ref": "#/definitions/ServiceInsertionsArray" },
"nextLink": {
"type": "string",
"format": "uri",
"default": ""
}
},
"required": [ "nextLink" ]
}