{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "GET JSON Schema for networkInterfaces",
"type": "object",
"definitions": {
"resourceMetadata": {
"properties": {
"client": {
"type": "string"
},
"tenantId": {
"type": "string"
},
"groupId": {
"type": "string"
},
"resourceName": {
"type": "string"
},
"originalHref": {
"type": "string"
}
}
},
"resourceRef": {
"type": "object",
"additionalProperties": false,
"properties": {
"resourceRef": {
"type": "string"
}
},
"required": [
"resourceRef"
]
},
"portSettings": {
"type": "object",
"additionalProperties": false,
"properties": {
"macSpoofingEnabled": {
"enum": [ "Eanbled", "Disabled" ],
"default" : "Disabled"
},
"arpGuardEnabled": {
"enum": [ "Eanbled", "Disabled" ],
"default" : "Disabled"
},
"dhcpGuardEnabled": {
"enum": [ "Eanbled", "Disabled" ],
"default" : "Disabled"
},
"stormLimit": {
"type": "integer",
"default": 0
},
"portFlowLimit": {
"type": "integer",
"default": 0
},
"iovWeight": {
"type": "integer",
"default": 0
},
"iovInterruptModeration": {
"enum": [ "On", "Off" ],
"default" : "Off"
},
"iovQueuePairsRequested": {
"type": "integer",
"default": 0
},
"vmqWeight": {
"type": "integer",
"default": 100
}
}
},
"ipConfigurations": {
"type": "array",
"items": {
"type": "object",
"properties": {
"resourceId": {
"type": "string"
},
"resourceMetadata": {
"$ref": "#/definitions/resourceMetadata"
},
"properties": {
"type": "object",
"properties": {
"privateIPAllocationMethod": {
"enum": [ "Static", "Dynamic", "Unmanaged" ]
},
"privateIPAddress": {
"type": "string",
"format": "ipv4"
},
"subnet": {
"$ref": "#/definitions/resourceRef"
},
"accessControlList": {
"$ref": "#/definitions/resourceRef"
}
},
"required": [
"privateIPAllocationMethod",
"privateIPAddress",
"subnet"
]
}
},
"required": [
"resourceId",
"properties"
]
}
}
},
"properties": {
"resourceMetadata": {
"$ref": "#/definitions/resourceMetadata"
},
"tags": {
"additionalProperties": { "type": "string" }
},
"properties": {
"type": "object",
"properties": {
"ipConfigurations": {
"$ref": "#/definitions/ipConfigurations"
},
"isHostVirtualNetworkInterface": {
"type": "boolean",
"default" : false
},
"isMultitenantStack": {
"type": "boolean",
"default": false
},
"isPrimary": {
"type": "boolean",
"default" : true
},
"internalDnsNameLabel": {
"type": "string"
},
"privateMacAddress": {
"type": "string",
"pattern": "^[a-fA-F0-9]{12}$"
},
"privateMacAllocationMethod": {
"enum": [ "Static", "Dynamic" ]
},
"dnsSettings": {
"type": "object",
"properties": {
"DnsServers": {
"type": "array",
"items": {
"type": "string",
"format": "ipv4"
}
}
}
},
"serviceInsertionElements": {
"type": "array",
"uniqueItems": true,
"items": { "$ref": "#/definitions/resourceRef" }
},
"portSettings": {
"$ref": "#/definitions/portSettings"
}
},
"required": [
"provisioningState",
"privateMacAddress",
"privateMacAllocationMethod"
]
}
},
"required": [
"properties"
]
}