diff --git a/specification/common-types/resource-management/v4/privatelinks.json b/specification/common-types/resource-management/v4/privatelinks.json new file mode 100644 index 000000000000..f32d7181d5da --- /dev/null +++ b/specification/common-types/resource-management/v4/privatelinks.json @@ -0,0 +1,190 @@ +{ + "swagger": "2.0", + "info": { + "version": "4.0", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "The ARM identifier for private endpoint." + } + }, + "description": "The private endpoint resource." + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateEndpointConnectionProperties", + "x-ms-client-flatten": true, + "description": "Resource properties." + } + }, + "allOf": [ + { + "$ref": "../v3/types.json#/definitions/Resource" + } + ], + "description": "The private endpoint connection resource." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "groupIds": { + "description": "The group ids for the private endpoint resource.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "privateEndpoint": { + "$ref": "#/definitions/PrivateEndpoint", + "description": "The private endpoint resource." + }, + "privateLinkServiceConnectionState": { + "$ref": "#/definitions/PrivateLinkServiceConnectionState", + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "$ref": "#/definitions/PrivateEndpointConnectionProvisioningState", + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the private endpoint connection." + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "status": { + "$ref": "#/definitions/PrivateEndpointServiceConnectionStatus", + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "PrivateEndpointServiceConnectionStatus": { + "type": "string", + "description": "The private endpoint connection status.", + "enum": [ + "Pending", + "Approved", + "Rejected" + ], + "x-ms-enum": { + "name": "PrivateEndpointServiceConnectionStatus", + "modelAsString": true + } + }, + "PrivateEndpointConnectionProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The current provisioning state.", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ], + "x-ms-enum": { + "name": "PrivateEndpointConnectionProvisioningState", + "modelAsString": true + } + }, + "PrivateLinkResource": { + "type": "object", + "properties": { + "properties": { + "$ref": "#/definitions/PrivateLinkResourceProperties", + "description": "Resource properties.", + "x-ms-client-flatten": true + } + }, + "allOf": [ + { + "$ref": "../v3/types.json#/definitions/Resource" + } + ], + "description": "A private link resource." + }, + "PrivateLinkResourceProperties": { + "type": "object", + "properties": { + "groupId": { + "description": "The private link resource group id.", + "type": "string", + "readOnly": true + }, + "requiredMembers": { + "description": "The private link resource required member names.", + "type": "array", + "items": { + "type": "string" + }, + "readOnly": true + }, + "requiredZoneNames": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The private link resource private link DNS zone name." + } + }, + "description": "Properties of a private link resource." + }, + "PrivateEndpointConnectionListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private endpoint connections.", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + } + }, + "description": "List of private endpoint connections associated with the specified resource." + }, + "PrivateLinkResourceListResult": { + "type": "object", + "properties": { + "value": { + "type": "array", + "description": "Array of private link resources", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + } + }, + "description": "A list of private link resources." + } + }, + "parameters": { + "PrivateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CheckNameAvailability.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CheckNameAvailability.json deleted file mode 100644 index c631a16720e6..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CheckNameAvailability.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2017-07-01-privatepreview", - "operationInputs": { - "name": "myIoTCentralApp" - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "nameAvailable": true - } - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CreateOrUpdate.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CreateOrUpdate.json deleted file mode 100644 index a0c5c2f7753a..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_CreateOrUpdate.json +++ /dev/null @@ -1,56 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "resRg", - "resourceName": "myIoTCentralApp", - "api-version": "2017-07-01-privatepreview", - "App": { - "displayName": "My IoT Central App", - "subdomain": "my-iot-central-app", - "template": "iotc-default@1.0.0", - "location": "westus", - "sku": { - "name": "F1" - } - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "name": "myIoTCentralApp", - "type": "Microsoft.IoTCentral/IoTApps", - "location": "westus", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App 2", - "subdomain": "my-iot-central-app-2", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - }, - "201": { - "headers": {}, - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "name": "myIoTCentralApp", - "type": "Microsoft.IoTCentral/IoTApps", - "location": "westus", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App", - "subdomain": "my-iot-central-app", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - }, - "202": {} - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Delete.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Delete.json deleted file mode 100644 index c5e0e72bf9d8..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Delete.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "resRg", - "resourceName": "myIoTCentralApp", - "api-version": "2017-07-01-privatepreview" - }, - "responses": { - "200": {}, - "202": {}, - "204": {} - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Get.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Get.json deleted file mode 100644 index 75c2f159cdab..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Get.json +++ /dev/null @@ -1,28 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "resRg", - "resourceName": "myIoTCentralApp", - "api-version": "2017-07-01-privatepreview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "location": "westus", - "type": "Microsoft.IoTCentral/IoTApps", - "name": "myIoTCentralApp", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App", - "subdomain": "my-iot-central-app", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListByResourceGroup.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListByResourceGroup.json deleted file mode 100644 index 24016a92867c..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListByResourceGroup.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2017-07-01-privatepreview", - "resourceGroupName": "resRg" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "location": "westus", - "type": "Microsoft.IoTCentral/IoTApps", - "name": "myIoTCentralApp", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App", - "subdomain": "my-iot-central-app", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - ] - } - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListBySubscription.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListBySubscription.json deleted file mode 100644 index 0dc864659d14..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_ListBySubscription.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "api-version": "2017-07-01-privatepreview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "value": [ - { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "location": "westus", - "type": "Microsoft.IoTCentral/IoTApps", - "name": "myIoTCentralApp", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App", - "subdomain": "my-iot-central-app", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - ] - } - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Update.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Update.json deleted file mode 100644 index d84a44a5e92c..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Apps_Update.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parameters": { - "subscriptionId": "00000000-0000-0000-0000-000000000000", - "resourceGroupName": "resRg", - "resourceName": "myIoTCentralApp", - "api-version": "2017-07-01-privatepreview", - "AppPatch": { - "displayName": "My IoT Central App 2" - } - }, - "responses": { - "200": { - "headers": {}, - "body": { - "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/IoTApps/myIoTCentralApp", - "location": "westus", - "type": "Microsoft.IoTCentral/IoTApps", - "name": "myIoTCentralApp", - "properties": { - "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", - "displayName": "My IoT Central App 2", - "subdomain": "my-iot-central-app-2", - "template": "iotc-default@1.0.0" - }, - "sku": { - "name": "F1" - } - } - }, - "202": {} - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Operations_List.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Operations_List.json deleted file mode 100644 index a59174b0144d..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/examples/Operations_List.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "parameters": { - "api-version": "2017-07-01-privatepreview" - }, - "responses": { - "200": { - "headers": {}, - "body": { - "value": [ - { - "name": "Microsoft.IoTCentral/IoTApps/read", - "display": { - "provider": "Microsoft IoT Central", - "resource": "IoTApps", - "operation": "Get IoT Central Application", - "description": "Gets a single IoT Central Application" - } - }, - { - "name": "Microsoft.IoTCentral/IoTApps/write", - "display": { - "provider": "Microsoft IoT Central", - "resource": "IoTApps", - "operation": "Create or Update IoT Central Application", - "description": "Creates or Updates an IoT Central Applications" - } - }, - { - "name": "Microsoft.IoTCentral/IoTApps/delete", - "display": { - "provider": "Microsoft IoT Central", - "resource": "IoTApps", - "operation": "Delete IoT Central Application", - "description": "Deletes an IoT Central Applications" - } - }, - { - "name": "Microsoft.IoTCentral/checkNameAvailability/action", - "display": { - "provider": "Microsoft IoT Central", - "resource": "", - "operation": "Check resource name availability", - "description": "Checks if an IoT Central Application name is available" - } - }, - { - "name": "Microsoft.IoTCentral/operations/read", - "display": { - "provider": "Microsoft IoT Central", - "resource": "", - "operation": "Get all the available operations", - "description": "Gets all the available operations on IoT Central Applications" - } - } - ] - } - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/iotcentral.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/iotcentral.json deleted file mode 100644 index bda79764bf93..000000000000 --- a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2017-07-01-privatepreview/iotcentral.json +++ /dev/null @@ -1,710 +0,0 @@ -{ - "swagger": "2.0", - "info": { - "version": "2017-07-01-privatepreview", - "title": "IotCentralClient", - "description": "Use this API to manage IoT Central Applications in your Azure subscription." - }, - "host": "management.azure.com", - "schemes": [ - "https" - ], - "consumes": [ - "application/json" - ], - "produces": [ - "application/json" - ], - "security": [ - { - "azure_auth": [ - "user_impersonation" - ] - } - ], - "securityDefinitions": { - "azure_auth": { - "type": "oauth2", - "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", - "flow": "implicit", - "description": "Azure Active Directory OAuth2 Flow", - "scopes": { - "user_impersonation": "impersonate your user account" - } - } - }, - "paths": { - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/IoTApps/{resourceName}": { - "get": { - "tags": [ - "Apps" - ], - "description": "Get the metadata of an IoT Central application.", - "operationId": "Apps_Get", - "x-ms-examples": { - "Apps_Get": { - "$ref": "./examples/Apps_Get.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/resourceName" - } - ], - "responses": { - "200": { - "description": "The body contains all the non-security properties of the IoT Central application. Security-related properties are set to null.", - "schema": { - "$ref": "#/definitions/App" - } - }, - "default": { - "description": "Default error response", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - }, - "put": { - "tags": [ - "Apps" - ], - "description": "Create or update the metadata of an IoT Central application. The usual pattern to modify a property is to retrieve the IoT Central application metadata and security metadata, and then combine them with the modified values in a new body to update the IoT Central application.", - "operationId": "Apps_CreateOrUpdate", - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Apps_CreateOrUpdate": { - "$ref": "./examples/Apps_CreateOrUpdate.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/resourceName" - }, - { - "name": "App", - "in": "body", - "description": "The IoT Central application metadata and security metadata.", - "required": true, - "schema": { - "$ref": "#/definitions/App" - } - } - ], - "responses": { - "200": { - "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", - "schema": { - "$ref": "#/definitions/App" - } - }, - "201": { - "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", - "schema": { - "$ref": "#/definitions/App" - } - }, - "202": { - "description": "Accepted - Put request accepted; the operation will complete asynchronously." - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - }, - "patch": { - "tags": [ - "Apps" - ], - "description": "Update the metadata of an IoT Central application.", - "operationId": "Apps_Update", - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Apps_Update": { - "$ref": "./examples/Apps_Update.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/resourceName" - }, - { - "name": "AppPatch", - "in": "body", - "description": "The IoT Central application metadata and security metadata.", - "required": true, - "schema": { - "$ref": "#/definitions/AppPatch" - } - } - ], - "responses": { - "200": { - "description": "This is returned as a response to the status polling request for the create or update operation. The body contains the resource representation that indicates a transitional provisioning state.", - "schema": { - "$ref": "#/definitions/App" - } - }, - "202": { - "description": "Accepted - Put request accepted; the operation will complete asynchronously." - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - }, - "delete": { - "tags": [ - "Apps" - ], - "description": "Delete an IoT Central application.", - "operationId": "Apps_Delete", - "x-ms-long-running-operation": true, - "x-ms-examples": { - "Apps_Delete": { - "$ref": "./examples/Apps_Delete.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - }, - { - "$ref": "#/parameters/resourceName" - } - ], - "responses": { - "200": { - "description": "This is returned as a response to the status polling request for the delete operation. The body contains the resource representation that indicates a transitional provisioning state." - }, - "202": { - "description": "Accepted - Delete request accepted; the operation will complete asynchronously." - }, - "204": { - "description": "Once the long running delete operation completes successfully, a 204 No Content status code is returned when the status polling request finds the IoT Central application metadata in the service and the status of the delete operation is set to a completed state." - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - } - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/IoTApps": { - "get": { - "tags": [ - "Apps" - ], - "description": "Get all IoT Central Applications in a subscription.", - "operationId": "Apps_ListBySubscription", - "x-ms-examples": { - "Apps_ListBySubscription": { - "$ref": "./examples/Apps_ListBySubscription.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - } - ], - "responses": { - "200": { - "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT Central Applications in the subscription.", - "schema": { - "$ref": "#/definitions/AppListResult" - } - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - } - }, - "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/IoTApps": { - "get": { - "tags": [ - "Apps" - ], - "description": "Get all the IoT Central Applications in a resource group.", - "operationId": "Apps_ListByResourceGroup", - "x-ms-examples": { - "Apps_ListByResourceGroup": { - "$ref": "./examples/Apps_ListByResourceGroup.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "$ref": "#/parameters/resourceGroupName" - } - ], - "responses": { - "200": { - "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT Central Applications in the resource group.", - "schema": { - "$ref": "#/definitions/AppListResult" - } - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - } - }, - "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/checkNameAvailability": { - "post": { - "tags": [ - "Apps" - ], - "description": "Check if an IoT Central application name is available.", - "operationId": "Apps_CheckNameAvailability", - "x-ms-examples": { - "Apps_CheckNameAvailability": { - "$ref": "./examples/Apps_CheckNameAvailability.json" - } - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - }, - { - "$ref": "#/parameters/subscriptionId" - }, - { - "name": "operationInputs", - "in": "body", - "description": "Set the name parameter in the OperationInputs structure to the name of the IoT Central application to check.", - "required": true, - "schema": { - "$ref": "#/definitions/OperationInputs" - } - } - ], - "responses": { - "200": { - "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT Central application name is available. If the name is not available, the body contains the reason.", - "schema": { - "$ref": "#/definitions/AppNameAvailabilityInfo" - } - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - } - }, - "/providers/Microsoft.IoTCentral/operations": { - "get": { - "tags": [ - "Operations" - ], - "description": "Lists all of the available IoT Central application REST API operations.", - "operationId": "Operations_List", - "x-ms-examples": { - "Operations_List": { - "$ref": "./examples/Operations_List.json" - } - }, - "x-ms-pageable": { - "nextLinkName": "nextLink" - }, - "parameters": [ - { - "$ref": "#/parameters/api-version" - } - ], - "responses": { - "200": { - "description": "OK. The request has succeeded.", - "schema": { - "$ref": "#/definitions/OperationListResult" - } - }, - "default": { - "description": "DefaultErrorResponse", - "schema": { - "$ref": "#/definitions/ErrorDetails" - } - } - }, - "deprecated": false - } - } - }, - "definitions": { - "AppProperties": { - "description": "The properties of an IoT Central application.", - "type": "object", - "properties": { - "applicationId": { - "description": "The ID of the application.", - "type": "string", - "readOnly": true - }, - "displayName": { - "description": "The display name of the application.", - "type": "string", - "pattern": "^.{1,200}$" - }, - "subdomain": { - "description": "The subdomain of the application.", - "type": "string", - "pattern": "^[a-z0-9-]{1,63}$" - }, - "template": { - "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.", - "type": "string", - "x-ms-mutability": [ - "create", - "read" - ] - } - } - }, - "AppSkuInfo": { - "description": "Information about the SKU of the IoT Central application.", - "type": "object", - "properties": { - "name": { - "description": "The name of the SKU.", - "enum": [ - "F1", - "S1" - ], - "type": "string", - "x-ms-enum": { - "name": "AppSku", - "modelAsString": true - } - } - }, - "required": [ - "name" - ] - }, - "App": { - "description": "The IoT Central application.", - "type": "object", - "properties": { - "properties": { - "description": "The common properties of an IoT Central application.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/AppProperties" - }, - "sku": { - "description": "A valid instance SKU.", - "$ref": "#/definitions/AppSkuInfo" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ], - "required": [ - "sku" - ] - }, - "AppPatch": { - "description": "The description of the IoT Central application.", - "type": "object", - "properties": { - "tags": { - "description": "Instance tags", - "type": "object", - "additionalProperties": { - "type": "string" - } - }, - "properties": { - "description": "The common properties of an IoT Central application.", - "x-ms-client-flatten": true, - "$ref": "#/definitions/AppProperties" - } - } - }, - "Resource": { - "description": "The common properties of an ARM resource.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "The ARM resource identifier." - }, - "name": { - "readOnly": true, - "type": "string", - "description": "The ARM resource name.", - "pattern": "^(?![0-9]+$)(?!-)[a-zA-Z0-9-]{2,99}[a-zA-Z0-9]$", - "x-comment": "pattern must match #/parameters/resourceName" - }, - "type": { - "readOnly": true, - "type": "string", - "description": "The resource type." - }, - "location": { - "type": "string", - "description": "The resource location.", - "x-ms-mutability": [ - "create", - "read" - ] - }, - "tags": { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "description": "The resource tags." - } - }, - "x-ms-azure-resource": true, - "required": [ - "location" - ] - }, - "ErrorDetails": { - "description": "Error details.", - "type": "object", - "properties": { - "code": { - "description": "The error code.", - "type": "string", - "readOnly": true - }, - "message": { - "description": "The error message.", - "type": "string", - "readOnly": true - }, - "target": { - "description": "The target of the particular error.", - "type": "string", - "readOnly": true - } - } - }, - "AppListResult": { - "description": "A list of IoT Central Applications with a next link.", - "type": "object", - "properties": { - "nextLink": { - "description": "The link used to get the next page of IoT Central Applications.", - "type": "string" - }, - "value": { - "description": "A list of IoT Central Applications.", - "type": "array", - "items": { - "$ref": "#/definitions/App" - } - } - } - }, - "OperationListResult": { - "description": "A list of IoT Central operations. It contains a list of operations and a URL link to get the next set of results.", - "type": "object", - "properties": { - "nextLink": { - "description": "The link used to get the next page of IoT Central description objects.", - "type": "string" - }, - "value": { - "description": "A list of operations supported by the Microsoft.IoTCentral resource provider.", - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/Operation" - } - } - } - }, - "Operation": { - "description": "IoT Central REST API operation", - "type": "object", - "properties": { - "name": { - "readOnly": true, - "type": "string", - "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" - }, - "display": { - "description": "The object that represents the operation.", - "$ref": "#/definitions/OperationDisplay" - } - } - }, - "OperationDisplay": { - "description": "The object that represents the operation.", - "type": "object", - "properties": { - "provider": { - "readOnly": true, - "type": "string", - "description": "Service provider: Microsoft IoT Central" - }, - "resource": { - "readOnly": true, - "type": "string", - "description": "Resource Type: IoT Central" - }, - "operation": { - "readOnly": true, - "type": "string", - "description": "Name of the operation" - }, - "description": { - "readOnly": true, - "type": "string", - "description": "Friendly description for the operation," - } - } - }, - "OperationInputs": { - "description": "Input values.", - "type": "object", - "properties": { - "name": { - "description": "The name of the IoT Central application instance to check.", - "type": "string" - } - }, - "required": [ - "name" - ] - }, - "AppNameAvailabilityInfo": { - "description": "The properties indicating whether a given IoT Central application name is available.", - "type": "object", - "properties": { - "nameAvailable": { - "description": "The value which indicates whether the provided name is available.", - "type": "boolean", - "readOnly": true - }, - "reason": { - "description": "The reason for unavailability.", - "enum": [ - "Invalid", - "AlreadyExists" - ], - "type": "string", - "readOnly": true, - "x-ms-enum": { - "name": "AppNameUnavailabilityReason", - "modelAsString": false - } - }, - "message": { - "description": "The detailed reason message.", - "type": "string" - } - } - } - }, - "parameters": { - "subscriptionId": { - "name": "subscriptionId", - "in": "path", - "description": "The subscription identifier.", - "required": true, - "type": "string" - }, - "api-version": { - "name": "api-version", - "in": "query", - "description": "The version of the API.", - "required": true, - "type": "string" - }, - "resourceGroupName": { - "name": "resourceGroupName", - "in": "path", - "description": "The name of the resource group that contains the IoT Central application.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method" - }, - "resourceName": { - "name": "resourceName", - "in": "path", - "description": "The ARM resource name of the IoT Central application.", - "required": true, - "type": "string", - "x-ms-parameter-location": "method", - "x-comment": "validation must match #/definitions/Resource" - } - } -} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckNameAvailability.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckNameAvailability.json new file mode 100644 index 000000000000..2c3246acece2 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckNameAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-preview", + "operationInputs": { + "name": "myiotcentralapp", + "type": "IoTApps" + } + }, + "responses": { + "200": { + "description": "Returns information about resource name availability", + "headers": { + "Code": "200" + }, + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckSubdomainAvailability.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckSubdomainAvailability.json new file mode 100644 index 000000000000..0e72da7ec8e2 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CheckSubdomainAvailability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-preview", + "operationInputs": { + "name": "myiotcentralapp", + "type": "IoTApps" + } + }, + "responses": { + "200": { + "description": "Returns information about resource subdomain availability", + "headers": { + "Code": "200" + }, + "body": { + "nameAvailable": true + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CreateOrUpdate.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CreateOrUpdate.json new file mode 100644 index 000000000000..266a7d9b1f34 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_CreateOrUpdate.json @@ -0,0 +1,108 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview", + "App": { + "location": "westus", + "sku": { + "name": "ST2" + }, + "properties": { + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "200": { + "headers": { + "Code": "200", + "Message": "OK", + "Target": "ResourceHandler.ExecutePutRequest", + "Retry-After": "10", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=createOrUpdateIotApplication" + }, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp", + "name": "myIoTCentralApp", + "type": "Microsoft.IoTCentral/iotApps", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0", + "state": "created", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Enabled", + "networkRuleSets": { + "applyToDevices": false, + "applyToIoTCentral": false, + "defaultAction": "Deny", + "ipRules": [] + }, + "privateEndpointConnections": [] + }, + "sku": { + "name": "ST2" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd", + "principalId": "8988ab15-3e7a-4586-8a1c-ed07a73a53e9" + } + } + }, + "201": { + "headers": { + "Code": "200", + "Message": "OK", + "Target": "ResourceHandler.ExecutePutRequest", + "Retry-After": "10", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=createOrUpdateIotApplication" + }, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp", + "name": "myIoTCentralApp", + "type": "Microsoft.IoTCentral/iotApps", + "location": "westus", + "tags": { + "key": "value" + }, + "properties": { + "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0", + "state": "created", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Enabled", + "networkRuleSets": { + "applyToDevices": false, + "applyToIoTCentral": false, + "defaultAction": "Deny", + "ipRules": [] + }, + "privateEndpointConnections": [] + }, + "sku": { + "name": "ST2" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd", + "principalId": "8988ab15-3e7a-4586-8a1c-ed07a73a53e9" + } + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Delete.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Delete.json new file mode 100644 index 000000000000..615439f5c06c --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Delete.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview" + }, + "responses": { + "202": { + "description": "Request was accepted.", + "headers": { + "Retry-After": "10", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=deleteIotApplication", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=deleteIotApplication" + } + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Get.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Get.json new file mode 100644 index 000000000000..7c2ff19fde71 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Get.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "description": "Returns the application details", + "headers": { + "Code": "200" + }, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp", + "location": "westus", + "type": "Microsoft.IoTCentral/iotApps", + "name": "myIoTCentralApp", + "tags": { + "key": "value" + }, + "properties": { + "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0", + "state": "created", + "publicNetworkAccess": "Enabled", + "networkRuleSets": { + "applyToDevices": true, + "applyToIoTCentral": false, + "defaultAction": "Deny", + "ipRules": [ + { + "filterName": "My Computer", + "ipMask": "21.19.35.40/24" + } + ] + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + }, + "sku": { + "name": "ST2" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd", + "principalId": "8988ab15-3e7a-4586-8a1c-ed07a73a53e9" + } + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListByResourceGroup.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListByResourceGroup.json new file mode 100644 index 000000000000..0b1869863790 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListByResourceGroup.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-preview", + "resourceGroupName": "resRg" + }, + "responses": { + "200": { + "headers": { + "Code": "200" + }, + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp", + "location": "westus", + "type": "Microsoft.IoTCentral/iotApps", + "name": "myIoTCentralApp", + "tags": { + "key": "value" + }, + "properties": { + "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0", + "state": "created", + "publicNetworkAccess": "Enabled", + "networkRuleSets": { + "applyToDevices": true, + "applyToIoTCentral": false, + "defaultAction": "Deny", + "ipRules": [ + { + "filterName": "My Computer", + "ipMask": "21.19.35.40/24" + } + ] + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + }, + "sku": { + "name": "F1" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd", + "principalId": "8988ab15-3e7a-4586-8a1c-ed07a73a53e9" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListBySubscription.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListBySubscription.json new file mode 100644 index 000000000000..b8707c630b32 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_ListBySubscription.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Code": "200" + }, + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp", + "location": "westus", + "type": "Microsoft.IoTCentral/iotApps", + "name": "myIoTCentralApp", + "tags": { + "key": "value" + }, + "properties": { + "applicationId": "6ebd8fd3-6e34-419e-908f-9be61ec6f6d6", + "displayName": "My IoT Central App", + "subdomain": "my-iot-central-app", + "template": "iotc-pnp-preview@1.0.0", + "state": "created", + "provisioningState": "Succeeded", + "publicNetworkAccess": "Enabled", + "networkRuleSets": { + "applyToDevices": true, + "applyToIoTCentral": false, + "defaultAction": "Deny", + "ipRules": [ + { + "filterName": "My Computer", + "ipMask": "21.19.35.40/24" + } + ] + }, + "privateEndpointConnections": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + }, + "sku": { + "name": "F1" + }, + "identity": { + "type": "SystemAssigned", + "tenantId": "f686d426-8d16-42db-81b7-ab578e110ccd", + "principalId": "8988ab15-3e7a-4586-8a1c-ed07a73a53e9" + } + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Templates.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Templates.json new file mode 100644 index 000000000000..d51f7e71e596 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Templates.json @@ -0,0 +1,544 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "description": "Returns the application templates details", + "headers": { + "Code": "200" + }, + "body": { + "value": [ + { + "manifestId": "iotc-condition", + "manifestVersion": "1.0.0", + "name": "Store Analytics – Condition Monitoring", + "title": "In-store Analytics – Condition Monitoring", + "order": 99, + "description": "Digitally connect and monitor your store environment to reduce operating costs and create experiences that customers love.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-consumption", + "manifestVersion": "1.0.0", + "name": "IoT Central Water Consumption application template", + "title": "Water Consumption Monitoring", + "order": 99, + "description": "Enable remote tracking of water consumption to reduce field operations, detect leaks in time, while empowering cities to conserve water.", + "industry": "Government", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-distribution", + "manifestVersion": "1.0.0", + "name": "IoT Central Digital Distribution Center application template", + "title": "Digital Distribution Center", + "order": 99, + "description": "Digitally manage warehouse conveyor belt system efficiency using object detection and tracking.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-inventory", + "manifestVersion": "1.0.0", + "name": "IoT Central Smart Inventory Management application template", + "title": "Smart Inventory Management", + "order": 99, + "description": "Enable accurate inventory tracking and ensure shelves are always stocked.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-logistics", + "manifestVersion": "1.0.0", + "name": "IoT Central Connected Logistics application template", + "title": "Connected Logistics", + "order": 99, + "description": "Track your shipment in real-time across air, water and land with location and condition monitoring.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-meter", + "manifestVersion": "1.0.0", + "name": "IoT Central Smart Meter Analytics application template", + "title": "Smart Meter Analytics", + "order": 99, + "description": "Connect utility meters to gain insights into billing, forecast consumption, and proactively detect outages.", + "industry": "Energy", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-mfc", + "manifestVersion": "1.0.0", + "name": "IoT Central Micro-fulfillment Center", + "title": "Micro-fulfillment Center", + "order": 99, + "description": "Digitally connect, monitor and manage all aspects of a fully automated fulfillment center to reduce costs by eliminating downtime while increasing security and overall efficiency.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-paad", + "manifestVersion": "1.0.0", + "name": "IoT Central Phone-as-a-device application template", + "title": "Paad", + "order": 99, + "description": "Create application with [\"paad\"] capabilities.", + "industry": "Utility", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-patient", + "manifestVersion": "1.0.0", + "name": "IoT Central Continuous Patient Monitoring application template", + "title": "Continuous Patient Monitoring", + "order": 99, + "description": "Connect and manage devices for in-patient and remote monitoring to improve patient outcomes, reduce re-admissions, and manage chronic diseases.", + "industry": "Health", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-pnp-preview", + "manifestVersion": "1.0.0", + "name": "IoT Central PnP template (preview)", + "title": "Custom application", + "order": 1, + "description": "Create an application with Azure IoT Plug and Play.", + "industry": "", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-power", + "manifestVersion": "1.0.0", + "name": "IoT Central Solar Power Monitoring application template", + "title": "Solar Power Monitoring", + "order": 99, + "description": "Connect, monitor, and manage your solar panels and energy generation.", + "industry": "Energy", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-quality", + "manifestVersion": "1.0.0", + "name": "IoT Central Water Quality Monitoring application template", + "title": "Water Quality Monitoring", + "order": 99, + "description": "Improve water quality and detect issues earlier by analyzing real-time measurements across your environment.", + "industry": "Government", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-store", + "manifestVersion": "1.0.0", + "name": "Store Analytics – Checkout", + "title": "In-store Analytics – Checkout", + "order": 99, + "description": "Monitor and manage the checkout flow inside your store to improve efficiency and reduce wait times.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-video-analytics-om", + "manifestVersion": "1.0.0", + "name": "IoT Central Video analytics - object and motion detection application template", + "title": "Video analytics - object and motion detection", + "order": 99, + "description": "Use cameras as a sensor in intelligent video analytics solutions powered by Azure IoT Edge, AI, and Azure Media Services.", + "industry": "Retail", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + }, + { + "manifestId": "iotc-waste", + "manifestVersion": "1.0.0", + "name": "IoT Central Connected Waste Management application template", + "title": "Connected Waste Management", + "order": 99, + "description": "Maximize efficiency in the collection of solid wastes by dispatching field operators at the right time along an optimized collection route.", + "industry": "Government", + "locations": [ + { + "id": "unitedstates", + "displayName": "United States" + }, + { + "id": "europe", + "displayName": "Europe" + }, + { + "id": "asiapacific", + "displayName": "Asia Pacific" + }, + { + "id": "australia", + "displayName": "Australia" + }, + { + "id": "uk", + "displayName": "United Kingdom" + }, + { + "id": "japan", + "displayName": "Japan" + } + ] + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Update.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Update.json new file mode 100644 index 000000000000..61a2103e2ea0 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Apps_Update.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview", + "AppPatch": { + "properties": { + "displayName": "My IoT Central App 2" + }, + "identity": { + "type": "SystemAssigned" + } + } + }, + "responses": { + "202": { + "headers": { + "Code": "202", + "Message": "Accepted", + "Retry-After": "10", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=createOrUpdateIotApplication", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=createOrUpdateIotApplication" + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Operations_List.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Operations_List.json new file mode 100644 index 000000000000..9a9d81db539e --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/Operations_List.json @@ -0,0 +1,782 @@ +{ + "parameters": { + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "headers": { + "Code": "200" + }, + "body": { + "value": [ + { + "name": "Microsoft.IoTCentral/iotApps/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Get/List IoTApp resource(s)", + "description": "Read IoTApp resources" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/write", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Create/Update/Patch IoTApp resources", + "description": "Create or update a IoTApp resource" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/delete", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Delete IoTApp resource", + "description": "Delete IoTApp resource" + } + }, + { + "name": "Microsoft.IoTCentral/checkNameAvailability/action", + "display": { + "provider": "Azure IoT Central", + "resource": "", + "operation": "Check IoTApp resource name availability", + "description": "Checks if a IoTApp resource name is available" + } + }, + { + "name": "Microsoft.IoTCentral/checkSubdomainAvailability/action", + "display": { + "provider": "Azure IoT Central", + "resource": "", + "operation": "Check IoTApp resource subdomain availability", + "description": "Check if a IoTApp resource subdomain is available" + } + }, + { + "name": "Microsoft.IoTCentral/operations/read", + "display": { + "provider": "Azure IoT Central", + "resource": "", + "operation": "Get/List operations", + "description": "Get/List all the available operations for IoT Central" + } + }, + { + "name": "Microsoft.IoTCentral/appTemplates/action", + "display": { + "provider": "Azure IoT Central", + "resource": "Azure IoT Central resource provider", + "operation": "List app templates", + "description": "Lists application templates for IoTApps resources." + } + }, + { + "name": "Microsoft.IoTCentral/register/action", + "display": { + "provider": "Azure IoT Central", + "resource": "Azure IoT Central resource provider", + "operation": "Register Microsoft.IoTCentral resource provider", + "description": "Register the subscription for the IoTCentral resource provider" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateLinkResources/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateLinkResources", + "operation": "Get/List private link resources", + "description": "Read private link resources" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnections/write", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnections", + "operation": "Approve/Reject/Disconnect private endpoint connections", + "description": "Approve/reject/disconnect private endpoint connections" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnections/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnections", + "operation": "Get/List private endpoint connections", + "description": "Read private endpoint connections" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnections/delete", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnections", + "operation": "Delete private endpoint connections", + "description": "Delete private endpoint connections" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnectionProxies/validate/action", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnectionProxies", + "operation": "Validate private endpoint connection proxies", + "description": "Validate private endpoint connection proxies during Create/Update/Patch" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnectionProxies/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnectionProxies", + "operation": "Get/List private endpoint connection proxies", + "description": "Read private endpoint connection proxies" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnectionProxies/write", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnectionProxies", + "operation": "Create/Update/Patch private endpoint connection proxies", + "description": "Create/Update/Patch private endpoint connection proxies" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/privateEndpointConnectionProxies/delete", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps/privateEndpointConnectionProxies", + "operation": "Delete private endpoint connection proxies", + "description": "Deletes private endpoint connection proxies" + } + }, + { + "name": "Microsoft.IoTCentral/locations/operationResults/read", + "display": { + "provider": "Azure IoT Central", + "resource": "locations/operationResults", + "operation": "Get async operation results", + "description": "Get async operation results for IoT Central" + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Get/List metric definitions", + "description": "Read all the available metric definitions for IoT Central" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "connectedDeviceCount", + "displayName": "Total Connected Devices", + "displayDescription": "Number of devices connected to IoT Central", + "unit": "Count", + "aggregationType": "Average", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": true, + "lockAggregationType": "Total" + }, + { + "name": "c2d.property.read.success", + "displayName": "Successful Device Property Reads from IoT Central", + "displayDescription": "The count of all successful property reads initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.property.read.failure", + "displayName": "Failed Device Property Reads from IoT Central", + "displayDescription": "The count of all failed property reads initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.property.read.success", + "displayName": "Successful Device Property Reads from Devices", + "displayDescription": "The count of all successful property reads initiated from devices", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.property.read.failure", + "displayName": "Failed Device Property Reads from Devices", + "displayDescription": "The count of all failed property reads initiated from devices", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.property.update.success", + "displayName": "Successful Device Property Updates from IoT Central", + "displayDescription": "The count of all successful property updates initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.property.update.failure", + "displayName": "Failed Device Property Updates from IoT Central", + "displayDescription": "The count of all failed property updates initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.property.update.success", + "displayName": "Successful Device Property Updates from Devices", + "displayDescription": "The count of all successful property updates initiated from devices", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.property.update.failure", + "displayName": "Failed Device Property Updates from Devices", + "displayDescription": "The count of all failed property updates initiated from devices", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "provisionedDeviceCount", + "displayName": "Total Provisioned Devices", + "displayDescription": "Number of devices provisioned in IoT Central application", + "unit": "Count", + "aggregationType": "Average", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": true, + "lockAggregationType": "Total" + }, + { + "name": "deviceDataUsage", + "displayName": "Total Device Data Usage", + "displayDescription": "Bytes transferred to and from any devices connected to IoT Central application", + "unit": "Bytes", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": true + }, + { + "name": "c2d.commands.success", + "displayName": "Successful command invocations", + "displayDescription": "The count of all successful command requests initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.commands.failure", + "displayName": "Failed command invocations", + "displayDescription": "The count of all failed command requests initiated from IoT Central", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.commands.requestSize", + "displayName": "Request size of command invocations", + "displayDescription": "Request size of all command requests initiated from IoT Central", + "unit": "Bytes", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "c2d.commands.responseSize", + "displayName": "Response size of command invocations", + "displayDescription": "Response size of all command responses initiated from IoT Central", + "unit": "Bytes", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.telemetry.ingress.allProtocol", + "displayName": "Total Telemetry Message Send Attempts", + "displayDescription": "Number of device-to-cloud telemetry messages attempted to be sent to the IoT Central application", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "d2c.telemetry.ingress.success", + "displayName": "Total Telemetry Messages Sent", + "displayDescription": "Number of device-to-cloud telemetry messages successfully sent to the IoT Central application", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false + }, + { + "name": "dataExport.messages.received", + "displayName": "Data Export Messages Received", + "displayDescription": "Number of messages incoming to data export, before filtering and enrichment processing", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false, + "dimensions": [ + { + "name": "exportId", + "displayName": "Export Id", + "toBeExportedForShoebox": true + }, + { + "name": "exportDisplayName", + "displayName": "Export Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "destinationId", + "displayName": "Destination Id", + "toBeExportedForShoebox": true + }, + { + "name": "destinationDisplayName", + "displayName": "Destination Display Name", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "dataExport.messages.filtered", + "displayName": "Data Export Messages Filtered", + "displayDescription": "Number of messages that have passed through filters in data export", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false, + "dimensions": [ + { + "name": "exportId", + "displayName": "Export Id", + "toBeExportedForShoebox": true + }, + { + "name": "exportDisplayName", + "displayName": "Export Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "destinationId", + "displayName": "Destination Id", + "toBeExportedForShoebox": true + }, + { + "name": "destinationDisplayName", + "displayName": "Destination Display Name", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "dataExport.messages.written", + "displayName": "Data Export Messages Written", + "displayDescription": "Number of messages written to a destination", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": false, + "dimensions": [ + { + "name": "exportId", + "displayName": "Export Id", + "toBeExportedForShoebox": true + }, + { + "name": "exportDisplayName", + "displayName": "Export Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "destinationId", + "displayName": "Destination Id", + "toBeExportedForShoebox": true + }, + { + "name": "destinationDisplayName", + "displayName": "Destination Display Name", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "dataExport.error", + "displayName": "Data Export Errors", + "displayDescription": "Number of errors encountered for data export", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": true, + "dimensions": [ + { + "name": "exportId", + "displayName": "Export Id", + "toBeExportedForShoebox": true + }, + { + "name": "exportDisplayName", + "displayName": "Export Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "destinationId", + "displayName": "Destination Id", + "toBeExportedForShoebox": true + }, + { + "name": "destinationDisplayName", + "displayName": "Destination Display Name", + "toBeExportedForShoebox": true + } + ] + }, + { + "name": "dataExport.statusChange", + "displayName": "Data Export Status Change", + "displayDescription": "Number of status changes", + "unit": "Count", + "aggregationType": "Total", + "supportedAggregationTypes": [ + "Total" + ], + "supportedTimeGrainTypes": [ + "PT1M", + "PT5M", + "PT15M", + "PT30M", + "PT1H", + "PT6H", + "PT12H", + "P1D" + ], + "fillGapWithZero": true, + "dimensions": [ + { + "name": "exportId", + "displayName": "Export Id", + "toBeExportedForShoebox": true + }, + { + "name": "exportDisplayName", + "displayName": "Export Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "destinationId", + "displayName": "Destination Id", + "toBeExportedForShoebox": true + }, + { + "name": "destinationDisplayName", + "displayName": "Destination Display Name", + "toBeExportedForShoebox": true + }, + { + "name": "status", + "displayName": "Status", + "toBeExportedForShoebox": true + } + ] + } + ] + } + } + }, + { + "name": "Microsoft.IoTCentral/iotApps/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Get/List diagnostic settings", + "description": "Get/List all the diagnostic settings for the resource" + }, + "origin": "system" + }, + { + "name": "Microsoft.IoTCentral/iotApps/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Azure IoT Central", + "resource": "IoTApps", + "operation": "Create/Update/Patch diagnostic settings", + "description": "Set diagnostic settings for the resource" + }, + "origin": "system" + } + ], + "nextLink": null + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Delete.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Delete.json new file mode 100644 index 000000000000..b301c891711a --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Delete.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview", + "privateEndpointConnectionName": "myIoTCentralAppEndpoint" + }, + "responses": { + "202": { + "description": "Request was accepted.", + "headers": { + "Retry-After": "10", + "Location": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationResults/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=deletePrivateEndpointConnection", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=deletePrivateEndpointConnection" + } + }, + "204": { + "description": "Resource does not exist." + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Get.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Get.json new file mode 100644 index 000000000000..48198ebe3ecb --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Get.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview", + "privateEndpointConnectionName": "myIoTCentralAppEndpoint" + }, + "responses": { + "200": { + "description": "Returns the private endpoint connection details", + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_List.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_List.json new file mode 100644 index 000000000000..5a49548b86ff --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_List.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + ] + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Update.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Update.json new file mode 100644 index 000000000000..c66f2382b7a3 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateEndpointConnections_Update.json @@ -0,0 +1,46 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview", + "privateEndpointConnectionName": "myIoTCentralAppEndpoint", + "PrivateEndpointConnection": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + }, + "responses": { + "200": { + "headers": { + "Code": "200", + "Message": "OK", + "Retry-After": "10", + "Azure-AsyncOperation": "https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.IoTCentral/locations/westus/operationStatus/00000000-0000-0000-0000-000000000000?api-version=2021-11-01-preview&type=updatePrivateEndpointConnection" + }, + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/PrivateEndpointConnections/myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "name": "myIoTCentralAppEndpoint.a791c6b5-874d-4f03-9092-718490d33770", + "type": "Microsoft.IoTCentral/iotApps/privateEndpointConnections", + "properties": { + "groupIds": [ + "iotApp" + ], + "privateEndpoint": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resRg/providers/Microsoft.Network/privateEndpoints/myIoTCentralAppEndpoint" + }, + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Auto-approved", + "actionsRequired": "None" + } + } + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_Get.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_Get.json new file mode 100644 index 000000000000..e0221d4d1604 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_Get.json @@ -0,0 +1,33 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "groupId": "iotApp", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/privateLinkResources/iotApp", + "name": "iotApp", + "type": "Microsoft.IoTCentral/iotApps/privateLinkResources", + "properties": { + "groupId": "iotApp", + "requiredMembers": [ + "myIoTCentralApp", + "iotc-00000000-0000-0000-0000-000000000000", + "iotc-00000000-0000-0000-0", + "saas-dps-00000000-0000-0000-0000-000000000000" + ], + "requiredZoneNames": [ + "privatelink.azureiotcentral-test.com", + "privatelink.azure-devices.net", + "privatelink.servicebus.windows.net", + "privatelink.azure-devices-provisioning.net" + ] + } + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_List.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_List.json new file mode 100644 index 000000000000..b8e2e9a3fd58 --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/examples/PrivateLinks_List.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "resRg", + "resourceName": "myIoTCentralApp", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/resRg/providers/Microsoft.IoTCentral/iotApps/myIoTCentralApp/privateLinkResources/iotApp", + "name": "iotApp", + "type": "Microsoft.IoTCentral/iotApps/privateLinkResources", + "properties": { + "groupId": "iotApp", + "requiredMembers": [ + "myIoTCentralApp", + "iotc-00000000-0000-0000-0000-000000000000", + "iotc-00000000-0000-0000-0", + "saas-dps-00000000-0000-0000-0000-000000000000" + ], + "requiredZoneNames": [ + "privatelink.azureiotcentral-test.com", + "privatelink.azure-devices.net", + "privatelink.servicebus.windows.net", + "privatelink.azure-devices-provisioning.net" + ] + } + } + ] + } + } + } +} diff --git a/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/iotcentral.json b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/iotcentral.json new file mode 100644 index 000000000000..066ea65f0ced --- /dev/null +++ b/specification/iotcentral/resource-manager/Microsoft.IoTCentral/preview/2021-11-01-preview/iotcentral.json @@ -0,0 +1,1337 @@ +{ + "swagger": "2.0", + "info": { + "version": "2021-11-01-preview", + "title": "IotCentralClient", + "description": "Use this API to manage IoT Central Applications in your Azure subscription." + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps/{resourceName}": { + "get": { + "tags": [ + "Apps" + ], + "description": "Get the metadata of an IoT Central application.", + "operationId": "Apps_Get", + "x-ms-examples": { + "Apps_Get": { + "$ref": "./examples/Apps_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "The body contains all the non-security properties of the IoT Central application. Security-related properties are set to null.", + "schema": { + "$ref": "#/definitions/App" + } + }, + "default": { + "description": "Default error response", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Apps" + ], + "description": "Create or update the metadata of an IoT Central application. The usual pattern to modify a property is to retrieve the IoT Central application metadata and security metadata, and then combine them with the modified values in a new body to update the IoT Central application.", + "operationId": "Apps_CreateOrUpdate", + "x-ms-examples": { + "Apps_CreateOrUpdate": { + "$ref": "./examples/Apps_CreateOrUpdate.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "App", + "in": "body", + "description": "The IoT Central application metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/App" + } + } + ], + "responses": { + "200": { + "description": "Update request is being processed. The body contains the resource representation that indicates a transitional provisioning state.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/App" + } + }, + "201": { + "description": "Create request is being processed. The body contains the resource representation that indicates a transitional provisioning state.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/App" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + }, + "patch": { + "tags": [ + "Apps" + ], + "description": "Update the metadata of an IoT Central application.", + "operationId": "Apps_Update", + "x-ms-examples": { + "Apps_Update": { + "$ref": "./examples/Apps_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "AppPatch", + "in": "body", + "description": "The IoT Central application metadata and security metadata.", + "required": true, + "schema": { + "$ref": "#/definitions/AppPatch" + } + } + ], + "responses": { + "202": { + "description": "Accepted - Patch request accepted; the operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation. Returns 202 Accepted while the operation is in progress.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Apps" + ], + "description": "Delete an IoT Central application.", + "operationId": "Apps_Delete", + "x-ms-examples": { + "Apps_Delete": { + "$ref": "./examples/Apps_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "202": { + "description": "Accepted - Delete request accepted; the operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation. Returns 202 Accepted while the operation is in progress.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + } + }, + "204": { + "description": "If the resource does not exist, a 204 No Content status code is returned." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/iotApps": { + "get": { + "tags": [ + "Apps" + ], + "description": "Get all IoT Central Applications in a subscription.", + "operationId": "Apps_ListBySubscription", + "x-ms-examples": { + "Apps_ListBySubscription": { + "$ref": "./examples/Apps_ListBySubscription.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT Central Applications in the subscription.", + "schema": { + "$ref": "#/definitions/AppListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps/{resourceName}/privateEndpointConnections/{privateEndpointConnectionName}": { + "get": { + "tags": [ + "Networking" + ], + "description": "Get the metadata of a private endpoint connection for the IoT Central Application.", + "operationId": "PrivateEndpointConnections_Get", + "x-ms-examples": { + "PrivateEndpointConnections_Get": { + "$ref": "./examples/PrivateEndpointConnections_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "200": { + "description": "The private endpoint connection for the IoT Central Application.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + }, + "put": { + "tags": [ + "Networking" + ], + "description": "Update a private endpoint connection.", + "operationId": "PrivateEndpointConnections_Create", + "x-ms-examples": { + "PrivateEndpointConnections_Update": { + "$ref": "./examples/PrivateEndpointConnections_Update.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + }, + { + "name": "PrivateEndpointConnection", + "in": "body", + "description": "The private endpoint connection metadata.", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateEndpointConnection" + } + } + ], + "responses": { + "200": { + "description": "The update request is being processed. The body contains the resource representation that indicates a transitional provisioning state.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + }, + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + }, + "delete": { + "tags": [ + "Networking" + ], + "description": "Deletes a private endpoint connection from the IoT Central Application.", + "operationId": "PrivateEndpointConnections_Delete", + "x-ms-examples": { + "PrivateEndpointConnections_Delete": { + "$ref": "./examples/PrivateEndpointConnections_Delete.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "$ref": "#/parameters/privateEndpointConnectionName" + } + ], + "responses": { + "202": { + "description": "Accepted - Delete request accepted; the operation will complete asynchronously.", + "headers": { + "Azure-AsyncOperation": { + "description": "URL to query for status of the operation. Returns current state, progress, and error metadata for the operation.", + "type": "string" + }, + "Location": { + "description": "URL to query for status of the operation. Returns 202 Accepted while the operation is in progress.", + "type": "string" + }, + "Retry-After": { + "description": "How long the user should wait before making a follow-up request.", + "type": "string" + } + } + }, + "204": { + "description": "If the resource does not exist, a 204 No Content status code is returned." + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false, + "x-ms-long-running-operation": true + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps/{resourceName}/privateEndpointConnections": { + "get": { + "tags": [ + "Networking" + ], + "description": "Get all private endpoint connections of a IoT Central Application.", + "operationId": "PrivateEndpointConnections_List", + "x-ms-examples": { + "PrivateEndpointConnections_List": { + "$ref": "./examples/PrivateEndpointConnections_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the private endpoint connections of the IoT Central Application.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps/{resourceName}/privateLinkResources/{groupId}": { + "get": { + "tags": [ + "Networking" + ], + "description": "Get a private link resource of a IoT Central Application.", + "operationId": "PrivateLinks_Get", + "x-ms-examples": { + "PrivateLinks_Get": { + "$ref": "./examples/PrivateLinks_Get.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + }, + { + "name": "groupId", + "in": "path", + "description": "The private link resource name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + ], + "responses": { + "200": { + "description": "The private link resource for the IoT Central Application.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps/{resourceName}/privateLinkResources": { + "get": { + "tags": [ + "Networking" + ], + "description": "Get all private link resources of a IoT Central Application.", + "operationId": "PrivateLinks_List", + "x-ms-examples": { + "PrivateLinks_List": { + "$ref": "./examples/PrivateLinks_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": null + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + }, + { + "$ref": "#/parameters/resourceName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the private links of the IoT Central Application.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.IoTCentral/iotApps": { + "get": { + "tags": [ + "Apps" + ], + "description": "Get all the IoT Central Applications in a resource group.", + "operationId": "Apps_ListByResourceGroup", + "x-ms-examples": { + "Apps_ListByResourceGroup": { + "$ref": "./examples/Apps_ListByResourceGroup.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/resourceGroupName" + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized array of the metadata from all the IoT Central Applications in the resource group.", + "schema": { + "$ref": "#/definitions/AppListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/checkNameAvailability": { + "post": { + "tags": [ + "Apps" + ], + "description": "Check if an IoT Central application name is available.", + "operationId": "Apps_CheckNameAvailability", + "x-ms-examples": { + "Apps_CheckNameAvailability": { + "$ref": "./examples/Apps_CheckNameAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the name of the IoT Central application to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT Central application name is available. If the name is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/AppAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/checkSubdomainAvailability": { + "post": { + "tags": [ + "Apps" + ], + "description": "Check if an IoT Central application subdomain is available.", + "operationId": "Apps_CheckSubdomainAvailability", + "x-ms-examples": { + "Apps_SubdomainAvailability": { + "$ref": "./examples/Apps_CheckSubdomainAvailability.json" + } + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "name": "operationInputs", + "in": "body", + "description": "Set the name parameter in the OperationInputs structure to the subdomain of the IoT Central application to check.", + "required": true, + "schema": { + "$ref": "#/definitions/OperationInputs" + } + } + ], + "responses": { + "200": { + "description": "This is a synchronous operation. The body contains a JSON-serialized response that specifies whether the IoT Central application subdomain is available. If the subdomain is not available, the body contains the reason.", + "schema": { + "$ref": "#/definitions/AppAvailabilityInfo" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.IoTCentral/appTemplates": { + "post": { + "tags": [ + "Apps" + ], + "description": "Get all available application templates.", + "operationId": "Apps_ListTemplates", + "x-ms-examples": { + "Apps_ListTemplates": { + "$ref": "./examples/Apps_Templates.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "responses": { + "200": { + "description": "The body contains all the IoT Central application templates.", + "schema": { + "$ref": "#/definitions/AppTemplatesResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + }, + "/providers/Microsoft.IoTCentral/operations": { + "get": { + "tags": [ + "Operations" + ], + "description": "Lists all of the available IoT Central Resource Provider operations.", + "operationId": "Operations_List", + "x-ms-examples": { + "Operations_List": { + "$ref": "./examples/Operations_List.json" + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + }, + "parameters": [ + { + "$ref": "#/parameters/api-version" + } + ], + "responses": { + "200": { + "description": "OK. The request has succeeded.", + "schema": { + "$ref": "#/definitions/OperationListResult" + } + }, + "default": { + "description": "DefaultErrorResponse", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + }, + "x-ms-error-response": true + } + }, + "deprecated": false + } + } + }, + "definitions": { + "AppProperties": { + "description": "The properties of an IoT Central application.", + "type": "object", + "properties": { + "provisioningState": { + "description": "The provisioning state of the application.", + "$ref": "#/definitions/ProvisioningState" + }, + "applicationId": { + "description": "The ID of the application.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name of the application.", + "type": "string" + }, + "subdomain": { + "description": "The subdomain of the application.", + "type": "string" + }, + "template": { + "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.", + "type": "string", + "x-ms-mutability": [ + "create", + "read" + ] + }, + "state": { + "description": "The current state of the application.", + "$ref": "#/definitions/AppState" + }, + "publicNetworkAccess": { + "description": "Whether requests from the public network are allowed.", + "$ref": "#/definitions/PublicNetworkAccess" + }, + "networkRuleSets": { + "description": "Network Rule Set Properties of this IoT Central application.", + "$ref": "#/definitions/NetworkRuleSets" + }, + "privateEndpointConnections": { + "description": "Private endpoint connections created on this IoT Central application.", + "type": "array", + "items": { + "$ref": "../../../../../common-types/resource-management/v4/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "readOnly": true + } + } + }, + "ProvisioningState": { + "type": "string", + "readOnly": true, + "description": "The provisioning state of the application.", + "enum": [ + "Creating", + "Deleting", + "Updating", + "Succeeded", + "Failed", + "Canceled" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "modelAsString": true + } + }, + "PublicNetworkAccess": { + "description": "Whether requests from the public network are allowed.", + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "modelAsString": true + } + }, + "NetworkRuleSets": { + "description": "Network Rule Set Properties of this IoT Central application.", + "type": "object", + "properties": { + "applyToDevices": { + "description": "Whether these rules apply for device connectivity to IoT Hub and Device Provisioning service associated with this application.", + "type": "boolean" + }, + "applyToIoTCentral": { + "description": "Whether these rules apply for connectivity via IoT Central web portal and APIs.", + "type": "boolean" + }, + "defaultAction": { + "description": "The default network action to apply.", + "$ref": "#/definitions/NetworkAction" + }, + "ipRules": { + "description": "List of IP rules.", + "type": "array", + "items": { + "$ref": "#/definitions/NetworkRuleSetIpRule" + }, + "x-ms-identifiers": [ + "filterName" + ] + } + } + }, + "NetworkRuleSetIpRule": { + "description": "An object for an IP range that will be allowed access.", + "type": "object", + "properties": { + "filterName": { + "description": "The readable name of the IP rule.", + "type": "string" + }, + "ipMask": { + "description": "The CIDR block defining the IP range.", + "type": "string" + } + } + }, + "NetworkAction": { + "description": "Whether to allow or deny network traffic.", + "type": "string", + "enum": [ + "Allow", + "Deny" + ], + "x-ms-enum": { + "name": "NetworkAction", + "modelAsString": true + } + }, + "AppState": { + "description": "The current state of the application.", + "type": "string", + "enum": [ + "created", + "suspended" + ], + "x-ms-enum": { + "name": "AppState", + "modelAsString": true + }, + "readOnly": true + }, + "AppSkuInfo": { + "description": "Information about the SKU of the IoT Central application.", + "type": "object", + "properties": { + "name": { + "description": "The name of the SKU.", + "enum": [ + "ST0", + "ST1", + "ST2" + ], + "type": "string", + "x-ms-enum": { + "name": "AppSku", + "modelAsString": true + } + } + }, + "required": [ + "name" + ] + }, + "App": { + "description": "The IoT Central application.", + "type": "object", + "properties": { + "properties": { + "description": "The common properties of an IoT Central application.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AppProperties" + }, + "sku": { + "description": "A valid instance SKU.", + "$ref": "#/definitions/AppSkuInfo" + }, + "identity": { + "description": "The managed identities for the IoT Central application.", + "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/SystemAssignedServiceIdentity" + } + }, + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "x-ms-azure-resource": true, + "required": [ + "sku" + ] + }, + "AppPatch": { + "description": "The description of the IoT Central application.", + "type": "object", + "properties": { + "tags": { + "description": "Instance tags", + "type": "object", + "additionalProperties": { + "type": "string" + } + }, + "sku": { + "description": "A valid instance SKU.", + "$ref": "#/definitions/AppSkuInfo" + }, + "properties": { + "description": "The common properties of an IoT Central application.", + "x-ms-client-flatten": true, + "$ref": "#/definitions/AppProperties" + }, + "identity": { + "description": "The managed identities for the IoT Central application.", + "$ref": "../../../../../common-types/resource-management/v3/managedidentity.json#/definitions/SystemAssignedServiceIdentity" + } + } + }, + "AppListResult": { + "description": "A list of IoT Central Applications with a next link.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of IoT Central Applications.", + "type": "string" + }, + "value": { + "description": "A list of IoT Central Applications.", + "type": "array", + "items": { + "$ref": "#/definitions/App" + } + } + } + }, + "OperationListResult": { + "description": "A list of IoT Central operations. It contains a list of operations and a URL link to get the next set of results.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of IoT Central description objects.", + "type": "string" + }, + "value": { + "description": "A list of operations supported by the Microsoft.IoTCentral resource provider.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/Operation" + }, + "x-ms-identifiers": [ + "name" + ] + } + } + }, + "Operation": { + "description": "IoT Central REST API operation", + "type": "object", + "properties": { + "name": { + "readOnly": true, + "type": "string", + "description": "Operation name: {provider}/{resource}/{read | write | action | delete}" + }, + "display": { + "description": "The object that represents the operation.", + "$ref": "#/definitions/OperationDisplay" + }, + "origin": { + "description": "The intended executor of the operation.", + "type": "string", + "readOnly": true + }, + "properties": { + "description": "Additional descriptions for the operation.", + "type": "object", + "readOnly": true, + "x-ms-client-flatten": false + } + } + }, + "OperationDisplay": { + "description": "The object that represents the operation.", + "type": "object", + "properties": { + "provider": { + "readOnly": true, + "type": "string", + "description": "Service provider: Microsoft IoT Central" + }, + "resource": { + "readOnly": true, + "type": "string", + "description": "Resource Type: IoT Central" + }, + "operation": { + "readOnly": true, + "type": "string", + "description": "Name of the operation" + }, + "description": { + "readOnly": true, + "type": "string", + "description": "Friendly description for the operation," + } + } + }, + "OperationInputs": { + "description": "Input values.", + "type": "object", + "properties": { + "name": { + "description": "The name of the IoT Central application instance to check.", + "type": "string" + }, + "type": { + "description": "The type of the IoT Central resource to query.", + "type": "string", + "default": "IoTApps" + } + }, + "required": [ + "name" + ] + }, + "AppAvailabilityInfo": { + "description": "The properties indicating whether a given IoT Central application name or subdomain is available.", + "type": "object", + "properties": { + "nameAvailable": { + "description": "The value which indicates whether the provided name is available.", + "type": "boolean", + "readOnly": true + }, + "reason": { + "description": "The reason for unavailability.", + "type": "string", + "readOnly": true + }, + "message": { + "description": "The detailed reason message.", + "type": "string", + "readOnly": true + } + } + }, + "AppTemplate": { + "description": "IoT Central Application Template.", + "type": "object", + "properties": { + "manifestId": { + "description": "The ID of the template.", + "type": "string", + "readOnly": true + }, + "manifestVersion": { + "description": "The version of the template.", + "type": "string", + "readOnly": true + }, + "name": { + "description": "The name of the template.", + "type": "string", + "readOnly": true + }, + "title": { + "description": "The title of the template.", + "type": "string", + "readOnly": true + }, + "order": { + "description": "The order of the template in the templates list.", + "type": "number", + "readOnly": true + }, + "description": { + "description": "The description of the template.", + "type": "string", + "readOnly": true + }, + "industry": { + "description": "The industry of the template.", + "type": "string", + "readOnly": true + }, + "locations": { + "description": "A list of locations that support the template.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AppTemplateLocations" + } + } + } + }, + "AppTemplateLocations": { + "description": "IoT Central Application Template Locations.", + "type": "object", + "properties": { + "id": { + "description": "The ID of the location.", + "type": "string", + "readOnly": true + }, + "displayName": { + "description": "The display name of the location.", + "type": "string", + "readOnly": true + } + } + }, + "AppTemplatesResult": { + "description": "A list of IoT Central Application Templates with a next link.", + "type": "object", + "properties": { + "nextLink": { + "description": "The link used to get the next page of IoT Central application templates.", + "type": "string" + }, + "value": { + "description": "A list of IoT Central Application Templates.", + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/AppTemplate" + }, + "x-ms-identifiers": [ + "manifestId" + ] + } + } + } + }, + "parameters": { + "subscriptionId": { + "name": "subscriptionId", + "in": "path", + "description": "The subscription identifier.", + "required": true, + "type": "string" + }, + "api-version": { + "name": "api-version", + "in": "query", + "description": "The version of the API.", + "required": true, + "type": "string" + }, + "resourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "description": "The name of the resource group that contains the IoT Central application.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "resourceName": { + "name": "resourceName", + "in": "path", + "description": "The ARM resource name of the IoT Central application.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method", + "x-comment": "validation must match #/definitions/App" + }, + "privateEndpointConnectionName": { + "name": "privateEndpointConnectionName", + "in": "path", + "description": "The private endpoint connection name.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/iotcentral/resource-manager/readme.md b/specification/iotcentral/resource-manager/readme.md index 90322bc3427f..c138a00652e2 100644 --- a/specification/iotcentral/resource-manager/readme.md +++ b/specification/iotcentral/resource-manager/readme.md @@ -26,10 +26,34 @@ These are the global settings for IotCentral. ``` yaml openapi-type: arm -tag: package-2021-06 +tag: package-preview-2021-11 ``` +### Tag: package-preview-2021-11 + +These settings apply only when `--tag=package-preview-2021-11` is specified on the command line. + +```yaml $(tag) == 'package-preview-2021-11' +input-file: + - Microsoft.IoTCentral/preview/2021-11-01-preview/iotcentral.json +directive: + - suppress: R4009 + from: iotcentral.json + reason: We do not yet support systemdata. + - suppress: R3018 + from: iotcentral.json + reason: resource name availability needs to be boolean (available or not) + - suppress: R4018 + from: iotcentral.json + reason: We do not yet support isDataAction, display.description and display.resource. + - suppress: R3026 + from: privatelinks.json + reason: privateLink and privateEndpointConnection sub-resources don't have patch operations. + - suppress: R3010 + from: privatelinks.json + reason: privateLink and privateEndpointConnection sub-resources don't have list by immediate parent apis. +``` ### Tag: package-2021-06 These settings apply only when `--tag=package-2021-06` is specified on the command line. @@ -48,6 +72,7 @@ directive: from: iotcentral.json reason: We do not yet support isDataAction, display.description and display.resource. ``` + ### Tag: package-2018-09-01 These settings apply only when `--tag=package-2018-09-01` is specified on the command line. @@ -57,15 +82,6 @@ input-file: - Microsoft.IoTCentral/stable/2018-09-01/iotcentral.json ``` -### Tag: package-2017-07-01-privatepreview - -These settings apply only when `--tag=package-2017-07-01-privatepreview` is specified on the command line. - -``` yaml $(tag) == 'package-2017-07-01-privatepreview' -input-file: -- Microsoft.IoTCentral/preview/2017-07-01-privatepreview/iotcentral.json -``` - --- # Code Generation @@ -123,14 +139,6 @@ payload-flattening-threshold: 1 output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-iotcentral ``` -### Java multi-api - -``` yaml $(java) && $(multiapi) -batch: - - tag: package-2018-09-01 - - tag: package-2017-07-01-privatepreview -``` - ### Tag: package-2018-09-01 and java These settings apply only when `--tag=package-2018-09-01 --java` is specified on the command line. @@ -143,16 +151,3 @@ java: regenerate-manager: true generate-interface: true ``` - -### Tag: package-2017-07-01-privatepreview and java - -These settings apply only when `--tag=package-2017-07-01-privatepreview --java` is specified on the command line. -Please also specify `--azure-libraries-for-java-folder=`. - -``` yaml $(tag)=='package-2017-07-01-privatepreview' && $(java) && $(multiapi) -java: - namespace: com.microsoft.azure.management.iotcentral.v2017_07_01_privatepreview - output-folder: $(azure-libraries-for-java-folder)/sdk/iotcentral/mgmt-v2017_07_01_privatepreview -regenerate-manager: true -generate-interface: true -```