diff --git a/schemas/2021-11-01-preview/Microsoft.IotCentral.json b/schemas/2021-11-01-preview/Microsoft.IotCentral.json new file mode 100644 index 0000000000..4735ddc550 --- /dev/null +++ b/schemas/2021-11-01-preview/Microsoft.IotCentral.json @@ -0,0 +1,441 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.IotCentral.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.IoTCentral", + "description": "Microsoft IoTCentral Resource Types", + "resourceDefinitions": { + "iotApps": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/SystemAssignedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed service identity (either system assigned, or none)" + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "name": { + "type": "string", + "description": "The ARM resource name of the IoT Central application." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AppProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an IoT Central application." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/iotApps_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/AppSkuInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about the SKU of the IoT Central application." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.IoTCentral/iotApps" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.IoTCentral/iotApps" + }, + "iotApps_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The private endpoint connection name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.IoTCentral/iotApps/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.IoTCentral/iotApps/privateEndpointConnections" + } + }, + "definitions": { + "AppProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The display name of the application." + }, + "networkRuleSets": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkRuleSets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network Rule Set Properties of this Iot Central application." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether requests from the public network are allowed." + }, + "state": { + "oneOf": [ + { + "type": "string", + "enum": [ + "created", + "suspended" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The current state of the application." + }, + "subdomain": { + "type": "string", + "description": "The subdomain of the application." + }, + "template": { + "type": "string", + "description": "The ID of the application template, which is a blueprint that defines the characteristics and behaviors of an application. Optional; if not specified, defaults to a blank blueprint and allows the application to be defined from scratch." + } + }, + "description": "The properties of an IoT Central application." + }, + "AppSkuInfo": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ST0", + "ST1", + "ST2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SKU." + } + }, + "required": [ + "name" + ], + "description": "Information about the SKU of the IoT Central application." + }, + "iotApps_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The private endpoint connection name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.IoTCentral/iotApps/privateEndpointConnections" + }, + "NetworkRuleSetIpRule": { + "type": "object", + "properties": { + "filterName": { + "type": "string", + "description": "The readable name of the IP rule." + }, + "ipMask": { + "type": "string", + "description": "The CIDR block defining the IP range." + } + }, + "description": "An object for an IP range that will be allowed access." + }, + "NetworkRuleSets": { + "type": "object", + "properties": { + "applyToDevices": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether these rules apply for device connectivity to IoT Hub and Device Provisioning service associated with this application." + }, + "applyToIoTCentral": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether these rules apply for connectivity via IoT Central web portal and APIs." + }, + "defaultAction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Allow", + "Deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default network action to apply." + }, + "ipRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSetIpRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of IP rules." + } + }, + "description": "Network Rule Set Properties of this Iot Central application." + }, + "PrivateEndpoint": { + "type": "object", + "properties": {}, + "description": "The private endpoint resource." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The private endpoint resource." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the private endpoint connection." + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "SystemAssignedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "type" + ], + "description": "Managed service identity (either system assigned, or none)" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 84f20fc779..0a3f784490 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -9184,6 +9184,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.IotCentral.json#/resourceDefinitions/iotApps" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.IotCentral.json#/resourceDefinitions/iotApps" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.IotCentral.json#/resourceDefinitions/iotApps_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-06-01/Microsoft.KeyVault.json#/resourceDefinitions/vaults" },