From c4810837cd063eb4866ea1789388388bba3ea7c3 Mon Sep 17 00:00:00 2001 From: giakas Date: Wed, 29 Sep 2021 22:57:17 -0700 Subject: [PATCH] [Hub Generated] Review request for Microsoft.Media to add version preview/2021-11-01-preview (#16089) * Adds base for updating Microsoft.Media from version preview/2021-05-01-preview to version 2021-11-01-preview * Updates readme * Updates API version in new specs and examples * Update to use 2021-11-01 version of the swaggers and examples * Remove unused examples and fix prettier errors. * fix patch where required is empty. * fix some lint errors * fix a json parse issue. * fix enum casing * fix missing 204 on endpointconnections delete * create entities for Patch operation * updating descriptions * fixed a bad commit. * fix validation errors * fix few more validation issues. * fix sample validaitons * fix examples * Update PrivateEndpoints to use v3 version of commonTypes to use systemData * change all commontypes to v3 * add long running operation to operations * update missing descriptions * fix a parameter name to operationId * Update few more descriptions * adding supressions for few failed validations * fix suppreesions * add few more descriptions --- .../2021-11-01-preview/EdgeModules.json | 380 +++ .../PipelineTopologies.json | 2475 +++++++++++++++++ .../2021-11-01-preview/VideoAnalyzers.json | 1822 ++++++++++++ .../preview/2021-11-01-preview/Videos.json | 1051 +++++++ .../examples/access-policy-create.json | 159 ++ .../examples/access-policy-delete.json | 13 + .../examples/access-policy-get.json | 65 + .../examples/access-policy-list.json | 121 + .../examples/access-policy-patch.json | 105 + .../accounts-check-name-availability.json | 21 + .../examples/edge-modules-create.json | 48 + .../examples/edge-modules-delete.json | 13 + .../examples/edge-modules-get.json | 29 + .../examples/edge-modules-list.json | 48 + .../edge-modules-listProvisioningToken.json | 19 + .../examples/live-pipeline-activate.json | 13 + .../examples/live-pipeline-create.json | 74 + .../examples/live-pipeline-deactivate.json | 13 + .../examples/live-pipeline-delete.json | 13 + .../examples/live-pipeline-get-by-name.json | 36 + .../examples/live-pipeline-list.json | 63 + .../live-pipeline-operation-status-get.json | 21 + .../examples/live-pipeline-patch.json | 41 + .../examples/operations-list-all.json | 1449 ++++++++++ .../examples/pipeline-job-cancel.json | 13 + .../examples/pipeline-job-create.json | 71 + .../examples/pipeline-job-delete.json | 13 + .../examples/pipeline-job-get-by-name.json | 35 + .../examples/pipeline-job-list.json | 62 + .../pipeline-job-operation-status-get.json | 21 + .../examples/pipeline-job-patch.json | 40 + .../examples/pipeline-topology-create.json | 204 ++ .../examples/pipeline-topology-delete.json | 13 + .../pipeline-topology-get-by-name.json | 79 + .../examples/pipeline-topology-list.json | 160 ++ .../examples/pipeline-topology-patch.json | 84 + ...eo-analyzer-accounts-create-or-update.json | 262 ++ .../video-analyzer-accounts-delete.json | 12 + .../video-analyzer-accounts-get-by-name.json | 116 + ...o-analyzer-accounts-list-all-accounts.json | 132 + ...counts-subscription-list-all-accounts.json | 112 + .../video-analyzer-accounts-update.json | 90 + ...video-analyzer-operation-result-by-id.json | 68 + ...tatus-by-id-non-terminal-state-failed.json | 24 + ...ation-status-by-id-non-terminal-state.json | 20 + ...operation-status-by-id-terminal-state.json | 20 + ...er-private-endpoint-connection-delete.json | 13 + ...ivate-endpoint-connection-get-by-name.json | 36 + ...yzer-private-endpoint-connection-list.json | 62 + ...int-connection-operation-result-by-id.json | 39 + ...operation-status-by-id-terminal-state.json | 22 + ...lyzer-private-endpoint-connection-put.json | 44 + ...er-private-link-resources-get-by-name.json | 32 + ...-analyzer-private-link-resources-list.json | 75 + .../examples/video-create.json | 73 + .../examples/video-delete.json | 13 + .../examples/video-get.json | 39 + .../examples/video-list.json | 69 + .../examples/video-listContentToken.json | 17 + .../examples/video-patch.json | 44 + .../videoanalyzer/resource-manager/readme.md | 29 +- 61 files changed, 10347 insertions(+), 3 deletions(-) create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/EdgeModules.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/PipelineTopologies.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/VideoAnalyzers.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/Videos.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-get.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-patch.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/accounts-check-name-availability.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-get.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-listProvisioningToken.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-activate.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-deactivate.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-operation-status-get.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-patch.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/operations-list-all.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-cancel.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-operation-status-get.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-patch.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-patch.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-create-or-update.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-list-all-accounts.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-update.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-result-by-id.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state-failed.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-terminal-state.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-result-by-id.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-status-by-id-terminal-state.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-put.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-get-by-name.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-create.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-delete.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-get.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-list.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-listContentToken.json create mode 100644 specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-patch.json diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/EdgeModules.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/EdgeModules.json new file mode 100644 index 000000000000..8120f2aff63c --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/EdgeModules.json @@ -0,0 +1,380 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer Resource Provider", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-11-01-preview" + }, + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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" + } + } + }, + "definitions": { + "EdgeModuleProperties": { + "properties": { + "edgeModuleId": { + "type": "string", + "format": "uuid", + "description": "Internal ID generated for the instance of the Video Analyzer edge module.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "description": "Application level properties for the edge module resource." + }, + "ListProvisioningTokenInput": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The desired expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized and connected to the Internet prior to the token expiration date." + } + }, + "type": "object", + "required": [ + "expirationDate" + ], + "description": "The input parameters to generate registration token for the Azure Video Analyzer IoT edge module." + }, + "EdgeModuleProvisioningToken": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The expiration date of the registration token. The Azure Video Analyzer IoT edge module must be initialized and connected to the Internet prior to the token expiration date.", + "readOnly": true, + "x-nullable": false + }, + "token": { + "type": "string", + "description": "The token blob to be provided to the Azure Video Analyzer IoT edge module through the Azure IoT Edge module twin properties.", + "readOnly": true + } + }, + "type": "object", + "description": "Provisioning token properties. A provisioning token allows for a single instance of Azure Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial handshake, the IoT edge module will agree on a set of authentication keys which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token can be generated for the same IoT edge module in case the module state lost or reset." + }, + "EdgeModuleEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EdgeModuleProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "The representation of an edge module." + }, + "EdgeModuleEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/EdgeModuleEntity" + }, + "description": "A collection of EdgeModuleEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of EdgeModuleEntity items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules": { + "get": { + "summary": "List all existing edge module resources.", + "description": "List all existing edge module resources, along with their JSON representations.", + "operationId": "EdgeModules_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists the registered edge modules.": { + "$ref": "examples/edge-modules-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules/{edgeModuleName}": { + "get": { + "summary": "Retrieves an existing edge module resource.", + "description": "Retrieves an existing edge module resource with the given name.", + "operationId": "EdgeModules_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The Edge Module name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets edge module registration.": { + "$ref": "examples/edge-modules-get.json" + } + } + }, + "put": { + "summary": "Creates a new edge module or updates an existing one.", + "description": "Creates a new edge module or updates an existing one. An edge module resource enables a single instance of an Azure Video Analyzer IoT edge module to interact with the Video Analyzer Account. This is used for authorization and also to make sure that the particular edge module instance only has access to the data it requires from the Azure Video Analyzer service. A new edge module resource should be created for every new instance of an Azure Video Analyzer edge module deployed to you Azure IoT edge environment. Edge module resources can be deleted if the specific module is not in use anymore.", + "operationId": "EdgeModules_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The Edge Module name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Registers an edge module.": { + "$ref": "examples/edge-modules-create.json" + } + } + }, + "delete": { + "summary": "Deletes an existing edge module resource.", + "description": "Deletes an existing edge module resource. Deleting the edge module resource will prevent an Azure Video Analyzer IoT edge module which was previously initiated with the module provisioning token from communicating with the cloud.", + "operationId": "EdgeModules_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The Edge Module name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes an edge module registration.": { + "$ref": "examples/edge-modules-delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/edgeModules/{edgeModuleName}/listProvisioningToken": { + "post": { + "summary": "Creates a new provisioning token.", + "description": "Creates a new provisioning token. A provisioning token allows for a single instance of Azure Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial handshake, the IoT edge module will agree on a set of authentication keys which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token can be generated for the same IoT edge module in case the module state lost or reset.", + "operationId": "EdgeModules_ListProvisioningToken", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleProvisioningToken" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The Edge Module name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ListProvisioningTokenInput" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Generate the Provisioning token for an edge module registration.": { + "$ref": "examples/edge-modules-listProvisioningToken.json" + } + } + } + } + }, + "parameters": { + "AzureVideoAnalyzerAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure Video Analyzer account name.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/PipelineTopologies.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/PipelineTopologies.json new file mode 100644 index 000000000000..81b842eaf76d --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/PipelineTopologies.json @@ -0,0 +1,2475 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer Resource Provider", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-11-01-preview" + }, + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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" + } + } + }, + "definitions": { + "Sku": { + "properties": { + "name": { + "type": "string", + "enum": [ + "Live_S1", + "Batch_S1" + ], + "x-ms-enum": { + "name": "SkuName", + "values": [ + { + "value": "Live_S1", + "description": "Represents the Live S1 SKU name. Using this SKU you can create live pipelines to capture, record, and stream live video from RTSP-capable cameras at bitrate settings from 0.5 Kbps to 3000 Kbps." + }, + { + "value": "Batch_S1", + "description": "Represents the Batch S1 SKU name. Using this SKU you can create pipeline jobs to process recorded content." + } + ], + "modelAsString": true + }, + "description": "The SKU name." + }, + "tier": { + "type": "string", + "enum": [ + "Standard" + ], + "x-ms-enum": { + "name": "SkuTier", + "values": [ + { + "value": "Standard", + "description": "Standard tier." + } + ], + "modelAsString": true + }, + "description": "The SKU tier.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "The SKU details." + }, + "PipelineTopologyProperties": { + "properties": { + "description": { + "type": "string", + "description": "An optional description of the pipeline topology. It is recommended that the expected use of the topology to be described here." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDeclaration" + }, + "description": "List of the topology parameter declarations. Parameters declared here can be referenced throughout the topology nodes through the use of \"${PARAMETER_NAME}\" string pattern. Parameters can have optional default values and can later be defined in individual instances of the pipeline." + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/definitions/SourceNodeBase" + }, + "description": "List of the topology source nodes. Source nodes enable external data to be ingested by the pipeline." + }, + "processors": { + "type": "array", + "items": { + "$ref": "#/definitions/ProcessorNodeBase" + }, + "description": "List of the topology processor nodes. Processor nodes enable pipeline data to be analyzed, processed or transformed." + }, + "sinks": { + "type": "array", + "items": { + "$ref": "#/definitions/SinkNodeBase" + }, + "description": "List of the topology sink nodes. Sink nodes allow pipeline data to be stored or exported." + } + }, + "type": "object", + "required": [ + "sources", + "sinks" + ], + "description": "Describes the properties of a pipeline topology." + }, + "PipelineTopologyPropertiesUpdate": { + "properties": { + "description": { + "type": "string", + "description": "An optional description of the pipeline topology. It is recommended that the expected use of the topology to be described here." + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDeclaration" + }, + "description": "List of the topology parameter declarations. Parameters declared here can be referenced throughout the topology nodes through the use of \"${PARAMETER_NAME}\" string pattern. Parameters can have optional default values and can later be defined in individual instances of the pipeline." + }, + "sources": { + "type": "array", + "items": { + "$ref": "#/definitions/SourceNodeBase" + }, + "description": "List of the topology source nodes. Source nodes enable external data to be ingested by the pipeline." + }, + "processors": { + "type": "array", + "items": { + "$ref": "#/definitions/ProcessorNodeBase" + }, + "description": "List of the topology processor nodes. Processor nodes enable pipeline data to be analyzed, processed or transformed." + }, + "sinks": { + "type": "array", + "items": { + "$ref": "#/definitions/SinkNodeBase" + }, + "description": "List of the topology sink nodes. Sink nodes allow pipeline data to be stored or exported." + } + }, + "type": "object", + "description": "Describes the properties of a pipeline topology." + }, + "ParameterDeclaration": { + "properties": { + "name": { + "type": "string", + "description": "Name of the parameter." + }, + "type": { + "type": "string", + "enum": [ + "String", + "SecretString", + "Int", + "Double", + "Bool" + ], + "x-ms-enum": { + "name": "ParameterType", + "values": [ + { + "value": "String", + "description": "The parameter's value is a string." + }, + { + "value": "SecretString", + "description": "The parameter's value is a string that holds sensitive information." + }, + { + "value": "Int", + "description": "The parameter's value is a 32-bit signed integer." + }, + { + "value": "Double", + "description": "The parameter's value is a 64-bit double-precision floating point." + }, + { + "value": "Bool", + "description": "The parameter's value is a boolean value that is either true or false." + } + ], + "modelAsString": true + }, + "description": "Type of the parameter." + }, + "description": { + "type": "string", + "description": "Description of the parameter." + }, + "default": { + "type": "string", + "description": "The default value for the parameter to be used if the pipeline does not specify a value." + } + }, + "type": "object", + "required": [ + "name", + "type" + ], + "description": "Single topology parameter declaration. Declared parameters can and must be referenced throughout the topology and can optionally have default values to be used when they are not defined in the pipelines." + }, + "NodeBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "name": { + "type": "string", + "description": "Node name. Must be unique within the topology." + } + }, + "type": "object", + "required": [ + "@type", + "name" + ], + "description": "Base class for nodes." + }, + "SourceNodeBase": { + "discriminator": "@type", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SourceNodeBase", + "allOf": [ + { + "$ref": "#/definitions/NodeBase" + } + ], + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for topology source nodes." + }, + "ProcessorNodeBase": { + "discriminator": "@type", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.ProcessorNodeBase", + "allOf": [ + { + "$ref": "#/definitions/NodeBase" + } + ], + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeInput" + }, + "description": "An array of upstream node references within the topology to be used as inputs for this node." + } + }, + "type": "object", + "required": [ + "@type", + "inputs" + ], + "description": "Base class for topology processor nodes." + }, + "SinkNodeBase": { + "discriminator": "@type", + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SinkNodeBase", + "allOf": [ + { + "$ref": "#/definitions/NodeBase" + } + ], + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "inputs": { + "type": "array", + "items": { + "$ref": "#/definitions/NodeInput" + }, + "description": "An array of upstream node references within the topology to be used as inputs for this node." + } + }, + "type": "object", + "required": [ + "@type", + "inputs" + ], + "description": "Base class for topology sink nodes." + }, + "NodeInput": { + "properties": { + "nodeName": { + "type": "string", + "description": "The name of the upstream node in the pipeline which output is used as input of the current node." + } + }, + "type": "object", + "required": [ + "nodeName" + ], + "description": "Describes an input signal to be used on a pipeline node." + }, + "RtspSource": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.RtspSource", + "allOf": [ + { + "$ref": "#/definitions/SourceNodeBase" + } + ], + "properties": { + "transport": { + "type": "string", + "enum": [ + "Http", + "Tcp" + ], + "x-ms-enum": { + "name": "RtspTransport", + "values": [ + { + "value": "Http", + "description": "HTTP transport. RTSP messages are exchanged over long running HTTP requests and RTP packets are interleaved within the HTTP channel." + }, + { + "value": "Tcp", + "description": "TCP transport. RTSP is used directly over TCP and RTP packets are interleaved within the TCP channel." + } + ], + "modelAsString": true + }, + "description": "Network transport utilized by the RTSP and RTP exchange: TCP or HTTP. When using TCP, the RTP packets are interleaved on the TCP RTSP connection. When using HTTP, the RTSP messages are exchanged through long lived HTTP connections, and the RTP packages are interleaved in the HTTP connections alongside the RTSP messages." + }, + "endpoint": { + "$ref": "#/definitions/EndpointBase", + "description": "RTSP endpoint information for Video Analyzer to connect to. This contains the required information for Video Analyzer to connect to RTSP cameras and/or generic RTSP servers." + } + }, + "type": "object", + "required": [ + "endpoint" + ], + "description": "RTSP source allows for media from an RTSP camera or generic RTSP server to be ingested into a pipeline." + }, + "EndpointBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "credentials": { + "$ref": "#/definitions/CredentialsBase", + "description": "Credentials to be presented to the endpoint." + }, + "url": { + "type": "string", + "description": "The endpoint URL for Video Analyzer to connect to." + }, + "tunnel": { + "$ref": "#/definitions/TunnelBase", + "description": "Describes the tunnel through which Video Analyzer can connect to the endpoint URL. This is an optional property, typically used when the endpoint is behind a firewall." + } + }, + "type": "object", + "required": [ + "@type", + "url" + ], + "description": "Base class for endpoints." + }, + "CredentialsBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for credential objects." + }, + "TunnelBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for tunnel objects." + }, + "UsernamePasswordCredentials": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "allOf": [ + { + "$ref": "#/definitions/CredentialsBase" + } + ], + "properties": { + "username": { + "type": "string", + "description": "Username to be presented as part of the credentials." + }, + "password": { + "type": "string", + "description": "Password to be presented as part of the credentials. It is recommended that this value is parameterized as a secret string in order to prevent this value to be returned as part of the resource on API requests." + } + }, + "type": "object", + "required": [ + "username", + "password" + ], + "description": "Username and password credentials." + }, + "SecureIotDeviceRemoteTunnel": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.SecureIotDeviceRemoteTunnel", + "allOf": [ + { + "$ref": "#/definitions/TunnelBase" + } + ], + "properties": { + "iotHubName": { + "type": "string", + "description": "Name of the IoT Hub." + }, + "deviceId": { + "type": "string", + "description": "The IoT device id to use when establishing the remote tunnel. This string is case-sensitive." + } + }, + "type": "object", + "required": [ + "iotHubName", + "deviceId" + ], + "description": "A remote tunnel securely established using IoT Hub device information." + }, + "UnsecuredEndpoint": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.UnsecuredEndpoint", + "allOf": [ + { + "$ref": "#/definitions/EndpointBase" + } + ], + "properties": {}, + "type": "object", + "description": "Unsecured endpoint describes an endpoint that the pipeline can connect to over clear transport (no encryption in transit)." + }, + "TlsEndpoint": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.TlsEndpoint", + "allOf": [ + { + "$ref": "#/definitions/EndpointBase" + } + ], + "properties": { + "trustedCertificates": { + "$ref": "#/definitions/CertificateSource", + "description": "List of trusted certificate authorities when authenticating a TLS connection. A null list designates that Azure Video Analyzer's list of trusted authorities should be used." + }, + "validationOptions": { + "$ref": "#/definitions/TlsValidationOptions", + "description": "Validation options to use when authenticating a TLS connection. By default, strict validation is used." + } + }, + "type": "object", + "description": "TLS endpoint describes an endpoint that the pipeline can connect to over TLS transport (data is encrypted in transit)." + }, + "CertificateSource": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for certificate sources." + }, + "TlsValidationOptions": { + "properties": { + "ignoreHostname": { + "type": "string", + "description": "When set to 'true' causes the certificate subject name validation to be skipped. Default is 'false'." + }, + "ignoreSignature": { + "type": "string", + "description": "When set to 'true' causes the certificate chain trust validation to be skipped. Default is 'false'." + } + }, + "type": "object", + "description": "Options for controlling the validation of TLS endpoints." + }, + "PemCertificateList": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.PemCertificateList", + "allOf": [ + { + "$ref": "#/definitions/CertificateSource" + } + ], + "properties": { + "certificates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "PEM formatted public certificates. One certificate per entry." + } + }, + "type": "object", + "required": [ + "certificates" + ], + "description": "A list of PEM formatted certificates." + }, + "VideoSource": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.VideoSource", + "allOf": [ + { + "$ref": "#/definitions/SourceNodeBase" + } + ], + "properties": { + "videoName": { + "type": "string", + "description": "Name of the Video Analyzer video resource to be used as the source." + }, + "timeSequences": { + "$ref": "#/definitions/TimeSequenceBase", + "description": "Describes a sequence of datetime ranges. The video source only picks up recorded media within these ranges." + } + }, + "type": "object", + "required": [ + "videoName", + "timeSequences" + ], + "description": "Video source allows for content from a Video Analyzer video resource to be ingested into a pipeline. Currently supported only with batch pipelines." + }, + "TimeSequenceBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "A sequence of datetime ranges as a string." + }, + "VideoSequenceAbsoluteTimeMarkers": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.VideoSequenceAbsoluteTimeMarkers", + "allOf": [ + { + "$ref": "#/definitions/TimeSequenceBase" + } + ], + "properties": { + "ranges": { + "type": "string", + "description": "The sequence of datetime ranges. Example: '[[\"2021-10-05T03:30:00Z\", \"2021-10-05T03:40:00Z\"]]'." + } + }, + "type": "object", + "required": [ + "ranges" + ], + "description": "A sequence of absolute datetime ranges as a string. The datetime values should follow IS08601, and the sum of the ranges should add up to 24 hours or less. Currently, there can be only one range specified in the sequence." + }, + "EncoderProcessor": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.EncoderProcessor", + "allOf": [ + { + "$ref": "#/definitions/ProcessorNodeBase" + } + ], + "properties": { + "preset": { + "$ref": "#/definitions/EncoderPresetBase", + "description": "The encoder preset, which defines the recipe or instructions on how the input content should be processed." + } + }, + "type": "object", + "required": [ + "preset" + ], + "description": "Encoder processor allows for encoding of the input content. For example, it can used to change the resolution from 4K to 1280x720." + }, + "EncoderPresetBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base type for all encoder presets, which define the recipe or instructions on how the input content should be processed." + }, + "EncoderSystemPreset": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.EncoderSystemPreset", + "allOf": [ + { + "$ref": "#/definitions/EncoderPresetBase" + } + ], + "properties": { + "name": { + "type": "string", + "enum": [ + "SingleLayer_540p_H264_AAC", + "SingleLayer_720p_H264_AAC", + "SingleLayer_1080p_H264_AAC", + "SingleLayer_2160p_H264_AAC" + ], + "x-ms-enum": { + "name": "EncoderSystemPresetType", + "values": [ + { + "value": "SingleLayer_540p_H264_AAC", + "description": "Produces an MP4 file where the video is encoded with H.264 codec at a picture height of 540 pixels, and at a maximum bitrate of 2000 Kbps. Encoded video has the same average frame rate as the input. The aspect ratio of the input is preserved. If the input content has audio, then it is encoded with AAC-LC codec at 96 Kbps" + }, + { + "value": "SingleLayer_720p_H264_AAC", + "description": "Produces an MP4 file where the video is encoded with H.264 codec at a picture height of 720 pixels, and at a maximum bitrate of 3500 Kbps. Encoded video has the same average frame rate as the input. The aspect ratio of the input is preserved. If the input content has audio, then it is encoded with AAC-LC codec at 96 Kbps" + }, + { + "value": "SingleLayer_1080p_H264_AAC", + "description": "Produces an MP4 file where the video is encoded with H.264 codec at a picture height of 1080 pixels, and at a maximum bitrate of 6000 Kbps. Encoded video has the same average frame rate as the input. The aspect ratio of the input is preserved. If the input content has audio, then it is encoded with AAC-LC codec at 128 Kbps" + }, + { + "value": "SingleLayer_2160p_H264_AAC", + "description": "Produces an MP4 file where the video is encoded with H.264 codec at a picture height of 2160 pixels, and at a maximum bitrate of 16000 Kbps. Encoded video has the same average frame rate as the input. The aspect ratio of the input is preserved. If the input content has audio, then it is encoded with AAC-LC codec at 128 Kbps" + } + ], + "modelAsString": true + }, + "description": "Name of the built-in encoding preset." + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "Describes a built-in preset for encoding the input content using the encoder processor." + }, + "EncoderCustomPreset": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.EncoderCustomPreset", + "allOf": [ + { + "$ref": "#/definitions/EncoderPresetBase" + } + ], + "properties": { + "audioEncoder": { + "$ref": "#/definitions/AudioEncoderBase", + "description": "Describes a custom preset for encoding audio." + }, + "videoEncoder": { + "$ref": "#/definitions/VideoEncoderBase", + "description": "Describes a custom preset for encoding video." + } + }, + "type": "object", + "description": "Describes a custom preset for encoding the input content using the encoder processor." + }, + "AudioEncoderBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "bitrateKbps": { + "type": "string", + "description": "Bitrate, in kilobits per second or Kbps, at which audio should be encoded (2-channel stereo audio at a sampling rate of 48 kHz). Allowed values are 96, 112, 128, 160, 192, 224, and 256. If omitted, the bitrate of the input audio is used." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base type for all audio encoder presets, which define the recipe or instructions on how audio should be processed." + }, + "VideoEncoderBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "bitrateKbps": { + "type": "string", + "description": "The maximum bitrate, in kilobits per second or Kbps, at which video should be encoded. If omitted, encoder sets it automatically to try and match the quality of the input video." + }, + "frameRate": { + "type": "string", + "description": "The frame rate (in frames per second) of the encoded video. The value must be greater than zero, and less than or equal to 300. If omitted, the encoder uses the average frame rate of the input video." + }, + "scale": { + "$ref": "#/definitions/VideoScale", + "description": "Describes the resolution of the encoded video. If omitted, the encoder uses the resolution of the input video." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base type for all video encoding presets, which define the recipe or instructions on how the input video should be processed." + }, + "AudioEncoderAac": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.AudioEncoderAac", + "allOf": [ + { + "$ref": "#/definitions/AudioEncoderBase" + } + ], + "properties": {}, + "type": "object", + "description": "A custom preset for encoding audio with the AAC codec." + }, + "VideoScale": { + "properties": { + "height": { + "type": "string", + "description": "The desired output video height." + }, + "width": { + "type": "string", + "description": "The desired output video width." + }, + "mode": { + "type": "string", + "enum": [ + "Pad", + "PreserveAspectRatio", + "Stretch" + ], + "x-ms-enum": { + "name": "VideoScaleMode", + "values": [ + { + "value": "Pad", + "description": "Pads the video with black horizontal stripes (letterbox) or black vertical stripes (pillar-box) so the video is resized to the specified dimensions while not altering the content aspect ratio." + }, + { + "value": "PreserveAspectRatio", + "description": "Preserves the same aspect ratio as the input video. If only one video dimension is provided, the second dimension is calculated based on the input video aspect ratio. When 2 dimensions are provided, the video is resized to fit the most constraining dimension, considering the input video size and aspect ratio." + }, + { + "value": "Stretch", + "description": "Stretches the original video so it resized to the specified dimensions." + } + ], + "modelAsString": true + }, + "description": "Describes the video scaling mode to be applied. Default mode is 'Pad'. If the mode is 'Pad' or 'Stretch' then both width and height must be specified. Else if the mode is 'PreserveAspectRatio' then only one of width or height need be provided." + } + }, + "type": "object", + "description": "The video scaling information." + }, + "VideoEncoderH264": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.VideoEncoderH264", + "allOf": [ + { + "$ref": "#/definitions/VideoEncoderBase" + } + ], + "properties": {}, + "type": "object", + "description": "A custom preset for encoding video with the H.264 (AVC) codec." + }, + "VideoSink": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.VideoSink", + "allOf": [ + { + "$ref": "#/definitions/SinkNodeBase" + } + ], + "properties": { + "videoName": { + "type": "string", + "description": "Name of a new or existing video resource used to capture and publish content. Note: if downstream of RTSP source, and if disableArchive is set to true, then no content is archived." + }, + "videoCreationProperties": { + "$ref": "#/definitions/VideoCreationProperties", + "description": "Optional video properties to be used in case a new video resource needs to be created on the service." + }, + "videoPublishingOptions": { + "$ref": "#/definitions/VideoPublishingOptions", + "description": "Options to change how the video sink publishes content via the video resource. This property is only allowed for topologies where \"kind\" is set to \"live\"." + } + }, + "type": "object", + "required": [ + "videoName" + ], + "description": "Video sink in a live topology allows for video and audio to be captured, optionally archived, and published via a video resource. If archiving is enabled, this results in a video of type 'archive'. If used in a batch topology, this allows for video and audio to be stored as a file, and published via a video resource of type 'file'" + }, + "VideoCreationProperties": { + "properties": { + "title": { + "type": "string", + "description": "Optional title provided by the user. Value can be up to 256 characters long." + }, + "description": { + "type": "string", + "description": "Optional description provided by the user. Value can be up to 2048 characters long." + }, + "segmentLength": { + "type": "string", + "description": "Segment length indicates the length of individual content files (segments) which are persisted to storage. Smaller segments provide lower archive playback latency but generate larger volume of storage transactions. Larger segments reduce the amount of storage transactions while increasing the archive playback latency. Value must be specified in ISO8601 duration format (i.e. \"PT30S\" equals 30 seconds) and can vary between 30 seconds to 5 minutes, in 30 seconds increments. Changing this value after the initial call to create the video resource can lead to errors when uploading content to the archive. Default value is 30 seconds. This property is only allowed for topologies where \"kind\" is set to \"live\"." + }, + "retentionPeriod": { + "type": "string", + "description": "Video retention period indicates how long the video is kept in storage. Value must be specified in ISO8601 duration format (i.e. \"PT1D\" equals 1 day) and can vary between 1 day to 10 years, in 1 day increments. When absent (null), all video content is retained indefinitely. This property is only allowed for topologies where \"kind\" is set to \"live\"." + } + }, + "type": "object", + "description": "Optional properties to be used in case a new video resource needs to be created on the service. These will not take effect if the video already exists." + }, + "VideoPublishingOptions": { + "properties": { + "disableArchive": { + "type": "string", + "description": "When set to 'true' content will not be archived or recorded. This is used, for example, when the topology is used only for low latency video streaming. Default is 'false'. If set to 'true', then \"disableRtspPublishing\" must be set to 'false'." + }, + "disableRtspPublishing": { + "type": "string", + "description": "When set to 'true' the RTSP playback URL will not be published, disabling low latency streaming. This is used, for example, when the topology is used only for archiving content. Default is 'false'. If set to 'true', then \"disableArchive\" must be set to 'false'." + }, + "disableVideoPreviewImage": { + "type": "string", + "description": "When set to 'true' preview images will not be generated. This is used, for example, when the topology is used only for low latency video streaming. Default is 'false'. If set to 'false', then \"disableArchive\" must be set to 'false'." + } + }, + "type": "object", + "description": "Optional flags used to change how video is published. These are only allowed for topologies where \"kind\" is set to \"live\"." + }, + "ParameterDefinition": { + "properties": { + "name": { + "type": "string", + "description": "Name of the parameter declared in the pipeline topology." + }, + "value": { + "type": "string", + "description": "Parameter value to be applied on this specific pipeline." + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "Defines the parameter value of an specific pipeline topology parameter. See pipeline topology parameters for more information." + }, + "PipelineTopology": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PipelineTopologyProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "kind": { + "type": "string", + "enum": [ + "Live", + "Batch" + ], + "x-ms-enum": { + "name": "Kind", + "values": [ + { + "value": "Live", + "description": "Live pipeline topology resource." + }, + { + "value": "Batch", + "description": "Batch pipeline topology resource." + } + ], + "modelAsString": true + }, + "description": "Topology kind." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Describes the properties of a SKU." + } + }, + "type": "object", + "required": [ + "kind", + "sku" + ], + "description": "Pipeline topology describes the processing steps to be applied when processing content for a particular outcome. The topology should be defined according to the scenario to be achieved and can be reused across many pipeline instances which share the same processing characteristics. For instance, a pipeline topology which captures content from a RTSP camera and archives the content can be reused across many different cameras, as long as the same processing is to be applied across all the cameras. Individual instance properties can be defined through the use of user-defined parameters, which allow for a topology to be parameterized. This allows individual pipelines refer to different values, such as individual cameras' RTSP endpoints and credentials. Overall a topology is composed of the following:\r\n\r\n - Parameters: list of user defined parameters that can be references across the topology nodes.\r\n - Sources: list of one or more data sources nodes such as an RTSP source which allows for content to be ingested from cameras.\r\n - Processors: list of nodes which perform data analysis or transformations.\r\n - Sinks: list of one or more data sinks which allow for data to be stored or exported to other destinations." + }, + "PipelineTopologyUpdate": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PipelineTopologyPropertiesUpdate", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "kind": { + "type": "string", + "enum": [ + "Live", + "Batch" + ], + "x-ms-enum": { + "name": "Kind", + "values": [ + { + "value": "Live", + "description": "Live pipeline topology resource." + }, + { + "value": "Batch", + "description": "Batch pipeline topology resource." + } + ], + "modelAsString": true + }, + "description": "Topology kind." + }, + "sku": { + "$ref": "#/definitions/Sku", + "description": "Describes the properties of a SKU." + } + }, + "type": "object", + "description": "Pipeline topology describes the processing steps to be applied when processing content for a particular outcome. The topology should be defined according to the scenario to be achieved and can be reused across many pipeline instances which share the same processing characteristics. For instance, a pipeline topology which captures content from a RTSP camera and archives the content can be reused across many different cameras, as long as the same processing is to be applied across all the cameras. Individual instance properties can be defined through the use of user-defined parameters, which allow for a topology to be parameterized. This allows individual pipelines refer to different values, such as individual cameras' RTSP endpoints and credentials. Overall a topology is composed of the following:\r\n\r\n - Parameters: list of user defined parameters that can be references across the topology nodes.\r\n - Sources: list of one or more data sources nodes such as an RTSP source which allows for content to be ingested from cameras.\\r\\n - Processors: list of nodes which perform data analysis or transformations.\r\n -Sinks: list of one or more data sinks which allow for data to be stored or exported to other destinations." + }, + "LivePipelineProperties": { + "properties": { + "topologyName": { + "type": "string", + "description": "The reference to an existing pipeline topology defined for real-time content processing. When activated, this live pipeline will process content according to the pipeline topology definition." + }, + "description": { + "type": "string", + "description": "An optional description for the pipeline." + }, + "bitrateKbps": { + "type": "integer", + "format": "int32", + "description": "Maximum bitrate capacity in Kbps reserved for the live pipeline. The allowed range is from 500 to 3000 Kbps in increments of 100 Kbps. If the RTSP camera exceeds this capacity, then the service will disconnect temporarily from the camera. It will retry to re-establish connection (with exponential backoff), checking to see if the camera bitrate is now below the reserved capacity. Doing so will ensure that one 'noisy neighbor' does not affect other live pipelines in your account." + }, + "state": { + "type": "string", + "enum": [ + "Inactive", + "Activating", + "Active", + "Deactivating" + ], + "x-ms-enum": { + "name": "LivePipelineState", + "values": [ + { + "value": "Inactive", + "description": "The live pipeline is idle and not processing media." + }, + { + "value": "Activating", + "description": "The live pipeline is transitioning into the active state." + }, + { + "value": "Active", + "description": "The live pipeline is active and able to process media. If your data source is not available, for instance, if your RTSP camera is powered off or unreachable, the pipeline will still be active and periodically retrying the connection. Your Azure subscription will be billed for the duration in which the live pipeline is in the active state." + }, + { + "value": "Deactivating", + "description": "The live pipeline is transitioning into the inactive state." + } + ], + "modelAsString": true + }, + "description": "Current state of the pipeline (read-only).", + "readOnly": true, + "x-nullable": false + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDefinition" + }, + "description": "List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override parameters values for parameters which have been declared in the referenced topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be optionally be overridden." + } + }, + "type": "object", + "required": [ + "topologyName", + "bitrateKbps" + ], + "description": "Live pipeline properties." + }, + "LivePipelinePropertiesUpdate": { + "properties": { + "topologyName": { + "type": "string", + "description": "The reference to an existing pipeline topology defined for real-time content processing. When activated, this live pipeline will process content according to the pipeline topology definition." + }, + "description": { + "type": "string", + "description": "An optional description for the pipeline." + }, + "bitrateKbps": { + "type": "integer", + "format": "int32", + "description": "Maximum bitrate capacity in Kbps reserved for the live pipeline. The allowed range is from 500 to 3000 Kbps in increments of 100 Kbps. If the RTSP camera exceeds this capacity, then the service will disconnect temporarily from the camera. It will retry to re-establish connection (with exponential backoff), checking to see if the camera bitrate is now below the reserved capacity. Doing so will ensure that one 'noisy neighbor' does not affect other live pipelines in your account." + }, + "state": { + "type": "string", + "enum": [ + "Inactive", + "Activating", + "Active", + "Deactivating" + ], + "x-ms-enum": { + "name": "LivePipelineState", + "values": [ + { + "value": "Inactive", + "description": "The live pipeline is idle and not processing media." + }, + { + "value": "Activating", + "description": "The live pipeline is transitioning into the active state." + }, + { + "value": "Active", + "description": "The live pipeline is active and able to process media. If your data source is not available, for instance, if your RTSP camera is powered off or unreachable, the pipeline will still be active and periodically retrying the connection. Your Azure subscription will be billed for the duration in which the live pipeline is in the active state." + }, + { + "value": "Deactivating", + "description": "The live pipeline is transitioning into the inactive state." + } + ], + "modelAsString": true + }, + "description": "Current state of the pipeline (read-only).", + "readOnly": true, + "x-nullable": false + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDefinition" + }, + "description": "List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override parameters values for parameters which have been declared in the referenced topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be optionally be overridden." + } + }, + "type": "object", + "description": "Live pipeline properties." + }, + "LivePipeline": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LivePipelineProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "Live pipeline represents a unique instance of a live topology, used for real-time ingestion, archiving and publishing of content for a unique RTSP camera." + }, + "LivePipelineUpdate": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/LivePipelinePropertiesUpdate", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "Live pipeline represents a unique instance of a live topology, used for real-time ingestion, archiving and publishing of content for a unique RTSP camera." + }, + "PipelineJobProperties": { + "properties": { + "topologyName": { + "type": "string", + "description": "Reference to an existing pipeline topology. When activated, this pipeline job will process content according to the pipeline topology definition." + }, + "description": { + "type": "string", + "description": "An optional description for the pipeline." + }, + "state": { + "type": "string", + "enum": [ + "Processing", + "Canceled", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "PipelineJobState", + "values": [ + { + "value": "Processing", + "description": "Pipeline job is processing." + }, + { + "value": "Canceled", + "description": "Pipeline job is canceled." + }, + { + "value": "Completed", + "description": "Pipeline job completed." + }, + { + "value": "Failed", + "description": "Pipeline job failed." + } + ], + "modelAsString": true + }, + "description": "Current state of the pipeline (read-only).", + "readOnly": true, + "x-nullable": false + }, + "expiration": { + "type": "string", + "format": "date-time", + "description": "The date-time by when this pipeline job will be automatically deleted from your account.", + "readOnly": true, + "x-nullable": false + }, + "error": { + "$ref": "#/definitions/PipelineJobError", + "description": "Details about the error, in case the pipeline job fails.", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDefinition" + }, + "description": "List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override parameters values for parameters which have been declared in the referenced topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be optionally be overridden." + } + }, + "type": "object", + "required": [ + "topologyName" + ], + "description": "Pipeline job properties." + }, + "PipelineJobPropertiesUpdate": { + "properties": { + "topologyName": { + "type": "string", + "description": "Reference to an existing pipeline topology. When activated, this pipeline job will process content according to the pipeline topology definition." + }, + "description": { + "type": "string", + "description": "An optional description for the pipeline." + }, + "state": { + "type": "string", + "enum": [ + "Processing", + "Canceled", + "Completed", + "Failed" + ], + "x-ms-enum": { + "name": "PipelineJobState", + "values": [ + { + "value": "Processing", + "description": "Pipeline job is processing." + }, + { + "value": "Canceled", + "description": "Pipeline job is canceled." + }, + { + "value": "Completed", + "description": "Pipeline job completed." + }, + { + "value": "Failed", + "description": "Pipeline job failed." + } + ], + "modelAsString": true + }, + "description": "Current state of the pipeline (read-only).", + "readOnly": true, + "x-nullable": false + }, + "expiration": { + "type": "string", + "format": "date-time", + "description": "The date-time by when this pipeline job will be automatically deleted from your account.", + "readOnly": true, + "x-nullable": false + }, + "error": { + "$ref": "#/definitions/PipelineJobError", + "description": "Details about the error, in case the pipeline job fails.", + "readOnly": true + }, + "parameters": { + "type": "array", + "items": { + "$ref": "#/definitions/ParameterDefinition" + }, + "description": "List of the instance level parameter values for the user-defined topology parameters. A pipeline can only define or override parameters values for parameters which have been declared in the referenced topology. Topology parameters without a default value must be defined. Topology parameters with a default value can be optionally be overridden." + } + }, + "type": "object", + "description": "Pipeline job properties." + }, + "PipelineJobError": { + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + } + }, + "type": "object", + "description": "Details about the error for a failed pipeline job." + }, + "PipelineJob": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PipelineJobProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "Pipeline job represents a unique instance of a batch topology, used for offline processing of selected portions of archived content." + }, + "PipelineJobUpdate": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/PipelineJobPropertiesUpdate", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "Pipeline job represents a unique instance of a batch topology, used for offline processing of selected portions of archived content." + }, + "LivePipelineOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "The name of the live pipeline operation.", + "readOnly": true + }, + "status": { + "type": "string", + "description": "The status of the live pipeline operation.", + "readOnly": true + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "description": "The error details for the live pipeline operation.", + "readOnly": true + } + }, + "type": "object" + }, + "PipelineJobOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "The name of the pipeline job operation.", + "readOnly": true + }, + "status": { + "type": "string", + "description": "The status of the pipeline job operation.", + "readOnly": true + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "description": "The error details for the pipeline job operation.", + "readOnly": true + } + }, + "type": "object" + }, + "PipelineTopologyCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PipelineTopology" + }, + "description": "A collection of PipelineTopology items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of PipelineTopology items." + }, + "LivePipelineCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/LivePipeline" + }, + "description": "A collection of LivePipeline items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of LivePipeline items." + }, + "PipelineJobCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/PipelineJob" + }, + "description": "A collection of PipelineJob items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of PipelineJob items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineTopologies": { + "get": { + "summary": "Retrieves a list of pipeline topologies.", + "description": "Retrieves a list of pipeline topologies that have been added to the account, if any, along with their JSON representation.", + "operationId": "PipelineTopologies_List", + "responses": { + "200": { + "description": "Pipeline topologies were successfully retrieved.", + "schema": { + "$ref": "#/definitions/PipelineTopologyCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "Restricts the set of items returned." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "List all pipeline topologies": { + "$ref": "examples/pipeline-topology-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineTopologies/{pipelineTopologyName}": { + "get": { + "summary": "Retrieves a specific pipeline topology by name.", + "description": "Retrieves a specific pipeline topology by name. If a topology with that name has been previously created, the call will return the JSON representation of that topology.", + "operationId": "PipelineTopologies_Get", + "responses": { + "200": { + "description": "Pipeline topology was retrieved successfully.", + "schema": { + "$ref": "#/definitions/PipelineTopology" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineTopologyName", + "in": "path", + "required": true, + "type": "string", + "description": "Pipeline topology unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a pipeline topology by name": { + "$ref": "examples/pipeline-topology-get-by-name.json" + } + } + }, + "put": { + "summary": "Creates or updates a pipeline topology.", + "description": "Creates a new pipeline topology or updates an existing one, with the given name. A pipeline topology describes the processing steps to be applied when processing content for a particular outcome. The topology should be defined according to the scenario to be achieved and can be reused across many pipeline instances which share the same processing characteristics.", + "operationId": "PipelineTopologies_CreateOrUpdate", + "responses": { + "200": { + "description": "The existing pipeline topology was updated.", + "schema": { + "$ref": "#/definitions/PipelineTopology" + } + }, + "201": { + "description": "A new pipeline topology was created.", + "schema": { + "$ref": "#/definitions/PipelineTopology" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineTopologyName", + "in": "path", + "required": true, + "type": "string", + "description": "Pipeline topology unique identifier." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PipelineTopology" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Create or update a pipeline topology with an Rtsp source and video sink.": { + "$ref": "examples/pipeline-topology-create.json" + } + } + }, + "delete": { + "summary": "Deletes a pipeline topology.", + "description": "Deletes a pipeline topology with the given name. This method should be called after all instances of the topology have been stopped and deleted.", + "operationId": "PipelineTopologies_Delete", + "responses": { + "200": { + "description": "The pipeline topology was deleted successfully." + }, + "204": { + "description": "The pipeline topology was not found." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineTopologyName", + "in": "path", + "required": true, + "type": "string", + "description": "Pipeline topology unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Delete a pipeline topology": { + "$ref": "examples/pipeline-topology-delete.json" + } + } + }, + "patch": { + "summary": "Updates an existing pipeline topology.", + "description": "Updates an existing pipeline topology with the given name. If the associated live pipelines or pipeline jobs are in active or processing state, respectively, then only the description can be updated. Else, the properties that can be updated include: description, parameter declarations, sources, processors, and sinks.", + "operationId": "PipelineTopologies_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PipelineTopology" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineTopologyName", + "in": "path", + "required": true, + "type": "string", + "description": "Pipeline topology unique identifier." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PipelineTopologyUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update pipeline topology.": { + "$ref": "examples/pipeline-topology-patch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/livePipelines": { + "get": { + "summary": "Retrieves a list of live pipelines.", + "description": "Retrieves a list of live pipelines that have been created, along with their JSON representations.", + "operationId": "LivePipelines_List", + "responses": { + "200": { + "description": "List of live pipelines that were successfully retrieved.", + "schema": { + "$ref": "#/definitions/LivePipelineCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "Restricts the set of items returned." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "List live pipelines": { + "$ref": "examples/live-pipeline-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/livePipelines/{livePipelineName}": { + "get": { + "summary": "Retrieves a specific live pipeline by name.", + "description": "Retrieves a specific live pipeline by name. If a live pipeline with that name has been previously created, the call will return the JSON representation of that instance.", + "operationId": "LivePipelines_Get", + "responses": { + "200": { + "description": "The live pipeline was retrieved successfully.", + "schema": { + "$ref": "#/definitions/LivePipeline" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Retrieves a specific live pipeline by name": { + "$ref": "examples/live-pipeline-get-by-name.json" + } + } + }, + "put": { + "summary": "Creates or updates a live pipeline.", + "description": "Creates a new live pipeline or updates an existing one, with the given name.", + "operationId": "LivePipelines_CreateOrUpdate", + "responses": { + "200": { + "description": "The existing live pipeline was updated.", + "schema": { + "$ref": "#/definitions/LivePipeline" + } + }, + "201": { + "description": "A new live pipeline was created.", + "schema": { + "$ref": "#/definitions/LivePipeline" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LivePipeline" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Create or update a live pipeline": { + "$ref": "examples/live-pipeline-create.json" + } + } + }, + "delete": { + "summary": "Deletes a live pipeline.", + "description": "Deletes a live pipeline with the given name.", + "operationId": "LivePipelines_Delete", + "responses": { + "200": { + "description": "The live pipeline was deleted successfully." + }, + "204": { + "description": "The live pipeline was not found." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Delete a live pipeline": { + "$ref": "examples/live-pipeline-delete.json" + } + } + }, + "patch": { + "summary": "Updates an existing live pipeline.", + "description": "Updates an existing live pipeline with the given name. Properties that can be updated include: description, bitrateKbps, and parameter definitions. Only the description can be updated while the live pipeline is active.", + "operationId": "LivePipelines_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/LivePipeline" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/LivePipelineUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Updates a live pipeline.": { + "$ref": "examples/live-pipeline-patch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/livePipelines/{livePipelineName}/activate": { + "post": { + "summary": "Activates a live pipeline.", + "description": "Activates a live pipeline with the given name.", + "operationId": "LivePipelines_Activate", + "responses": { + "202": { + "description": "Request to activate a live pipeline was accepted, and is being processed." + }, + "200": { + "description": "The live pipeline was activated successfully." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Activate live pipeline": { + "$ref": "examples/live-pipeline-activate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/livePipelines/{livePipelineName}/deactivate": { + "post": { + "summary": "Deactivates a live pipeline.", + "description": "Deactivates a live pipeline with the given name.", + "operationId": "LivePipelines_Deactivate", + "responses": { + "202": { + "description": "Request to deactivate a live pipeline was accepted, and is being processed." + }, + "200": { + "description": "The live pipeline was deactivated successfully." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Deactivate Live pipeline": { + "$ref": "examples/live-pipeline-deactivate.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineJobs": { + "get": { + "summary": "Retrieves a list of pipeline jobs.", + "description": "Retrieves a list of all live pipelines that have been created, along with their JSON representations.", + "operationId": "PipelineJobs_List", + "responses": { + "200": { + "description": "List of pipeline jobs that were successfully retrieved.", + "schema": { + "$ref": "#/definitions/PipelineJobCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "Restricts the set of items returned." + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "List all pipeline jobs": { + "$ref": "examples/pipeline-job-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineJobs/{pipelineJobName}": { + "get": { + "summary": "Gets a specific pipeline job by name.", + "description": "Retrieves a specific pipeline job by name. If a pipeline job with that name has been previously created, the call will return the JSON representation of that instance.", + "operationId": "PipelineJobs_Get", + "responses": { + "200": { + "description": "Pipeline job was retrieved successfully.", + "schema": { + "$ref": "#/definitions/PipelineJob" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a pipeline job by name": { + "$ref": "examples/pipeline-job-get-by-name.json" + } + } + }, + "put": { + "summary": "Creates or updates a pipeline job.", + "description": "Creates a new pipeline job or updates an existing one, with the given name.", + "operationId": "PipelineJobs_CreateOrUpdate", + "responses": { + "200": { + "description": "The existing pipeline job was updated.", + "schema": { + "$ref": "#/definitions/PipelineJob" + } + }, + "201": { + "description": "A new pipeline job was created.", + "schema": { + "$ref": "#/definitions/PipelineJob" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PipelineJob" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Create or update a pipeline job": { + "$ref": "examples/pipeline-job-create.json" + } + } + }, + "delete": { + "summary": "Deletes a pipeline job.", + "description": "Deletes a pipeline job with the given name.", + "operationId": "PipelineJobs_Delete", + "responses": { + "200": { + "description": "The pipeline job was deleted successfully." + }, + "204": { + "description": "The pipeline job was not found." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes a pipeline job": { + "$ref": "examples/pipeline-job-delete.json" + } + } + }, + "patch": { + "summary": "Updates an existing pipeline job.", + "description": "Updates an existing pipeline job with the given name. Properties that can be updated include: description.", + "operationId": "PipelineJobs_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PipelineJob" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/PipelineJobUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Updates a pipeline job": { + "$ref": "examples/pipeline-job-patch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineJobs/{pipelineJobName}/cancel": { + "post": { + "summary": "Cancels a pipeline job.", + "description": "Cancels a pipeline job with the given name.", + "operationId": "PipelineJobs_Cancel", + "responses": { + "202": { + "description": "Request to cancel the pipeline job was accepted, and is being processed." + }, + "200": { + "description": "The pipeline job was cancelled successfully." + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Cancels a pipeline job": { + "$ref": "examples/pipeline-job-cancel.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/livePipelines/{livePipelineName}/operationStatuses/{operationId}": { + "get": { + "summary": "Get the operation status", + "description": "Get the operation status of a live pipeline.", + "operationId": "LivePipelineOperationStatuses_Get", + "responses": { + "200": { + "description": "Live pipeline operation status was retrieved successfully.", + "schema": { + "$ref": "#/definitions/LivePipelineOperationStatus" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "livePipelineName", + "in": "path", + "required": true, + "type": "string", + "description": "Live pipeline unique identifier." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation ID." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get the live pipeline operation status.": { + "$ref": "examples/live-pipeline-operation-status-get.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/pipelineJobs/{pipelineJobName}/operationStatuses/{operationId}": { + "get": { + "summary": "Get the operation statuses.", + "description": "Get the operation status of a pipeline job with the given operationId.", + "operationId": "PipelineJobOperationStatuses_Get", + "responses": { + "200": { + "description": "The pipeline job operation status was retrieved successfully.", + "schema": { + "$ref": "#/definitions/PipelineJobOperationStatus" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "pipelineJobName", + "in": "path", + "required": true, + "type": "string", + "description": "The pipeline job name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "The operation ID." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get the pipeline job operation status.": { + "$ref": "examples/pipeline-job-operation-status-get.json" + } + } + } + } + }, + "parameters": { + "AzureVideoAnalyzerAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure Video Analyzer account name.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/VideoAnalyzers.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/VideoAnalyzers.json new file mode 100644 index 000000000000..30609e765230 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/VideoAnalyzers.json @@ -0,0 +1,1822 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-11-01-preview" + }, + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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" + } + } + }, + "definitions": { + "OperationDisplay": { + "properties": { + "provider": { + "type": "string", + "description": "The service provider." + }, + "resource": { + "type": "string", + "description": "Resource on which the operation is performed." + }, + "operation": { + "type": "string", + "description": "The operation type." + }, + "description": { + "type": "string", + "description": "The operation description." + } + }, + "type": "object", + "description": "Operation details." + }, + "MetricDimension": { + "properties": { + "name": { + "type": "string", + "description": "The metric dimension name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The display name for the dimension.", + "readOnly": true + }, + "toBeExportedForShoebox": { + "type": "boolean", + "description": "Whether to export metric to shoebox.", + "readOnly": true, + "x-nullable": false + } + }, + "type": "object", + "description": "A metric dimension." + }, + "MetricSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The metric name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The metric display name.", + "readOnly": true + }, + "displayDescription": { + "type": "string", + "description": "The metric display description.", + "readOnly": true + }, + "unit": { + "type": "string", + "enum": [ + "Bytes", + "Count", + "Milliseconds" + ], + "x-ms-enum": { + "name": "MetricUnit", + "values": [ + { + "value": "Bytes", + "description": "The number of bytes." + }, + { + "value": "Count", + "description": "The count." + }, + { + "value": "Milliseconds", + "description": "The number of milliseconds." + } + ], + "modelAsString": true + }, + "description": "The metric unit", + "readOnly": true, + "x-nullable": false + }, + "aggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric aggregation type", + "readOnly": true, + "x-nullable": false + }, + "lockAggregationType": { + "type": "string", + "enum": [ + "Average", + "Count", + "Total" + ], + "x-ms-enum": { + "name": "MetricAggregationType", + "values": [ + { + "value": "Average", + "description": "The average." + }, + { + "value": "Count", + "description": "The count of a number of items, usually requests." + }, + { + "value": "Total", + "description": "The sum." + } + ], + "modelAsString": true + }, + "description": "The metric lock aggregation type", + "readOnly": true, + "x-nullable": true + }, + "supportedAggregationTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Supported aggregation types." + }, + "dimensions": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + }, + "description": "The metric dimensions.", + "readOnly": true + }, + "enableRegionalMdmAccount": { + "type": "boolean", + "description": "Indicates whether regional MDM account is enabled.", + "readOnly": true, + "x-nullable": false + }, + "sourceMdmAccount": { + "type": "string", + "description": "The source MDM account.", + "readOnly": true + }, + "sourceMdmNamespace": { + "type": "string", + "description": "The source MDM namespace.", + "readOnly": true + }, + "supportedTimeGrainTypes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "The supported time grain types.", + "readOnly": true + } + }, + "type": "object", + "description": "A metric emitted by service." + }, + "Properties": { + "properties": { + "serviceSpecification": { + "$ref": "#/definitions/ServiceSpecification", + "description": "The service specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "Metric properties." + }, + "ServiceSpecification": { + "properties": { + "logSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/LogSpecification" + }, + "description": "List of log specifications.", + "readOnly": true + }, + "metricSpecifications": { + "type": "array", + "items": { + "$ref": "#/definitions/MetricSpecification" + }, + "description": "List of metric specifications.", + "readOnly": true + } + }, + "type": "object", + "description": "The service metric specifications." + }, + "LogSpecification": { + "properties": { + "name": { + "type": "string", + "description": "The diagnostic log category name.", + "readOnly": true + }, + "displayName": { + "type": "string", + "description": "The diagnostic log category display name.", + "readOnly": true + }, + "blobDuration": { + "type": "string", + "description": "The time range for requests in each blob.", + "readOnly": true + } + }, + "type": "object", + "description": "A diagnostic log emitted by service." + }, + "Operation": { + "properties": { + "name": { + "type": "string", + "description": "The operation name." + }, + "display": { + "$ref": "#/definitions/OperationDisplay", + "description": "The operation display name." + }, + "origin": { + "type": "string", + "description": "Origin of the operation." + }, + "properties": { + "$ref": "#/definitions/Properties", + "description": "Operation properties format." + }, + "isDataAction": { + "type": "boolean", + "description": "Whether the operation applies to data-plane.", + "x-nullable": true + }, + "actionType": { + "type": "string", + "enum": [ + "Internal" + ], + "x-ms-enum": { + "name": "ActionType", + "values": [ + { + "value": "Internal", + "description": "An internal action." + } + ], + "modelAsString": true + }, + "description": "Indicates the action type.", + "x-nullable": true + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "An operation." + }, + "StorageAccount": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource. Video Analyzer relies on tables, queues, and blobs. The primary storage account must be a Standard Storage account (either Microsoft.ClassicStorage or Microsoft.Storage)." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "A managed identity that Video Analyzer will use to access the storage account." + }, + "status": { + "type": "string", + "description": "The current status of the storage account mapping.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "id" + ], + "description": "The details about the associated storage account." + }, + "VideoAnalyzerProperties": { + "properties": { + "storageAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "The storage accounts for this resource." + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "The endpoints associated with this resource.", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/AccountEncryption", + "description": "The account encryption properties." + }, + "iotHubs": { + "type": "array", + "items": { + "$ref": "#/definitions/IotHub" + }, + "description": "The IoT Hubs for this resource." + }, + "publicNetworkAccess": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "values": [ + { + "value": "Enabled", + "description": "Public network access is enabled." + }, + { + "value": "Disabled", + "description": "Public network access is disabled." + } + ], + "modelAsString": true + }, + "description": "Whether or not public network access is allowed for resources under the Video Analyzer account.", + "x-nullable": true + }, + "networkAccessControl": { + "$ref": "#/definitions/NetworkAccessControl", + "description": "Network access control for Video Analyzer.", + "x-nullable": true + }, + "provisioningState": { + "type": "string", + "enum": [ + "Failed", + "InProgress", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "values": [ + { + "value": "Failed", + "description": "Provisioning state failed." + }, + { + "value": "InProgress", + "description": "Provisioning state in progress." + }, + { + "value": "Succeeded", + "description": "Provisioning state succeeded." + } + ], + "modelAsString": true + }, + "description": "Provisioning state of the Video Analyzer account.", + "readOnly": true, + "x-nullable": false + }, + "privateEndpointConnections": { + "items": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "type": "array", + "description": "Private Endpoint Connections created under Video Analyzer account.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "storageAccounts" + ], + "description": "The properties of the Video Analyzer account." + }, + "VideoAnalyzerPropertiesUpdate": { + "properties": { + "storageAccounts": { + "type": "array", + "items": { + "$ref": "#/definitions/StorageAccount" + }, + "description": "The storage accounts for this resource." + }, + "endpoints": { + "type": "array", + "items": { + "$ref": "#/definitions/Endpoint" + }, + "description": "The endpoints associated with this resource.", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/AccountEncryption", + "description": "The account encryption properties." + }, + "iotHubs": { + "type": "array", + "items": { + "$ref": "#/definitions/IotHub" + }, + "description": "The IoT Hubs for this resource." + }, + "publicNetworkAccess": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "values": [ + { + "value": "Enabled", + "description": "Public network access is enabled." + }, + { + "value": "Disabled", + "description": "Public network access is disabled." + } + ], + "modelAsString": true + }, + "description": "Whether or not public network access is allowed for resources under the Video Analyzer account.", + "x-nullable": true + }, + "networkAccessControl": { + "$ref": "#/definitions/NetworkAccessControl", + "description": "Network access control for Video Analyzer.", + "x-nullable": true + }, + "provisioningState": { + "type": "string", + "enum": [ + "Failed", + "InProgress", + "Succeeded" + ], + "x-ms-enum": { + "name": "ProvisioningState", + "values": [ + { + "value": "Failed", + "description": "Provisioning state failed." + }, + { + "value": "InProgress", + "description": "Provisioning state in progress." + }, + { + "value": "Succeeded", + "description": "Provisioning state succeeded." + } + ], + "modelAsString": true + }, + "description": "Provisioning state of the Video Analyzer account.", + "readOnly": true, + "x-nullable": false + }, + "privateEndpointConnections": { + "items": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "type": "array", + "description": "Private Endpoint Connections created under Video Analyzer account.", + "readOnly": true + } + }, + "type": "object", + "description": "The properties of the Video Analyzer account." + }, + "VideoAnalyzer": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoAnalyzerProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/VideoAnalyzerIdentity", + "description": "The identities associated to the Video Analyzer resource." + } + }, + "type": "object", + "description": "The Video Analyzer account." + }, + "VideoAnalyzerUpdate": { + "properties": { + "tags": { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "x-ms-mutability": [ + "read", + "create", + "update" + ], + "description": "Resource tags." + }, + "properties": { + "$ref": "#/definitions/VideoAnalyzerPropertiesUpdate", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "identity": { + "$ref": "#/definitions/VideoAnalyzerIdentity", + "description": "The identities associated to the Video Analyzer resource." + } + }, + "type": "object", + "description": "The update operation for a Video Analyzer account." + }, + "Endpoint": { + "properties": { + "endpointUrl": { + "type": "string", + "description": "The URL of the endpoint." + }, + "type": { + "type": "string", + "enum": [ + "ClientApi" + ], + "x-ms-enum": { + "name": "VideoAnalyzerEndpointType", + "values": [ + { + "value": "ClientApi", + "description": "The client API endpoint." + } + ], + "modelAsString": true + }, + "description": "The type of the endpoint." + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The endpoint details." + }, + "UserAssignedManagedIdentity": { + "properties": { + "clientId": { + "type": "string", + "format": "uuid", + "description": "The client ID.", + "readOnly": true, + "x-nullable": true + }, + "principalId": { + "type": "string", + "format": "uuid", + "description": "The principal ID.", + "readOnly": true, + "x-nullable": true + } + }, + "type": "object", + "description": "The details of the user assigned managed identity used by the Video Analyzer resource." + }, + "UserAssignedManagedIdentities": { + "type": "object", + "description": "The User Assigned Managed Identities.", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedManagedIdentity" + } + }, + "VideoAnalyzerIdentity": { + "properties": { + "type": { + "type": "string", + "description": "The identity type." + }, + "userAssignedIdentities": { + "$ref": "#/definitions/UserAssignedManagedIdentities", + "description": "The User Assigned Managed Identities." + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The managed identity for the Video Analyzer resource." + }, + "ResourceIdentity": { + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned managed identity's resource identifier to use when accessing a resource." + } + }, + "type": "object", + "required": [ + "userAssignedIdentity" + ], + "description": "The user assigned managed identity to use when accessing a resource." + }, + "KeyVaultProperties": { + "properties": { + "keyIdentifier": { + "type": "string", + "description": "The URL of the Key Vault key used to encrypt the account. The key may either be versioned (for example https://vault/keys/mykey/version1) or reference a key without a version (for example https://vault/keys/mykey)." + }, + "currentKeyIdentifier": { + "type": "string", + "description": "The current key used to encrypt Video Analyzer account, including the key version.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "keyIdentifier" + ], + "description": "The details for accessing the encryption keys in Key Vault." + }, + "AccountEncryption": { + "properties": { + "type": { + "type": "string", + "enum": [ + "SystemKey", + "CustomerKey" + ], + "x-ms-enum": { + "name": "AccountEncryptionKeyType", + "values": [ + { + "value": "SystemKey", + "description": "The Account Key is encrypted with a System Key." + }, + { + "value": "CustomerKey", + "description": "The Account Key is encrypted with a Customer Key." + } + ], + "modelAsString": true + }, + "description": "The type of key used to encrypt the Account Key." + }, + "keyVaultProperties": { + "$ref": "#/definitions/KeyVaultProperties", + "description": "The properties of the key used to encrypt the account." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The Key Vault identity." + }, + "status": { + "type": "string", + "description": "The current status of the Key Vault mapping.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "Defines how the Video Analyzer account is (optionally) encrypted." + }, + "IotHub": { + "properties": { + "id": { + "type": "string", + "description": "The IoT Hub resource identifier." + }, + "identity": { + "$ref": "#/definitions/ResourceIdentity", + "description": "The IoT Hub identity." + }, + "status": { + "type": "string", + "description": "The current status of the Iot Hub mapping.", + "readOnly": true + } + }, + "type": "object", + "required": [ + "id", + "identity" + ], + "description": "The IoT Hub details." + }, + "GroupLevelAccessControl": { + "properties": { + "publicNetworkAccess": { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ], + "x-ms-enum": { + "name": "PublicNetworkAccess", + "values": [ + { + "value": "Enabled", + "description": "Public network access is enabled." + }, + { + "value": "Disabled", + "description": "Public network access is disabled." + } + ], + "modelAsString": true + }, + "description": "Whether or not public network access is allowed for specified resources under the Video Analyzer account.", + "x-nullable": true + } + }, + "type": "object", + "description": "Group level network access control." + }, + "NetworkAccessControl": { + "properties": { + "integration": { + "$ref": "#/definitions/GroupLevelAccessControl", + "description": "Public network access for integration group.", + "x-nullable": true + }, + "ingestion": { + "$ref": "#/definitions/GroupLevelAccessControl", + "description": "Public network access for ingestion group.", + "x-nullable": true + }, + "consumption": { + "$ref": "#/definitions/GroupLevelAccessControl", + "description": "Public network access for consumption group.", + "x-nullable": true + } + }, + "type": "object", + "description": "Network access control for video analyzer account." + }, + "VideoAnalyzerPrivateEndpointConnectionOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "Operation identifier." + }, + "id": { + "type": "string", + "description": "Operation resource ID." + }, + "startTime": { + "type": "string", + "description": "Operation start time." + }, + "endTime": { + "type": "string", + "description": "Operation end time." + }, + "status": { + "type": "string", + "description": "Operation status." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "x-nullable": true + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "Status of private endpoint connection operation." + }, + "VideoAnalyzerOperationStatus": { + "properties": { + "name": { + "type": "string", + "description": "Operation identifier." + }, + "id": { + "type": "string", + "description": "Operation resource ID." + }, + "startTime": { + "type": "string", + "description": "Operation start time." + }, + "endTime": { + "type": "string", + "description": "Operation end time." + }, + "status": { + "type": "string", + "description": "Operation status." + }, + "error": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorDetail", + "x-nullable": true + } + }, + "type": "object", + "required": [ + "name" + ], + "description": "Status of video analyzer operation." + }, + "OperationCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/Operation" + }, + "description": "A collection of Operation items." + } + }, + "type": "object", + "description": "A collection of Operation items." + }, + "VideoAnalyzerCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VideoAnalyzer" + }, + "description": "A collection of VideoAnalyzer items." + } + }, + "type": "object", + "description": "A collection of VideoAnalyzer items." + } + }, + "paths": { + "/providers/Microsoft.Media/operations": { + "get": { + "summary": "List Operations", + "description": "Lists all the Media operations.", + "operationId": "Operations_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/OperationCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List Operations": { + "$ref": "examples/operations-list-all.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers": { + "get": { + "summary": "List Video Analyzer accounts", + "description": "Lists the Video Analyzer accounts in the specified resource group.", + "operationId": "VideoAnalyzers_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List all Video Analyzer accounts": { + "$ref": "examples/video-analyzer-accounts-list-all-accounts.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}": { + "get": { + "summary": "Get a Video Analyzer account", + "description": "Get the details of the specified Video Analyzer account", + "operationId": "VideoAnalyzers_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get a Video Analyzer account by name": { + "$ref": "examples/video-analyzer-accounts-get-by-name.json" + } + } + }, + "put": { + "summary": "Create or update a Video Analyzer account", + "description": "Create or update an instance of a Video Analyzer account", + "operationId": "VideoAnalyzers_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "201": { + "description": "Created", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Create a Video Analyzer account": { + "$ref": "examples/video-analyzer-accounts-create-or-update.json" + } + } + }, + "delete": { + "summary": "Delete a Video Analyzer account.", + "description": "Delete the specified Video Analyzer account", + "operationId": "VideoAnalyzers_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Delete a Video Analyzer account": { + "$ref": "examples/video-analyzer-accounts-delete.json" + } + } + }, + "patch": { + "summary": "Update a Video Analyzer account", + "description": "Updates an existing instance of Video Analyzer account", + "operationId": "VideoAnalyzers_Update", + "responses": { + "202": { + "description": "Accepted", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoAnalyzerUpdate" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Update a Video Analyzer accounts": { + "$ref": "examples/video-analyzer-accounts-update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateLinkResources": { + "get": { + "summary": "Get list of group IDs.", + "description": "Get list of group IDs for video analyzer account.", + "operationId": "PrivateLinkResources_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateLinkResourceListResult" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get list of all group IDs.": { + "$ref": "examples/video-analyzer-private-link-resources-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateLinkResources/{name}": { + "get": { + "summary": "Get group ID.", + "description": "Get group ID for video analyzer account.", + "operationId": "PrivateLinkResources_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateLinkResource" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Name of the private link resource (Group ID)." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get details of a group ID.": { + "$ref": "examples/video-analyzer-private-link-resources-get-by-name.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateEndpointConnections": { + "get": { + "summary": "Get all private endpoint connections.", + "description": "Get all private endpoint connections under video analyzer account.", + "operationId": "PrivateEndpointConnections_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnectionListResult" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get all private endpoint connections.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateEndpointConnections/{name}": { + "get": { + "summary": "Get private endpoint connection.", + "description": "Get private endpoint connection under video analyzer account.", + "operationId": "PrivateEndpointConnections_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Private endpoint connection name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get private endpoint connection.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-get-by-name.json" + } + } + }, + "put": { + "summary": "Update private endpoint connection.", + "description": "Update private endpoint connection state under video analyzer account.", + "operationId": "PrivateEndpointConnections_CreateOrUpdate", + "responses": { + "201": { + "description": "Created", + "headers": { + "Retry-After": { + "description": "The recommended number of seconds to wait before calling the URI specified in Azure-AsyncOperation.", + "type": "integer", + "format": "int32" + }, + "Location": { + "description": "The URI to poll for completion status.", + "type": "string" + }, + "Azure-AsyncOperation": { + "description": "The URI to poll for completion status.", + "type": "string" + } + }, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Private endpoint connection name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update private endpoint connection.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-put.json" + } + } + }, + "delete": { + "summary": "Delete private endpoint connection.", + "description": "Delete private endpoint connection under video analyzer account.", + "operationId": "PrivateEndpointConnections_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Private endpoint connection name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Delete private endpoint connection.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-delete.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateEndpointConnections/{name}/operationStatuses/{operationId}": { + "get": { + "summary": "Get operation status.", + "description": "Get private endpoint connection operation status.", + "operationId": "OperationStatuses_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerPrivateEndpointConnectionOperationStatus" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Private endpoint connection name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get status of private endpoint asynchronous operation when it is completed.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-operation-status-by-id-terminal-state.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/privateEndpointConnections/{name}/operationResults/{operationId}": { + "get": { + "summary": "Get operation result.", + "description": "Get private endpoint connection operation result.", + "operationId": "OperationResults_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/privatelinks.json#/definitions/PrivateEndpointConnection" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "name": "name", + "in": "path", + "required": true, + "type": "string", + "description": "Private endpoint connection name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Get status of private endpoint connection asynchronous operation.": { + "$ref": "examples/video-analyzer-private-endpoint-connection-operation-result-by-id.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/locations/{locationName}/videoAnalyzerOperationStatuses/{operationId}": { + "get": { + "summary": "Get operation status.", + "description": "Get video analyzer operation status.", + "operationId": "VideoAnalyzerOperationStatuses_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerOperationStatus" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Get status of asynchronous operation when it is completed.": { + "$ref": "examples/video-analyzer-operation-status-by-id-terminal-state.json" + }, + "Get status of asynchronous operation when it is ongoing.": { + "$ref": "examples/video-analyzer-operation-status-by-id-non-terminal-state.json" + }, + "Get status of asynchronous operation when it is completed with error.": { + "$ref": "examples/video-analyzer-operation-status-by-id-non-terminal-state-failed.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/locations/{locationName}/videoAnalyzerOperationResults/{operationId}": { + "get": { + "summary": "Get operation result.", + "description": "Get video analyzer operation result.", + "operationId": "VideoAnalyzerOperationResults_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "202": { + "description": "Accepted" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location name." + }, + { + "name": "operationId", + "in": "path", + "required": true, + "type": "string", + "description": "Operation Id." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-long-running-operation": true, + "x-ms-examples": { + "Get status of asynchronous operation.": { + "$ref": "examples/video-analyzer-operation-result-by-id.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/locations/{locationName}/checkNameAvailability": { + "post": { + "summary": "Check Name Availability", + "description": "Checks whether the Video Analyzer resource name is available.", + "operationId": "Locations_CheckNameAvailability", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "Location Name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Check Name Availability": { + "$ref": "examples/accounts-check-name-availability.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.Media/videoAnalyzers": { + "get": { + "summary": "List Video Analyzer accounts", + "description": "List all Video Analyzer accounts in the specified subscription.", + "operationId": "VideoAnalyzers_ListBySubscription", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List all Video Analyzer accounts in the specified subscription": { + "$ref": "examples/video-analyzer-accounts-subscription-list-all-accounts.json" + } + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/Videos.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/Videos.json new file mode 100644 index 000000000000..e7ca29bfb682 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/Videos.json @@ -0,0 +1,1051 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer Resource Provider", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-11-01-preview" + }, + "host": "management.azure.com", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "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" + } + } + }, + "definitions": { + "VideoContentUrls": { + "properties": { + "downloadUrl": { + "type": "string", + "description": "Video file download URL. This URL can be used in conjunction with the video content authorization token to download the video MP4 file. The resulting MP4 file can be played on any standard media player. It is available when the video type is 'file' and video file is available for consumption." + }, + "archiveBaseUrl": { + "type": "string", + "description": "Video archive streaming base URL. The archived content can be automatically played by the Azure Video Analyzer player widget. Alternatively, this URL can be used in conjunction with the video content authorization token on any compatible DASH or HLS players by appending the following to the base URL:\r\n\r\n - HLSv4: /manifest(format=m3u8-aapl).m3u8\r\n - HLS CMAF: /manifest(format=m3u8-cmaf)\r\n - DASH CMAF: /manifest(format=mpd-time-cmaf)\r\n\r\n Moreover, an ongoing video recording can be played in \"live mode\" with latencies which are approximately double of the chosen video segment length. It is available when the video type is 'archive' and video archiving is enabled." + }, + "rtspTunnelUrl": { + "type": "string", + "description": "Video low-latency streaming URL. The live content can be automatically played by the Azure Video Analyzer player widget. Alternatively, this URL can be used in conjunction with the video content authorization token to expose a WebSocket tunneled RTSP stream. It is available when the video type is 'archive' and a live, low-latency feed is available from the source." + }, + "previewImageUrls": { + "$ref": "#/definitions/VideoPreviewImageUrls", + "description": "Video preview image URLs. These URLs can be used in conjunction with the video content authorization token to download the most recent still image from the video archive in different resolutions. They are available when the video type is 'archive' and preview images are enabled." + } + }, + "type": "object", + "description": "Set of URLs to the video content." + }, + "VideoPreviewImageUrls": { + "properties": { + "small": { + "type": "string", + "description": "Low resolution preview image URL." + }, + "medium": { + "type": "string", + "description": "Medium resolution preview image URL." + }, + "large": { + "type": "string", + "description": "High resolution preview image URL." + } + }, + "type": "object", + "description": "Video preview image URLs. These URLs can be used in conjunction with the video content authorization token to download the most recent still image from the video archive in different resolutions. They are available when the video type is 'archive' and preview images are enabled." + }, + "VideoFlags": { + "properties": { + "canStream": { + "type": "boolean", + "description": "Value indicating whether or not the video can be streamed. Only \"archive\" type videos can be streamed." + }, + "hasData": { + "type": "boolean", + "description": "Value indicating whether or not there has ever been data recorded or uploaded into the video. Newly created videos have this value set to false." + }, + "isInUse": { + "type": "boolean", + "description": "Value indicating whether or not the video is currently being referenced be an active pipeline. The fact that is being referenced, doesn't necessarily indicate that data is being received. For example, video recording may be gated on events or camera may not be accessible at the time." + } + }, + "type": "object", + "required": [ + "canStream", + "hasData", + "isInUse" + ], + "description": "Video flags contain information about the available video actions and its dynamic properties based on the current video state." + }, + "VideoMediaInfo": { + "properties": { + "segmentLength": { + "type": "string", + "description": "Video segment length indicates the length of individual video files (segments) which are persisted to storage. Smaller segments provide lower archive playback latency but generate larger volume of storage transactions. Larger segments reduce the amount of storage transactions while increasing the archive playback latency. Value must be specified in ISO8601 duration format (i.e. \"PT30S\" equals 30 seconds) and can vary between 30 seconds to 5 minutes, in 30 seconds increments.", + "readOnly": true + } + }, + "type": "object", + "description": "Contains information about the video and audio content." + }, + "VideoContentToken": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The content token expiration date in ISO8601 format (eg. 2021-01-01T00:00:00Z).", + "readOnly": true, + "x-nullable": false + }, + "token": { + "type": "string", + "description": "The content token value to be added to the video content URL as the value for the \"token\" query string parameter. The token is specific to a single video.", + "readOnly": true + } + }, + "type": "object", + "description": "\"Video content token grants access to the video content URLs.\"" + }, + "VideoProperties": { + "properties": { + "title": { + "type": "string", + "description": "Optional video title provided by the user. Value can be up to 256 characters long." + }, + "description": { + "type": "string", + "description": "Optional video description provided by the user. Value can be up to 2048 characters long." + }, + "type": { + "type": "string", + "enum": [ + "Archive", + "File" + ], + "x-ms-enum": { + "name": "VideoType", + "values": [ + { + "value": "Archive", + "description": "Archive is flexible format that represents a video stream associated with wall-clock time. The video archive can either be continuous or discontinuous. An archive is discontinuous when there are gaps in the recording due to various reasons, such as the live pipeline being stopped, camera being disconnected or due to the use of event based recordings through the use of a signal gate. There is no limit to the archive duration and new video data can be appended to the existing archive at any time, as long as the same video codec and codec parameters are being used. Videos of this type are suitable for appending and long term archival." + }, + { + "value": "File", + "description": "File represents a video which is stored as a single media file, such as MP4. Videos of this type are suitable to be downloaded for external consumption." + } + ], + "modelAsString": true + }, + "description": "Video content type. Different content types are suitable for different applications and scenarios.", + "readOnly": true, + "x-nullable": false + }, + "flags": { + "$ref": "#/definitions/VideoFlags", + "description": "Video flags contain information about the available video actions and its dynamic properties based on the current video state.", + "readOnly": true + }, + "contentUrls": { + "$ref": "#/definitions/VideoContentUrls", + "description": "Set of URLs to the video content.", + "readOnly": true + }, + "mediaInfo": { + "$ref": "#/definitions/VideoMediaInfo", + "description": "Contains information about the video and audio content.", + "readOnly": true + }, + "archival": { + "$ref": "#/definitions/VideoArchival", + "description": "Video archival properties." + } + }, + "type": "object", + "description": "Application level properties for the video resource." + }, + "VideoArchival": { + "properties": { + "retentionPeriod": { + "type": "string", + "description": "Video retention period indicates the maximum age of the video archive segments which are intended to be kept in storage. It must be provided in the ISO8601 duration format in the granularity of days, up to a maximum of 10 years. For example, if this is set to P30D (30 days), content older than 30 days will be periodically deleted. This value can be updated at any time and the new desired retention period will be effective within 24 hours." + } + }, + "type": "object", + "description": "Video archival properties." + }, + "AuthenticationBase": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + } + }, + "type": "object", + "required": [ + "@type" + ], + "description": "Base class for access policies authentication methods." + }, + "TokenClaim": { + "properties": { + "name": { + "type": "string", + "description": "Name of the claim which must be present on the token." + }, + "value": { + "type": "string", + "description": "Expected value of the claim to be present on the token." + } + }, + "type": "object", + "required": [ + "name", + "value" + ], + "description": "Properties for expected token claims." + }, + "JwtAuthentication": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "allOf": [ + { + "$ref": "#/definitions/AuthenticationBase" + } + ], + "properties": { + "issuers": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of expected token issuers. Token issuer is valid if it matches at least one of the given values." + }, + "audiences": { + "type": "array", + "items": { + "type": "string" + }, + "description": "List of expected token audiences. Token audience is valid if it matches at least one of the given values." + }, + "claims": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenClaim" + }, + "description": "List of additional token claims to be validated. Token must contains all claims and respective values for it to be valid." + }, + "keys": { + "type": "array", + "items": { + "$ref": "#/definitions/TokenKey" + }, + "description": "List of keys which can be used to validate access tokens. Having multiple keys allow for seamless key rotation of the token signing key. Token signature must match exactly one key." + } + }, + "type": "object", + "description": "Properties for access validation based on JSON Web Tokens (JWT)." + }, + "TokenKey": { + "discriminator": "@type", + "properties": { + "@type": { + "type": "string", + "description": "The discriminator for derived types." + }, + "kid": { + "type": "string", + "description": "JWT token key id. Validation keys are looked up based on the key id present on the JWT token header." + } + }, + "type": "object", + "required": [ + "@type", + "kid" + ], + "description": "Key properties for JWT token validation." + }, + "RsaTokenKey": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "allOf": [ + { + "$ref": "#/definitions/TokenKey" + } + ], + "properties": { + "alg": { + "type": "string", + "enum": [ + "RS256", + "RS384", + "RS512" + ], + "x-ms-enum": { + "name": "AccessPolicyRsaAlgo", + "values": [ + { + "value": "RS256", + "description": "RS256" + }, + { + "value": "RS384", + "description": "RS384" + }, + { + "value": "RS512", + "description": "RS512" + } + ], + "modelAsString": true + }, + "description": "RSA algorithm to be used: RS256, RS384 or RS512." + }, + "n": { + "type": "string", + "description": "RSA public key modulus." + }, + "e": { + "type": "string", + "description": "RSA public key exponent." + } + }, + "type": "object", + "required": [ + "alg", + "n", + "e" + ], + "description": "Required validation properties for tokens generated with RSA algorithm." + }, + "EccTokenKey": { + "x-ms-discriminator-value": "#Microsoft.VideoAnalyzer.EccTokenKey", + "allOf": [ + { + "$ref": "#/definitions/TokenKey" + } + ], + "properties": { + "alg": { + "type": "string", + "enum": [ + "ES256", + "ES384", + "ES512" + ], + "x-ms-enum": { + "name": "AccessPolicyEccAlgo", + "values": [ + { + "value": "ES256", + "description": "ES265" + }, + { + "value": "ES384", + "description": "ES384" + }, + { + "value": "ES512", + "description": "ES512" + } + ], + "modelAsString": true + }, + "description": "Elliptical curve algorithm to be used: ES256, ES384 or ES512." + }, + "x": { + "type": "string", + "description": "X coordinate." + }, + "y": { + "type": "string", + "description": "Y coordinate." + } + }, + "type": "object", + "required": [ + "alg", + "x", + "y" + ], + "description": "Required validation properties for tokens generated with Elliptical Curve algorithm." + }, + "AccessPolicyProperties": { + "properties": { + "role": { + "type": "string", + "enum": [ + "Reader" + ], + "x-ms-enum": { + "name": "AccessPolicyRole", + "values": [ + { + "value": "Reader", + "description": "Reader role allows for read-only operations to be performed through the client APIs." + } + ], + "modelAsString": true + }, + "description": "Defines the access level granted by this policy.", + "x-nullable": true + }, + "authentication": { + "$ref": "#/definitions/AuthenticationBase", + "description": "Authentication method to be used when validating client API access." + } + }, + "type": "object", + "description": "Application level properties for the access policy resource." + }, + "VideoEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object" + }, + "AccessPolicyEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AccessPolicyProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + } + }, + "type": "object", + "description": "Access policies help define the authentication rules, and control access to specific video resources." + }, + "VideoEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "A collection of VideoEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of VideoEntity items." + }, + "AccessPolicyEntityCollection": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "A collection of AccessPolicyEntity items." + }, + "@nextLink": { + "type": "string", + "description": "A link to the next page of the collection (when the collection contains too many results to return in one response)." + } + }, + "type": "object", + "description": "A collection of AccessPolicyEntity items." + } + }, + "paths": { + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos": { + "get": { + "summary": "Retrieves all existing video resources.", + "description": "Retrieves a list of video resources that have been created, along with their JSON representations.", + "operationId": "Videos_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists video entities.": { + "$ref": "examples/video-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos/{videoName}": { + "get": { + "summary": "Retrieves an existing video resource.", + "description": "Retrieves an existing video resource with the given name.", + "operationId": "Videos_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets a video entity.": { + "$ref": "examples/video-get.json" + } + } + }, + "put": { + "summary": "Creates a new video resource or updates an existing one.", + "description": "Creates a new video resource or updates an existing video resource with the given name.", + "operationId": "Videos_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register video entity.": { + "$ref": "examples/video-create.json" + } + } + }, + "delete": { + "summary": "Deletes an existing video resource and its underlying data.", + "description": "Deletes an existing video resource and its underlying data. This operation is irreversible.", + "operationId": "Videos_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes a video entity.": { + "$ref": "examples/video-delete.json" + } + } + }, + "patch": { + "summary": "Updates individual properties of an existing video resource.", + "description": "Updates individual properties of an existing video resource with the given name.", + "operationId": "Videos_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update video entity.": { + "$ref": "examples/video-patch.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/videos/{videoName}/listContentToken": { + "post": { + "summary": "Generates a streaming token which can be used for accessing content from video content URLs.", + "description": "Generates a streaming token which can be used for accessing content from video content URLs, for a video resource with the given name.", + "operationId": "Videos_ListContentToken", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoContentToken" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Generate a content token for media endpoint authorization.": { + "$ref": "examples/video-listContentToken.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/accessPolicies": { + "get": { + "summary": "List all existing access policy resources.", + "description": "Retrieves all existing access policy resources, along with their JSON representations.", + "operationId": "AccessPolicies_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + }, + { + "name": "$top", + "in": "query", + "required": false, + "type": "integer", + "format": "int32", + "description": "Specifies a non-negative integer n that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value n." + } + ], + "x-ms-pageable": { + "nextLinkName": "@nextLink" + }, + "x-ms-examples": { + "Lists access policy entities.": { + "$ref": "examples/access-policy-list.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/accessPolicies/{accessPolicyName}": { + "get": { + "summary": "Retrieves an existing access policy resource.", + "description": "Retrieves an existing access policy resource with the given name.", + "operationId": "AccessPolicies_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The Access Policy name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets an access policy entity.": { + "$ref": "examples/access-policy-get.json" + } + } + }, + "put": { + "summary": "Creates a new access policy resource or updates an existing one.", + "description": "Creates a new access policy resource or updates an existing one with the given name.", + "operationId": "AccessPolicies_CreateOrUpdate", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The Access Policy name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register access policy entity.": { + "$ref": "examples/access-policy-create.json" + } + } + }, + "delete": { + "summary": "Deletes an existing access policy resource.", + "description": "Deletes an existing access policy resource with the given name.", + "operationId": "AccessPolicies_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The Access Policy name." + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes an access policy entity.": { + "$ref": "examples/access-policy-delete.json" + } + } + }, + "patch": { + "summary": "Updates individual properties of an existing access policy resource.", + "description": "Updates individual properties of an existing access policy resource with the given name.", + "operationId": "AccessPolicies_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The Access Policy name." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v3/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update access policy entity.": { + "$ref": "examples/access-policy-patch.json" + } + } + } + } + }, + "parameters": { + "AzureVideoAnalyzerAccountName": { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Azure Video Analyzer account name.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-create.json new file mode 100644 index 000000000000..40e3e16e21b4 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-create.json @@ -0,0 +1,159 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "ES256", + "kid": "124", + "x": "XX==", + "y": "YY==" + } + ] + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "accessPolicyName2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName2", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-delete.json new file mode 100644 index 000000000000..4cafacae3f87 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-get.json new file mode 100644 index 000000000000..9f06f0163470 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-get.json @@ -0,0 +1,65 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-list.json new file mode 100644 index 000000000000..8eb9e7bd1888 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-list.json @@ -0,0 +1,121 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "accessPolicyName2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName2", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-patch.json new file mode 100644 index 000000000000..0e1859cd00cf --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/access-policy-patch.json @@ -0,0 +1,105 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "ES256", + "kid": "124", + "x": "XX==", + "y": "YY==" + } + ] + } + } + } + }, + "responses": { + "200": { + "body": { + "name": "accessPolicyName1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/accesspolicies/accessPolicyName1", + "type": "Microsoft.Media/videoAnalyzers/accesspolicies", + "properties": { + "role": "Reader", + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "issuers": [ + "issuer1", + "issuer2" + ], + "audiences": [ + "audience1" + ], + "claims": [ + { + "name": "claimname1", + "value": "claimvalue1" + }, + { + "name": "claimname2", + "value": "claimvalue2" + } + ], + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "kid": "123", + "alg": "RS256", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "kid": "124", + "alg": "ES256", + "x": "XX==", + "y": "YY==" + } + ] + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/accounts-check-name-availability.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/accounts-check-name-availability.json new file mode 100644 index 000000000000..927a4ca29acb --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/accounts-check-name-availability.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "japanwest", + "api-version": "2021-11-01-Preview", + "parameters": { + "name": "contosotv", + "type": "videoAnalyzers" + } + }, + "responses": { + "200": { + "body": { + "nameAvailable": true, + "reason": "None", + "message": "" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-create.json new file mode 100644 index 000000000000..5afd1bea5672 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-create.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-11-01-preview", + "parameters": {} + }, + "responses": { + "201": { + "body": { + "name": "edgeModule2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule2", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-delete.json new file mode 100644 index 000000000000..9567fe560b89 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-get.json new file mode 100644 index 000000000000..baa9c420ccaa --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-list.json new file mode 100644 index 000000000000..76e4345dc605 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-list.json @@ -0,0 +1,48 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "edgeModule1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule1", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "edgeModule2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/edgeModules/edgeModule2", + "type": "Microsoft.Media/videoAnalyzers/edgeModules", + "properties": { + "edgeModuleId": "00000000-0000-0000-0000-000000000000" + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-listProvisioningToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-listProvisioningToken.json new file mode 100644 index 000000000000..3e5e308d38f2 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/edge-modules-listProvisioningToken.json @@ -0,0 +1,19 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-11-01-preview", + "parameters": { + "expirationDate": "3021-01-23T11:04:49.0526841-08:00" + } + }, + "responses": { + "200": { + "body": { + "expirationDate": "2021-09-24T04:17:55.6193764Z" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-activate.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-activate.json new file mode 100644 index 000000000000..6233e626dac2 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-activate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-create.json new file mode 100644 index 000000000000..89138b2d3997 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-create.json @@ -0,0 +1,74 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "topologyName": "pipelinetopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "livePipeline2", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "state": "Activating", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "livePipeline1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "state": "Inactive", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-deactivate.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-deactivate.json new file mode 100644 index 000000000000..6233e626dac2 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-deactivate.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-delete.json new file mode 100644 index 000000000000..85eb5ec6a8ef --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-get-by-name.json new file mode 100644 index 000000000000..9dad92f9e5c0 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-get-by-name.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "livePipeline1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "state": "Inactive", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-list.json new file mode 100644 index 000000000000..0e5d0c015b2a --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-list.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "livePipeline1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "state": "Inactive", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "livePipeline2", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 2 Description", + "bitrateKbps": 500, + "state": "Activating", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-operation-status-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-operation-status-get.json new file mode 100644 index 000000000000..bcf54c2a5768 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-operation-status-get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "operationId": "00000000-0000-0000-0000-000000000001", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "00000000-0000-0000-0000-000000000001", + "status": "Failed", + "error": { + "code": "Conflict" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-patch.json new file mode 100644 index 000000000000..a2bc90ea2b50 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/live-pipeline-patch.json @@ -0,0 +1,41 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "livePipelineName": "livePipeline1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "description": "Live Pipeline 1 Description" + } + } + }, + "responses": { + "200": { + "body": { + "name": "livePipeline1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Live Pipeline 1 Description", + "bitrateKbps": 500, + "state": "Inactive", + "parameters": [ + { + "name": "rtspUrlParameter", + "value": "rtsp://contoso.com/stream" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/operations-list-all.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/operations-list-all.json new file mode 100644 index 000000000000..aab93c87c3fb --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/operations-list-all.json @@ -0,0 +1,1449 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "Microsoft.Media/register/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Registers the Media Services Resource Provider", + "description": "Registers the subscription for the Media Services resource provider and enables the creation of Media Services accounts" + } + }, + { + "name": "Microsoft.Media/unregister/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Unregisters the Media Services Resource Provider", + "description": "Unregisters the subscription for the Media Services resource provider" + } + }, + { + "name": "Microsoft.Media/checknameavailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + }, + { + "name": "Microsoft.Media/operations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Available Operations", + "operation": "Get Available Operations", + "description": "Get Available Operations" + } + }, + { + "name": "Microsoft.Media/mediaservices/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Read Media Services Account", + "description": "Read any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Create or Update Media Services Account", + "description": "Create or Update any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Delete Media Services Account", + "description": "Delete any Media Services Account" + } + }, + { + "name": "Microsoft.Media/mediaservices/regenerateKey/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Regenerate Key", + "description": "Regenerate a Media Services ACS key" + } + }, + { + "name": "Microsoft.Media/mediaservices/listKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "List Keys", + "description": "List the ACS keys for the Media Services account" + } + }, + { + "name": "Microsoft.Media/mediaservices/syncStorageKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Synchronize Storage Keys", + "description": "Synchronize the Storage Keys for an attached Azure Storage account" + } + }, + { + "name": "Microsoft.Media/mediaservices/listEdgePolicies/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "List policies for an edge device.", + "description": "List policies for an edge device." + } + }, + { + "name": "Microsoft.Media/mediaservices/PrivateEndpointConnectionsApproval/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Approve Private Endpoint Connections", + "description": "Approve Private Endpoint Connections" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Read Event Grid Filter", + "description": "Read any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Create or Update Event Grid Filter", + "description": "Create or Update any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/eventGridFilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Event Grid Filter", + "operation": "Delete Event Grid Filter", + "description": "Delete any Event Grid Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Read Account Filter", + "description": "Read any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Create or Update Account Filter", + "description": "Create or Update any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/accountfilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Account Filter", + "operation": "Delete Account Filter", + "description": "Delete any Account Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Read Asset", + "description": "Read any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Create or Update Asset", + "description": "Create or Update any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Delete Asset", + "description": "Delete any Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/listContainerSas/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "List Asset Container SAS URLs", + "description": "List Asset Container SAS URLs" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/getEncryptionKey/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "Get Asset Encryption Key", + "description": "Get Asset Encryption Key" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/listStreamingLocators/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset", + "operation": "List Streaming Locators for Asset", + "description": "List Streaming Locators for Asset" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Read Asset Filter", + "description": "Read any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Create or Update Asset Filter", + "description": "Create or Update any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/assets/assetfilters/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Asset Filter", + "operation": "Delete Asset Filter", + "description": "Delete any Asset Filter" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Read Streaming Policy", + "description": "Read any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Create or Update Streaming Policy", + "description": "Create or Update any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Policy", + "operation": "Delete Streaming Policy", + "description": "Delete any Streaming Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Read Streaming Locator", + "description": "Read any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Create or Update Streaming Locator", + "description": "Create or Update any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "Delete Streaming Locator", + "description": "Delete any Streaming Locator" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listContentKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Content Keys", + "description": "List Content Keys" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingLocators/listPaths/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Locator", + "operation": "List Paths", + "description": "List Paths" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Read Content Key Policy", + "description": "Read any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Create or Update Content Key Policy", + "description": "Create or Update any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Delete Content Key Policy", + "description": "Delete any Content Key Policy" + } + }, + { + "name": "Microsoft.Media/mediaservices/contentKeyPolicies/getPolicyPropertiesWithSecrets/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Content Key Policy", + "operation": "Get Policy Properties With Secrets", + "description": "Get Policy Properties With Secrets" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Read Transform", + "description": "Read any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Create or Update Transform", + "description": "Create or Update any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Transform", + "operation": "Delete Transform", + "description": "Delete any Transform" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Read Job", + "description": "Read any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Create or Update Job", + "description": "Create or Update any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Delete Job", + "description": "Delete any Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/transforms/jobs/cancelJob/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Job", + "operation": "Cancel Job", + "description": "Cancel Job" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateLinkResources/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateLinkResource", + "operation": "Read Private Link Resource", + "description": "Read any Private Link Resource" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Read Private Endpoint Connection Proxy", + "description": "Read any Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Create Private Endpoint Connection Proxy", + "description": "Create Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Delete Private Endpoint Connection Proxy", + "description": "Delete Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionProxies/validate/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnectionProxy", + "operation": "Validate Private Endpoint Connection Proxy", + "description": "Validate Private Endpoint Connection Proxy" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Read Private Endpoint Connection", + "description": "Read any Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Create Private Endpoint Connection", + "description": "Create Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnections/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "PrivateEndpointConnection", + "operation": "Delete Private Endpoint Connection", + "description": "Delete Private Endpoint Connection" + } + }, + { + "name": "Microsoft.Media/mediaservices/privateEndpointConnectionOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Private Endpoint Connection Operation", + "operation": "Read Private Endpoint Connection Operation", + "description": "Read any Private Endpoint Connection Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Read Streaming Endpoint", + "description": "Read any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Create or Update Streaming Endpoint", + "description": "Create or Update any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Delete Streaming Endpoint", + "description": "Delete any Streaming Endpoint" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Start Streaming Endpoint Operation", + "description": "Start any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Stop Streaming Endpoint Operation", + "description": "Stop any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/scale/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint", + "operation": "Scale Streaming Endpoint Operation", + "description": "Scale any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpoints/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoints", + "operation": "Get list of Media Services Streaming Endpoint Metrics definitions.", + "description": "Get list of Media Services Streaming Endpoint Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "Egress", + "displayName": "Egress", + "displayDescription": "The amount of Egress data, in bytes.", + "unit": "Bytes", + "aggregationType": "Total", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ], + "supportedAggregationTypes": [ + "Total" + ] + }, + { + "name": "SuccessE2ELatency", + "displayName": "Success end to end Latency", + "displayDescription": "The average latency for successful requests in milliseconds.", + "unit": "Milliseconds", + "aggregationType": "Average", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + } + ], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "Requests", + "displayName": "Requests", + "displayDescription": "Requests to a Streaming Endpoint.", + "unit": "Count", + "aggregationType": "Total", + "dimensions": [ + { + "name": "OutputFormat", + "displayName": "Output Format", + "toBeExportedForShoebox": true + }, + { + "name": "HttpStatusCode", + "displayName": "HTTP Status Code", + "toBeExportedForShoebox": true + }, + { + "name": "ErrorCode", + "displayName": "Error Code", + "toBeExportedForShoebox": false + } + ], + "supportedAggregationTypes": [ + "Total" + ] + }, + { + "name": "EgressBandwidth", + "displayName": "Egress bandwidth", + "displayDescription": "Egress bandwidth in bits per second.", + "unit": "BitsPerSecond", + "aggregationType": "Average", + "lockAggregationType": "Total", + "dimensions": [], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "CPU", + "displayName": "CPU usage", + "displayDescription": "CPU usage for premium streaming endpoints. This data is not available for standard streaming endpoints.", + "unit": "Percent", + "aggregationType": "Average", + "dimensions": [], + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Read Live Event", + "description": "Read any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Create or Update Live Event", + "description": "Create or Update any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Delete Live Event", + "description": "Delete any Live Event" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Start Live Event Operation", + "description": "Start any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Stop Live Event Operation", + "description": "Stop any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/reset/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Reset Live Event Operation", + "description": "Reset any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event", + "operation": "Get a list of Media Services Live Event Metrics definitions.", + "description": "Get a list of Media Services Live Event Metrics definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "IngestBitrate", + "displayName": "Live Event ingest bitrate", + "displayDescription": "The incoming bitrate ingested for a live event, in bits per second.", + "unit": "BitsPerSecond", + "aggregationType": "Average", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Average", + "Minimum", + "Maximum" + ] + }, + { + "name": "IngestLastTimestamp", + "displayName": "Live Event ingest last timestamp", + "displayDescription": "Last timestamp ingested for a live event.", + "unit": "Milliseconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + }, + { + "name": "IngestDriftValue", + "displayName": "Live Event ingest drift value", + "displayDescription": "Drift between the timestamp of the ingested content and the system clock, measured in seconds per minute. A non zero value indicates that the ingested content is arriving slower than system clock time.", + "unit": "Seconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + }, + { + "name": "LiveOutputLastTimestamp", + "displayName": "Last output timestamp", + "displayDescription": "Timestamp of the last fragment uploaded to storage for a live event output.", + "unit": "Milliseconds", + "aggregationType": "Maximum", + "dimensions": [ + { + "name": "TrackName", + "displayName": "Track name", + "toBeExportedForShoebox": true + } + ], + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MicrosoftMediaLiveEvent", + "supportedAggregationTypes": [ + "Maximum" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Read Live Output", + "description": "Read any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Create or Update Live Output", + "description": "Create or Update any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEvents/liveOutputs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output", + "operation": "Delete Live Output", + "description": "Delete any Live Output" + } + }, + { + "name": "Microsoft.Media/mediaservices/streamingEndpointOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Streaming Endpoint Operation", + "operation": "Read Streaming Endpoint Operation", + "description": "Read any Streaming Endpoint Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveEventOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Event Operation", + "operation": "Read Live Event Operation", + "description": "Read any Live Event Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/liveOutputOperations/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Output Operation", + "operation": "Read Live Output Operation", + "description": "Read any Live Output Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/diagnosticSettings/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Read diagnostic setting", + "description": "Gets the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/diagnosticSettings/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Services Account", + "operation": "Write diagnostic setting", + "description": "Creates or updates the diagnostic setting for the resource." + }, + "origin": "system" + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/logDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "The log definition of mediaservices", + "operation": "Read mediaservices log definitions", + "description": "Gets the available logs for a Media Services Account" + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "logSpecifications": [ + { + "name": "KeyDeliveryRequests", + "displayName": "Key Delivery Requests", + "blobDuration": "PT1H" + } + ] + } + } + }, + { + "name": "Microsoft.Media/mediaservices/providers/Microsoft.Insights/metricDefinitions/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Service", + "operation": "Get list of Media Services Metric definitions.", + "description": "Get list of Media Services Metric definitions." + }, + "origin": "system", + "properties": { + "serviceSpecification": { + "metricSpecifications": [ + { + "name": "AssetQuota", + "displayName": "Asset quota", + "displayDescription": "How many assets are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "AssetCount", + "displayName": "Asset count", + "displayDescription": "How many assets are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "AssetQuotaUsedPercentage", + "displayName": "Asset quota used percentage", + "displayDescription": "Asset used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyQuota", + "displayName": "Content Key Policy quota", + "displayDescription": "How many content key polices are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyCount", + "displayName": "Content Key Policy count", + "displayDescription": "How many content key policies are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ContentKeyPolicyQuotaUsedPercentage", + "displayName": "Content Key Policy quota used percentage", + "displayDescription": "Content Key Policy used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyQuota", + "displayName": "Streaming Policy quota", + "displayDescription": "How many streaming policies are allowed for current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyCount", + "displayName": "Streaming Policy count", + "displayDescription": "How many streaming policies are already created in current media service account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "StreamingPolicyQuotaUsedPercentage", + "displayName": "Streaming Policy quota used percentage", + "displayDescription": "Streaming Policy used percentage in current media service account", + "unit": "Percent", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "MediaServiceQuotaAndUsage", + "supportedAggregationTypes": [ + "Average" + ], + "supportedTimeGrainTypes": [ + "PT1H", + "PT6H", + "PT12H", + "P1D" + ] + }, + { + "name": "ChannelsAndLiveEventsCount", + "displayName": "Live event count", + "displayDescription": "The total number of live events in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "RunningChannelsAndLiveEventsCount", + "displayName": "Running live event count", + "displayDescription": "The total number of running live events in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "MaxChannelsAndLiveEventsCount", + "displayName": "Max live event quota", + "displayDescription": "The maximum number of live events allowed in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + }, + { + "name": "MaxRunningChannelsAndLiveEventsCount", + "displayName": "Max running live event quota", + "displayDescription": "The maximum number of running live events allowed in the current media services account", + "unit": "Count", + "aggregationType": "Average", + "enableRegionalMdmAccount": true, + "sourceMdmNamespace": "ClusterResource_ChannelsAndLiveEvents", + "supportedAggregationTypes": [ + "Average" + ] + } + ] + } + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Read a Video Analyzer Account", + "description": "Read a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Create or Update a Video Analyzer Account", + "description": "Create or Update a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Delete a Video Analyzer Account", + "description": "Delete a Video Analyzer Account" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/videos/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Resource", + "operation": "Read Video", + "description": "Read any Video" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/videos/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Resource", + "operation": "Create or Update Video", + "description": "Create or Update any Video" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/videos/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Resource", + "operation": "Delete Video", + "description": "Delete any Video" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/videos/listStreamingToken/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Resource", + "operation": "Generates a streaming token which can be used for video playback", + "description": "Generates a streaming token which can be used for video playback" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/videos/listContentToken/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Resource", + "operation": "Generates a content token which can be used for video playback", + "description": "Generates a content token which can be used for video playback" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/accessPolicies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Access Policy Resource", + "operation": "Read Access Policy", + "description": "Read any Access Policy" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/accessPolicies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Access Policy Resource", + "operation": "Create or Update Access Policy", + "description": "Create or Update any Access Policy" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/accessPolicies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Access Policy Resource", + "operation": "Delete Access Policy", + "description": "Delete any Access Policy" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/edgeModules/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Edge Module Resource", + "operation": "Read Edge Module", + "description": "Read any Edge Module" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/edgeModules/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Edge Module Resource", + "operation": "Create or Update Edge Module", + "description": "Create or Update any Edge Module" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/edgeModules/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Edge Module Resource", + "operation": "Delete Edge Module", + "description": "Delete any Edge Module" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/edgeModules/listProvisioningToken/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Edge Module Resource", + "operation": "Creates a new provisioning token", + "description": "Creates a new provisioning token. A provisioning token allows for a single instance of Azure Video analyzer IoT edge module to be initialized and authorized to the cloud account. The provisioning token itself is short lived and it is only used for the initial handshake between IoT edge module and the cloud. After the initial handshake, the IoT edge module will agree on a set of authentication keys which will be auto-rotated as long as the module is able to periodically connect to the cloud. A new provisioning token can be generated for the same IoT edge module in case the module state lost or reset" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineTopologies/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Topology Resource", + "operation": "Read Pipeline Topology", + "description": "Read any Pipeline Topology" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineTopologies/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Topology Resource", + "operation": "Create or Update Pipeline Topology", + "description": "Create or Update any Pipeline Topology" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineTopologies/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Topology Resource", + "operation": "Delete Pipeline Topology", + "description": "Delete any Pipeline Topology" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline Resource", + "operation": "Read Live Pipeline", + "description": "Read any Live Pipeline" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline Resource", + "operation": "Create or Update Live Pipeline", + "description": "Create or Update any Live Pipeline" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline Resource", + "operation": "Delete Live Pipeline", + "description": "Delete any Live Pipeline" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/activate/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline Resource", + "operation": "Activate Live Pipeline", + "description": "Activate any Live Pipeline" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/deactivate/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline Resource", + "operation": "Deactivate Live Pipeline", + "description": "Deactivate any Live Pipeline" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/livePipelines/operationsStatus/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Live Pipeline operation status Resource", + "operation": "Read Live Pipeline operation status", + "description": "Read any Live Pipeline operation status" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineJobs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Job Resource", + "operation": "Read Pipeline Job", + "description": "Read any Pipeline Job" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineJobs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Job Resource", + "operation": "Create or Update Pipeline Job", + "description": "Create or Update any Pipeline Job" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineJobs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Job Resource", + "operation": "Delete Pipeline Job", + "description": "Delete any Pipeline Job" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineJobs/cancel/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Job Resource", + "operation": "Cancel Pipeline Job", + "description": "Cancel any Pipeline Job" + } + }, + { + "name": "Microsoft.Media/videoAnalyzers/pipelineJobs/operationsStatus/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Pipeline Job operation status Resource", + "operation": "Read Pipeline Job operation status", + "description": "Read any Pipeline Job operation status" + } + }, + { + "name": "Microsoft.Media/locations/checkNameAvailability/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Microsoft Media Services", + "operation": "Check Name Availability", + "description": "Checks if a Media Services account name is available" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-cancel.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-cancel.json new file mode 100644 index 000000000000..e76283fc7bf7 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-cancel.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "202": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-create.json new file mode 100644 index 000000000000..1379e5961ee8 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-create.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "topologyName": "pipelinetopology1", + "description": "Pipeline Job 1 Dsecription", + "parameters": [ + { + "name": "timesequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pipelineJob1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Pipeline Job 1 Description", + "state": "Processing", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "pipelineJob2", + "properties": { + "topologyName": "pipelineTopology2", + "description": "Pipeline Job 2 Description", + "state": "Processing", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-delete.json new file mode 100644 index 000000000000..9af2e6d7da5e --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-get-by-name.json new file mode 100644 index 000000000000..1419aedb7858 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-get-by-name.json @@ -0,0 +1,35 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "pipelineJob1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Pipeline Job 1 Description", + "state": "Processing", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-list.json new file mode 100644 index 000000000000..eb6ca7f2f402 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-list.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pipelineJob1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Pipeline Job 1 Description", + "state": "Processing", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "pipelineJob2", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Pipeline Job 2 Description", + "state": "Completed", + "expiration": "2020-11-04T07:30:00Z", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T07:30:00Z, 2020-10-05T08:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-operation-status-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-operation-status-get.json new file mode 100644 index 000000000000..cb6162145ad5 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-operation-status-get.json @@ -0,0 +1,21 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "operationId": "00000000-0000-0000-0000-000000000001", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "00000000-0000-0000-0000-000000000001", + "status": "Failed", + "error": { + "code": "SetupValidationFailed" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-patch.json new file mode 100644 index 000000000000..d9480c9ad2f7 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-job-patch.json @@ -0,0 +1,40 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineJobName": "pipelineJob1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "description": "Pipeline Job 1 description" + } + } + }, + "responses": { + "200": { + "body": { + "name": "pipelineJob1", + "properties": { + "topologyName": "pipelineTopology1", + "description": "Pipeline Job 1 Description", + "state": "Processing", + "parameters": [ + { + "name": "timeSequences", + "value": "[[2020-10-05T03:30:00Z, 2020-10-05T04:30:00Z]]" + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-create.json new file mode 100644 index 000000000000..1b2f950ecfdd --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-create.json @@ -0,0 +1,204 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineTopologyName": "pipelineTopology1", + "api-version": "2021-11-01-preview", + "parameters": { + "kind": "Live", + "sku": { + "name": "Live_S1" + }, + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtsp source url parameter", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtsp source password parameter", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "@type": "#Microsoft.VideoAnalyzer.UnsecuredEndpoint", + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + }, + "inputs": [ + { + "nodeName": "rtspSource" + } + ] + } + ] + } + } + }, + "responses": { + "201": { + "body": { + "name": "pipelineTopology2", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtsp source url parameter", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtsp source password parameter", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "@type": "#Microsoft.VideoAnalyzer.UnsecuredEndpoint", + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + } + }, + "200": { + "body": { + "name": "pipelineTopology1", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtspUrlParameter declaration", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtspPasswordParameter declaration", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-delete.json new file mode 100644 index 000000000000..2b5b02f58a2c --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineTopologyName": "pipelineTopology1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-get-by-name.json new file mode 100644 index 000000000000..9f588fc95dae --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-get-by-name.json @@ -0,0 +1,79 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineTopologyName": "pipelineTopology1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "pipelineTopology1", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtspUrlParameter declaration", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtspPasswordParameter declaration", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-list.json new file mode 100644 index 000000000000..fd34f23d509d --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-list.json @@ -0,0 +1,160 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "pipelineTopology1", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtspUrlParameter declaration", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtspPasswordParameter declaration", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + }, + { + "name": "pipelineTopology2", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 2 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtspUrlParameter declaration", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtspPasswordParameter declaration", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "@type": "#Microsoft.VideoAnalyzer.TlsEndpoint", + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + }, + "trustedCertificates": { + "@type": "#Microsoft.VideoAnalyzer.PemCertificateList", + "certificates": [ + "-----BEGIN CERTIFICATE-----\nMIIDhTCCAm2gAwIBAgIUajvPKmoO+8qaO89/ZGATl7ZYnTswDQYJKoZIhvcNAQEL\nBQAwUTESMBAGA1UECgwJTWljcm9zb2Z0MRQwEgYDVQQLDAtBenVyZSBNZWRpYTEl\nMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBDZXJ0aWZpY2F0ZTAgFw0yMDAyMDYy\nMTI5MTlaGA8zMDE5MDYwOTIxMjkxOVowUTESMBAGA1UECgwJTWljcm9zb2Z0MRQw\nEgYDVQQLDAtBenVyZSBNZWRpYTElMCMGA1UEAwwcKFVudHJ1c3RlZCkgVGVzdCBD\nZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAK2lg5ff\n7xXPaBZXHl/zrTukdiBtu7BNIOchHba51eloruPRzpvQx7Pedk3CVTut7LYinijf\nuol0EwkQ2FLt2i2jOqiva9nXR95ujIZHcKsEeMC4RSNSP4++k6SpP8FgyYVdv5ru\nf8GC+HyYQ4j0TqpR/cJs53l/LGRSldaFZ6fcDde1jeyca4VivAbAH1/WDIOvmjzo\n9XIGxZ10VSS5l5+DIgdkJZ+mDMLJIuVZ0YVF16ZGEB3beq1trk5lItvmSjQLTllH\nqMFm9UGY8jKZSo/BY8ewHEtnGSAFQK0TVuRx1HhUWwu6C9jk+2zmRS2090BNpQWa\nJMKFJrSPzFDPRX8CAwEAAaNTMFEwHQYDVR0OBBYEFIumbhu0lYk0EFDThEg0yyIn\n/wZZMB8GA1UdIwQYMBaAFIumbhu0lYk0EFDThEg0yyIn/wZZMA8GA1UdEwEB/wQF\nMAMBAf8wDQYJKoZIhvcNAQELBQADggEBADUNw+/NGNVtigq9tMJKqlk39MTpDn1s\nZ1BVIAuAWSQjlevYZJeDIPUiWNWFhRe+xN7oOLnn2+NIXEKKeMSyuPoZYbN0mBkB\n99oS3XVipSANpmDvIepNdCrOnjfqDFIifRF1Dqjtb6i1hb6v/qYKVPLQvcrgGur7\nPKKkAu9p4YRZ3RBdwwaUuMgojrj/l6DGbeJY6IRVnVMY39rryMnZjA5xUlhCu55n\noB3t/jsJLwnQN+JbAjLAeuqgOWtgARsEFzvpt+VvDsaj0YLOJPhyJwTvHgaa/slB\nnECzd3TuyFKYeGssSni/QQ1e7yZcLapQqz66g5otdriw0IRdOfDxm5M=\n-----END CERTIFICATE-----" + ] + }, + "validationOptions": { + "ignoreHostname": "true", + "ignoreSignature": "false" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-patch.json new file mode 100644 index 000000000000..71b36109db96 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/pipeline-topology-patch.json @@ -0,0 +1,84 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "pipelineTopologyName": "pipelineTopology1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "description": "Pipeline Topology 1 Description" + } + } + }, + "responses": { + "200": { + "body": { + "name": "pipelineTopology1", + "kind": "Live", + "properties": { + "description": "Pipeline Topology 1 Description", + "parameters": [ + { + "name": "rtspUrlParameter", + "type": "String", + "description": "rtspUrlParameter declaration", + "default": "rtsp://microsoft.com/video.mp4" + }, + { + "name": "rtspPasswordParameter", + "type": "SecretString", + "description": "rtspPasswordParameter declaration", + "default": "password" + } + ], + "sources": [ + { + "@type": "#Microsoft.VideoAnalyzer.RtspSource", + "name": "rtspSource", + "transport": "Http", + "endpoint": { + "url": "${rtspUrlParameter}", + "credentials": { + "@type": "#Microsoft.VideoAnalyzer.UsernamePasswordCredentials", + "username": "username", + "password": "${rtspPasswordParameter}" + } + } + } + ], + "processors": [], + "sinks": [ + { + "@type": "#Microsoft.VideoAnalyzer.VideoSink", + "name": "videoSink", + "videoName": "camera001", + "inputs": [ + { + "nodeName": "rtspSource" + } + ], + "videoCreationProperties": { + "title": "Parking Lot (Camera 1)", + "description": "Parking lot south entrance", + "segmentLength": "PT30S" + } + } + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + }, + "sku": { + "name": "Live_S1", + "tier": "Standard" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-create-or-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-create-or-update.json new file mode 100644 index 000000000000..481d119bff51 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-create-or-update.json @@ -0,0 +1,262 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-11-01-Preview", + "parameters": { + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + } + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": {}, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": {}, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": {} + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "InProgress", + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [ + { + "name": "00000000-0000-0000-0000-000000000001", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000001", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "00000000-0000-0000-0000-000000000002", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000002", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "InProgress", + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [ + { + "name": "00000000-0000-0000-0000-000000000001", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000001", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "00000000-0000-0000-0000-000000000002", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000002", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-delete.json new file mode 100644 index 000000000000..027d57e7064f --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-delete.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-get-by-name.json new file mode 100644 index 000000000000..c448065f1bf7 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-get-by-name.json @@ -0,0 +1,116 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + }, + "status": "identityDisconnected" + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [ + { + "name": "00000000-0000-0000-0000-000000000001", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000001", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "00000000-0000-0000-0000-000000000002", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000002", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-list-all-accounts.json new file mode 100644 index 000000000000..268dbc5279cb --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-list-all-accounts.json @@ -0,0 +1,132 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosomoviesstore" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [ + { + "name": "00000000-0000-0000-0000-000000000001", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000001", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "00000000-0000-0000-0000-000000000002", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000002", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + }, + { + "name": "contosotv", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosotv", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [] + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json new file mode 100644 index 000000000000..51427ab11f63 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json @@ -0,0 +1,112 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [ + { + "name": "00000000-0000-0000-0000-000000000001", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000001", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + } + }, + { + "name": "00000000-0000-0000-0000-000000000002", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Media/videoAnalyzers/contososports/privateEndpointConnections/00000000-0000-0000-0000-000000000002", + "type": "Microsoft.Media/videoAnalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + } + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-update.json new file mode 100644 index 000000000000..c0e6643f1e29 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-accounts-update.json @@ -0,0 +1,90 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-11-01-Preview", + "parameters": { + "tags": { + "key1": "value3" + } + } + }, + "responses": { + "202": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2", + "tag3": "value3" + }, + "properties": { + "provisioningState": "Succeeded", + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ], + "iotHubs": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + }, + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Devices/IotHubs/hub2", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3" + }, + "status": "Ok" + } + ], + "privateEndpointConnections": [] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-result-by-id.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-result-by-id.json new file mode 100644 index 000000000000..8a5f1ea8c8cf --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-result-by-id.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "operationId": "6FBA62C4-99B5-4FF8-9826-FC4744A8864F", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "contosomovies", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Media/videoAnalyzers/contosomovies", + "type": "Microsoft.Media/videoAnalyzers", + "location": "South Central US", + "tags": { + "tag1": "value1", + "tag2": "value2" + }, + "properties": { + "encryption": { + "type": "SystemKey" + }, + "storageAccounts": [ + { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.Storage/storageAccounts/storage1", + "identity": { + "userAssignedIdentity": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2" + } + } + ], + "endpoints": [ + { + "type": "ClientApi", + "endpointUrl": "https://77d7106674e0454eba85e5ede58cedbc.api.southcentralus.videoanalyzer.azure.net" + } + ] + }, + "identity": { + "type": "UserAssigned", + "userAssignedIdentities": { + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id1": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id2": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + }, + "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg/providers/Microsoft.ManagedIdentity/userAssignedIdentities/id3": { + "principalId": "00000000-0000-0000-0000-000000000000", + "clientId": "00000000-0000-0000-0000-000000000000" + } + } + }, + "systemData": { + "createdBy": "fakeapplication@contoso.com", + "createdByType": "Application", + "createdAt": "2021-01-01T00:00:00Z", + "lastModifiedBy": "fakeuser@contoso.com", + "lastModifiedByType": "User", + "lastModifiedAt": "2021-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state-failed.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state-failed.json new file mode 100644 index 000000000000..cfef1d3f8281 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state-failed.json @@ -0,0 +1,24 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "operationId": "D612C429-2526-49D5-961B-885AE11406FD", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/locations/westus/VideoAnalyzerOperationStatuses/D612C429-2526-49D5-961B-885AE11406FD", + "name": "D612C429-2526-49D5-961B-885AE11406FD", + "status": "Failed", + "startTime": "2021-01-01T12:56:36.002812-08:00", + "endTime": "2021-01-01T12:56:36.002812-08:00", + "error": { + "code": "BadRequest", + "message": "Storage account cannot be accessed." + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state.json new file mode 100644 index 000000000000..bed3cb95d2f9 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-non-terminal-state.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "operationId": "D612C429-2526-49D5-961B-885AE11406FD", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/locations/westus/VideoAnalyzerOperationStatuses/D612C429-2526-49D5-961B-885AE11406FD", + "name": "D612C429-2526-49D5-961B-885AE11406FD", + "status": "InProgress", + "startTime": "2021-01-01T12:56:36.002812-08:00", + "endTime": "2021-01-01T12:56:36.002812-08:00" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-terminal-state.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-terminal-state.json new file mode 100644 index 000000000000..79525b2fb052 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-operation-status-by-id-terminal-state.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "operationId": "D612C429-2526-49D5-961B-885AE11406FD", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/locations/westus/VideoAnalyzerOperationStatuses/D612C429-2526-49D5-961B-885AE11406FD", + "name": "D612C429-2526-49D5-961B-885AE11406FD", + "status": "Succeeded", + "startTime": "2021-01-01T12:56:36.002812-08:00", + "endTime": "2021-01-01T12:56:36.002812-08:00" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-delete.json new file mode 100644 index 000000000000..9bf8df98ef4a --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "connectionName1", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-get-by-name.json new file mode 100644 index 000000000000..6c3f93d9cd62 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-get-by-name.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "10000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "name": "10000000-0000-0000-0000-000000000000", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/10000000-0000-0000-0000-000000000000", + "type": "Microsoft.Media/videoanalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/privateEndpointName1" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-list.json new file mode 100644 index 000000000000..86e722a6bdcd --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-list.json @@ -0,0 +1,62 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "10000000-0000-0000-0000-000000000000", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/10000000-0000-0000-0000-000000000000", + "type": "Microsoft.Media/videoanalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description" + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/pe1" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "20000000-0000-0000-0000-000000000000", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/20000000-0000-0000-0000-000000000000", + "type": "Microsoft.Media/videoanalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Pending", + "description": "Test description" + }, + "privateEndpoint": { + "id": "/subscriptions/22222222-2222-2222-2222-222222222222/resourceGroups/reosuceGroup2/providers/Microsoft.Network/privateEndpoints/pe2" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-result-by-id.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-result-by-id.json new file mode 100644 index 000000000000..7f9026b7c42a --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-result-by-id.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "accountName": "contososports", + "name": "6FBA62C4-99B5-4FF8-9826-FC4744A8864F", + "operationId": "10000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "202": {}, + "200": { + "body": { + "name": "10000000-0000-0000-0000-000000000000", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/10000000-0000-0000-0000-000000000000", + "type": "Microsoft.Media/videoanalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "Succeeded", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/privateEndpointName1" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-status-by-id-terminal-state.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-status-by-id-terminal-state.json new file mode 100644 index 000000000000..b366c9363cd5 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-operation-status-by-id-terminal-state.json @@ -0,0 +1,22 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "locationName": "westus", + "accountName": "contososports", + "name": "D612C429-2526-49D5-961B-885AE11406FD", + "operationId": "CDE44A33-DD32-4FFA-A1BC-601DC4D52B03", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/D612C429-2526-49D5-961B-885AE11406FD/operationStatuses/CDE44A33-DD32-4FFA-A1BC-601DC4D52B03", + "name": "CDE44A33-DD32-4FFA-A1BC-601DC4D52B03", + "status": "Succeeded", + "startTime": "2021-01-01T12:56:36.002812-08:00", + "endTime": "2021-01-01T12:56:36.002812-08:00" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-put.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-put.json new file mode 100644 index 000000000000..df0b7c1f925c --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-endpoint-connection-put.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "10000000-0000-0000-0000-000000000000", + "api-version": "2021-11-01-Preview", + "parameters": { + "properties": { + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + } + } + } + }, + "responses": { + "201": { + "body": { + "name": "10000000-0000-0000-0000-000000000000", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateEndpointConnections/10000000-0000-0000-0000-000000000000", + "type": "Microsoft.Media/videoanalyzers/privateEndpointConnections", + "properties": { + "provisioningState": "InProgress", + "privateLinkServiceConnectionState": { + "status": "Approved", + "description": "Test description." + }, + "privateEndpoint": { + "id": "/subscriptions/11111111-1111-1111-1111-111111111111/resourceGroups/reosuceGroup1/providers/Microsoft.Network/privateEndpoints/privateEndpointName1" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-get-by-name.json new file mode 100644 index 000000000000..2752da58c3e4 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-get-by-name.json @@ -0,0 +1,32 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "name": "integration", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "name": "integration", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateLinkResources/integration", + "type": "Microsoft.Media/videoanalyzers/privateLinkResources", + "properties": { + "groupId": "integration", + "requiredMembers": [ + "edgeapi" + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-list.json new file mode 100644 index 000000000000..c020256ec437 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-analyzer-private-link-resources-list.json @@ -0,0 +1,75 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contososports", + "api-version": "2021-11-01-Preview" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "integration", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateLinkResources/integration", + "type": "Microsoft.Media/videoanalyzers/privateLinkResources", + "properties": { + "groupId": "integration", + "requiredMembers": [ + "edgeapi" + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "ingestion", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateLinkResources/ingestion", + "type": "Microsoft.Media/videoanalyzers/privateLinkResources", + "properties": { + "groupId": "ingestion", + "requiredMembers": [ + "devicetunnel" + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "consumption", + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/fabrikam/providers/Microsoft.Media/videoanalyzers/contososports/privateLinkResources/consumption", + "type": "Microsoft.Media/videoanalyzers/privateLinkResources", + "properties": { + "groupId": "consumption", + "requiredMembers": [ + "clientapi", + "rtsptunnel", + "streaming" + ] + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-create.json new file mode 100644 index 000000000000..554c465947c2 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-create.json @@ -0,0 +1,73 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1" + } + } + }, + "responses": { + "201": { + "body": { + "name": "video2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video2", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + }, + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-delete.json new file mode 100644 index 000000000000..8f2efff597e3 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-delete.json @@ -0,0 +1,13 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-get.json new file mode 100644 index 000000000000..cb4c0da7baf5 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-get.json @@ -0,0 +1,39 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-list.json new file mode 100644 index 000000000000..27ba95d80198 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-list.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-11-01-preview", + "$top": "2" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + }, + { + "name": "video2", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video2", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 2", + "description": "Sample Description 2", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-listContentToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-listContentToken.json new file mode 100644 index 000000000000..5c07dd22fe4b --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-listContentToken.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video3", + "api-version": "2021-11-01-preview" + }, + "responses": { + "200": { + "body": { + "expirationDate": "3021-01-23T11:04:49.0526841-08:00", + "token": "testtoken" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-patch.json new file mode 100644 index 000000000000..e59ac9a2a184 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-11-01-preview/examples/video-patch.json @@ -0,0 +1,44 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-11-01-preview", + "parameters": { + "properties": { + "description": "Parking Lot East Entrance" + } + } + }, + "responses": { + "200": { + "body": { + "name": "video1", + "id": "/subscriptions/591e76c3-3e97-44db-879c-3e2b12961b62/resourceGroups/testrg/providers/Microsoft.Media/videoAnalyzers/testaccount2/videos/video1", + "type": "Microsoft.Media/videoAnalyzers/videos", + "properties": { + "title": "Sample Title 1", + "description": "Parking Lot East Entrance", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isInUse": false + }, + "archival": { + "retentionPeriod": "PT12H" + } + }, + "systemData": { + "createdBy": "user@microsoft.com", + "createdByType": "User", + "createdAt": "0001-01-01T00:00:00Z", + "lastModifiedBy": "user@microsoft.com", + "lastModifiedByType": "User", + "lastModifiedAt": "0001-01-01T00:00:00Z" + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/readme.md b/specification/videoanalyzer/resource-manager/readme.md index e3ee73d959c6..97bd0e4e2432 100644 --- a/specification/videoanalyzer/resource-manager/readme.md +++ b/specification/videoanalyzer/resource-manager/readme.md @@ -28,7 +28,32 @@ These are the global settings for the videoanalyzer. title: VideoAnalyzer description: Azure Video Analyzer provides a platform for you to build intelligent video applications that span the edge and the cloud openapi-type: arm -tag: package-2021-05-01-preview +tag: package-preview-2021-11 +``` + +### Suppression + +```yaml +directive: + - from: VideoAnalyzers.json + reason: Patch response is 202. + suppress: LongRunningResponseStatusCode + + - from: VideoAnalyzers.json + reason: Patch response is 202. + suppress: TrackedResourcePatchOperation +``` + +### 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.Media/preview/2021-11-01-preview/EdgeModules.json + - Microsoft.Media/preview/2021-11-01-preview/PipelineTopologies.json + - Microsoft.Media/preview/2021-11-01-preview/VideoAnalyzers.json + - Microsoft.Media/preview/2021-11-01-preview/Videos.json ``` ### Tag: package-2021-05-01-preview @@ -85,5 +110,3 @@ See configuration in [readme.csharp.md](./readme.csharp.md) ## Java See configuration in [readme.java.md](./readme.java.md) - -