diff --git a/custom-words.txt b/custom-words.txt index 6b16633f3fe9..8b2e1e2ac357 100644 --- a/custom-words.txt +++ b/custom-words.txt @@ -5,6 +5,7 @@ AADDS aadiam AADP AATP +aapl abcxyz ABFS ABGRABGR @@ -55,6 +56,7 @@ alertrules alertsmanagement alertstate Alexa +Algo allowlist Alon amazonservices diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json new file mode 100644 index 000000000000..3df4fceb8ff6 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json @@ -0,0 +1,398 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-01-preview" + }, + "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/v2/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/EdgeModuleProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": 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 edge module resources.", + "description": "List all of the existing edge module resources for a given Video Analyzer account.", + "operationId": "EdgeModules_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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." + }, + { + "name": "$orderby", + "in": "query", + "required": false, + "type": "string", + "description": "Specifies the key by which the result collection should be ordered." + } + ], + "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 a specific existing edge module resource in the given Video Analyzer account.", + "operationId": "EdgeModules_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/EdgeModuleEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module to be deleted." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "edgeModuleName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the edge module used to create a new provisioning token." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/ListProvisioningTokenInput" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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-05-01-preview/VideoAnalyzers.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json new file mode 100644 index 000000000000..184c905022b8 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json @@ -0,0 +1,1009 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-01-preview" + }, + "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", + "description": "An operation.", + "required": [ + "name" + ] + }, + "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", + "description": "The details about the associated storage account." + }, + "SyncStorageKeysInput": { + "properties": { + "id": { + "type": "string", + "description": "The ID of the storage account resource." + } + }, + "type": "object", + "description": "The input to the sync storage keys request." + }, + "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 list of endpoints associated with this resource.", + "readOnly": true + }, + "encryption": { + "$ref": "#/definitions/AccountEncryption", + "description": "The account encryption properties." + } + }, + "type": "object", + "description": "Properties of the Video Analyzer account." + }, + "VideoAnalyzerProperties": { + "allOf": [ + { + "$ref": "#/definitions/VideoAnalyzerPropertiesUpdate" + } + ], + "required": [ + "encryption", + "storageAccounts" + ] + }, + "VideoAnalyzer": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/TrackedResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoAnalyzerProperties", + "description": "The properties of the Video Analyzer account.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/systemData", + "description": "The system data of the Video Analyzer account.", + "readOnly": true + }, + "identity": { + "$ref": "#/definitions/VideoAnalyzerIdentity", + "description": "The set of managed identities associated with the Video Analyzer resource." + } + }, + "type": "object", + "description": "A 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", + "description": "The type of the endpoint.", + "enum": [ + "ClientApi" + ], + "x-ms-enum": { + "name": "VideoAnalyzerEndpointType", + "values": [ + { + "value": "ClientApi", + "description": "The client API endpoint." + } + ], + "modelAsString": true + } + } + }, + "type": "object", + "required": [ + "type" + ], + "description": "The endpoint details." + }, + "UserAssignedManagedIdentity": { + "properties": { + "clientId": { + "type": "string", + "description": "The client ID.", + "readOnly": true + }, + "principalId": { + "type": "string", + "description": "The principal ID.", + "readOnly": 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", + "description": "The user assigned managed identity to use when accessing a resource.", + "required": [ + "userAssignedIdentity" + ] + }, + "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", + "description": "The details for accessing the encryption keys in Key Vault.", + "required": [ + "keyIdentifier" + ] + }, + "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", + "description": "Defines how the Video Analyzer account is (optionally) encrypted.", + "required": [ + "type" + ] + }, + "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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "name": "accountName", + "in": "path", + "required": true, + "type": "string", + "description": "The Video Analyzer account name." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzer" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Update a Video Analyzer accounts": { + "$ref": "examples/video-analyzer-accounts-update.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/syncStorageKeys": { + "post": { + "summary": "Synchronizes Storage Account Keys", + "description": "Synchronizes storage account keys for a storage account associated with the Video Analyzer account.", + "operationId": "VideoAnalyzers_SyncStorageKeys", + "responses": { + "200": { + "description": "OK" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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/SyncStorageKeysInput" + }, + "description": "The request parameters." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Synchronizes Storage Account Keys": { + "$ref": "examples/video-analyzer-accounts-sync-storage-keys.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/v2/types.json#/definitions/CheckNameAvailabilityResponse" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "name": "locationName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the location." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/CheckNameAvailabilityRequest" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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": "Lists the Video Analyzer accounts in the specific subscription.", + "operationId": "VideoAnalyzers_ListBySubscription", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoAnalyzerCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "List all Video Analyzer accounts by subscription": { + "$ref": "examples/video-analyzer-accounts-subscription-list-all-accounts.json" + } + } + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json new file mode 100644 index 000000000000..e5b6a6039ddd --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/Videos.json @@ -0,0 +1,1013 @@ +{ + "schemes": [ + "https" + ], + "swagger": "2.0", + "info": { + "title": "Azure Video Analyzer", + "description": "Azure Video Analyzer resource provider API definition.", + "version": "2021-05-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": { + "VideoStreaming": { + "properties": { + "archiveBaseUrl": { + "type": "string", + "description": "Video streaming base URL for the video archive. When present, archived video can be played through the Azure Video Analyzer player. Alternatively, this URL can be used with 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\nMoreover, an ongoing video recording can be played in \"live mode\" with latencies which are approximately double of the chosen video segment length." + } + }, + "type": "object", + "description": "Video streaming holds information about video streaming URLs." + }, + "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." + }, + "isRecording": { + "type": "boolean", + "description": "Value indicating whether or not the video is currently being referenced be an active live 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", + "isRecording" + ], + "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." + }, + "VideoStreamingToken": { + "properties": { + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The streaming token expiration date in ISO8601 format (eg. 2021-01-01T00:00:00Z).", + "readOnly": true, + "x-nullable": false + }, + "token": { + "type": "string", + "description": "The streaming token value to be added to the video streaming URL as the value for a \"token\" query string parameter. The token is specific to a single video.", + "readOnly": true + } + }, + "type": "object", + "description": "Video streaming token grants access to the video streaming URLs which can be used by an compatible HLS or DASH player." + }, + "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" + ], + "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. Finally, 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." + } + ], + "modelAsString": true + }, + "description": "Type of the video archive. Different archive formats provide different capabilities.", + "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 + }, + "streaming": { + "$ref": "#/definitions/VideoStreaming", + "description": "Video streaming holds information about video streaming URLs.", + "readOnly": true + }, + "mediaInfo": { + "$ref": "#/definitions/VideoMediaInfo", + "description": "Contains information about the video and audio content.", + "readOnly": true + } + }, + "type": "object", + "description": "Application level properties for the video resource." + }, + "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/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/VideoProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object", + "description": "The representation of a single video in a Video Analyzer account." + }, + "AccessPolicyEntity": { + "allOf": [ + { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/ProxyResource" + } + ], + "properties": { + "properties": { + "$ref": "#/definitions/AccessPolicyProperties", + "description": "The resource properties.", + "x-ms-client-flatten": true + }, + "systemData": { + "$ref": "../../../../../common-types/resource-management/v1/types.json#/definitions/systemData", + "description": "The system metadata relating to this resource.", + "readOnly": true + } + }, + "type": "object", + "description": "Policy that determines how a video can be accessed." + }, + "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": "List all existing video resources.", + "description": "List all existing video resources in the specified account.", + "operationId": "Videos_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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 a video resource.", + "description": "Retrieves an existing video resource within an account with a given name.", + "operationId": "Videos_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets a video entity.": { + "$ref": "examples/video-get.json" + } + } + }, + "put": { + "summary": "Create or updates a video resource.", + "description": "Creates a new video resource or updates an existing one in an account.", + "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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register video entity.": { + "$ref": "examples/video-create.json" + } + } + }, + "delete": { + "summary": "Deletes a video resource.", + "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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes a video entity.": { + "$ref": "examples/video-delete.json" + } + } + }, + "patch": { + "summary": "Updates the properties of a video resource.", + "description": "Updates individual properties of an existing video resource.", + "operationId": "Videos_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/VideoEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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}/listStreamingToken": { + "post": { + "summary": "Generates a streaming token for video playback.", + "description": "Generates a streaming token used for authenticating video playback.", + "operationId": "Videos_ListStreamingToken", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/VideoStreamingToken" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "videoName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the video to generate a token for playback." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Generate a streaming token for media endpoint authorization.": { + "$ref": "examples/video-listStreamingToken.json" + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/videoAnalyzers/{accountName}/accessPolicies": { + "get": { + "summary": "List access policy resources.", + "description": "List all existing access policy resources for the specified account.", + "operationId": "AccessPolicies_List", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntityCollection" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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 access policy resource.", + "description": "Retrieves an existing access policy resource from an account by name.", + "operationId": "AccessPolicies_Get", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to retrieve." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Gets an access policy entity.": { + "$ref": "examples/access-policy-get.json" + } + } + }, + "put": { + "summary": "Creates or updates an access policy.", + "description": "Creates a new access policy resource or updates an existing one.", + "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/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to create or update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Register access policy entity.": { + "$ref": "examples/access-policy-create.json" + } + } + }, + "delete": { + "summary": "Deletes an access policy.", + "description": "Deletes an existing access policy resource.", + "operationId": "AccessPolicies_Delete", + "responses": { + "200": { + "description": "OK" + }, + "204": { + "description": "NoContent" + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to delete." + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ApiVersionParameter" + } + ], + "x-ms-examples": { + "Deletes an access policy entity.": { + "$ref": "examples/access-policy-delete.json" + } + } + }, + "patch": { + "summary": "Updates an existing access policy.", + "description": "Updates individual properties of an existing access policy resource.", + "operationId": "AccessPolicies_Update", + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + } + }, + "default": { + "description": "Detailed error information.", + "schema": { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/definitions/ErrorResponse" + } + } + }, + "parameters": [ + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/SubscriptionIdParameter" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/types.json#/parameters/ResourceGroupNameParameter" + }, + { + "$ref": "#/parameters/AzureVideoAnalyzerAccountName" + }, + { + "name": "accessPolicyName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the access policy to update." + }, + { + "name": "parameters", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/AccessPolicyEntity" + }, + "description": "The request parameters" + }, + { + "$ref": "../../../../../common-types/resource-management/v2/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-05-01-preview/examples/access-policy-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-create.json new file mode 100644 index 000000000000..cd966deaa343 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-create.json @@ -0,0 +1,146 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview", + "parameters": { + "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", + "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": [ + "audience" + ], + "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==" + } + ] + } + }, + "systemData": {} + } + }, + "201": { + "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": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-delete.json new file mode 100644 index 000000000000..8d1be155a12d --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json new file mode 100644 index 000000000000..cbf61468b5e5 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-get.json @@ -0,0 +1,58 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-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": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json new file mode 100644 index 000000000000..14209f66f313 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-list.json @@ -0,0 +1,107 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-05-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": {} + }, + { + "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": {} + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json new file mode 100644 index 000000000000..2548862b7323 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/access-policy-patch.json @@ -0,0 +1,81 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "accessPolicyName": "accessPolicyName1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "authentication": { + "@type": "#Microsoft.VideoAnalyzer.JwtAuthentication", + "keys": [ + { + "@type": "#Microsoft.VideoAnalyzer.RsaTokenKey", + "alg": "RS256", + "kid": "123", + "n": "YmFzZTY0IQ==", + "e": "ZLFzZTY0IQ==" + }, + { + "@type": "#Microsoft.VideoAnalyzer.EccTokenKey", + "alg": "Updated", + "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": [ + "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": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/accounts-check-name-availability.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/accounts-check-name-availability.json new file mode 100644 index 000000000000..b29ea80bb353 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-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-05-01-preview/examples/edge-modules-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-create.json new file mode 100644 index 000000000000..51bc32b79558 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-01-preview", + "parameters": {} + }, + "responses": { + "201": { + "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" + } + } + }, + "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-05-01-preview/examples/edge-modules-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-delete.json new file mode 100644 index 000000000000..966171c7887e --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-get.json new file mode 100644 index 000000000000..cc8c70490401 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-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-05-01-preview/examples/edge-modules-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-list.json new file mode 100644 index 000000000000..5498003d345b --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-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-05-01-preview/examples/edge-modules-listProvisioningToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-listProvisioningToken.json new file mode 100644 index 000000000000..40e6edc58e74 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/edge-modules-listProvisioningToken.json @@ -0,0 +1,20 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "edgeModuleName": "edgeModule1", + "api-version": "2021-05-01-preview", + "parameters": { + "expirationDate": "3021-01-23T11:04:49.0526841-08:00" + } + }, + "responses": { + "200": { + "body": { + "expirationDate": "3021-01-23T19:04:49.0526841+00:00", + "token": "testtoken" + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json new file mode 100644 index 000000000000..33baf18c9c17 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/operations-list-all.json @@ -0,0 +1,1269 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-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/mediaGraphs/read", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Read Media Graph", + "description": "Read any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/write", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Create or Update Media Graph", + "description": "Create or Update any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/delete", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Delete Media Graph", + "description": "Delete any Media Graph" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/start/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Start Media Graph Operation", + "description": "Start any Media Graph Operation" + } + }, + { + "name": "Microsoft.Media/mediaservices/mediaGraphs/stop/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Media Graph", + "operation": "Stop Media Graph Operation", + "description": "Stop any Media Graph Operation" + } + }, + { + "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": "Write a Video Analyzer Account", + "description": "Write 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/syncStorageKeys/action", + "display": { + "provider": "Microsoft Media Services", + "resource": "Video Analyzer Account", + "operation": "Sync storage keys", + "description": "Sync the storage keys of an attached storage account" + } + }, + { + "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-05-01-preview/examples/video-analyzer-accounts-create-or-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-create-or-update.json new file mode 100644 index 000000000000..cf4c87322447 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-create-or-update.json @@ -0,0 +1,150 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-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" + } + } + ] + }, + "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": { + "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" + } + } + }, + "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-05-01-preview/examples/video-analyzer-accounts-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-delete.json new file mode 100644 index 000000000000..65769c206509 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-01-preview" + }, + "responses": { + "200": {}, + "204": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json new file mode 100644 index 000000000000..bbce91ae3c91 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-get-by-name.json @@ -0,0 +1,67 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-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": { + "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" + } + ] + }, + "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-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json new file mode 100644 index 000000000000..d6734e1b630e --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-list-all-accounts.json @@ -0,0 +1,63 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-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": { + "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" + } + } + ] + }, + "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-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json new file mode 100644 index 000000000000..66a71f6ccf37 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-subscription-list-all-accounts.json @@ -0,0 +1,69 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "api-version": "2021-05-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": { + "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-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json new file mode 100644 index 000000000000..6f150aa14789 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-sync-storage-keys.json @@ -0,0 +1,14 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview", + "parameters": { + "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/contoso/providers/Microsoft.Storage/storageAccounts/contosotvstore" + } + }, + "responses": { + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json new file mode 100644 index 000000000000..4f6ea5587b8f --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-analyzer-accounts-update.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "resourceGroupName": "contoso", + "accountName": "contosotv", + "api-version": "2021-05-01-preview", + "parameters": { + "tags": { + "key1": "value3" + } + } + }, + "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", + "tag3": "value3" + }, + "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-05-01-preview/examples/video-create.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-create.json new file mode 100644 index 000000000000..22f26ae909c3 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-create.json @@ -0,0 +1,53 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-01-preview", + "parameters": { + "properties": { + "title": "Sample Title 1", + "description": "Sample Description 1" + } + } + }, + "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, + "isRecording": false + } + }, + "systemData": {} + } + }, + "201": { + "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, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-delete.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-delete.json new file mode 100644 index 000000000000..0340aa53c107 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-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-05-01-preview" + }, + "responses": { + "204": {}, + "200": {} + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json new file mode 100644 index 000000000000..50140bbda84a --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-get.json @@ -0,0 +1,29 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-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, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json new file mode 100644 index 000000000000..ea0bd2e3fff8 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-list.json @@ -0,0 +1,49 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "api-version": "2021-05-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, + "isRecording": false + } + }, + "systemData": {} + }, + { + "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, + "isRecording": false + } + }, + "systemData": {} + } + ] + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json new file mode 100644 index 000000000000..b08df104edce --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-listStreamingToken.json @@ -0,0 +1,17 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video3", + "api-version": "2021-05-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-05-01-preview/examples/video-patch.json b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-patch.json new file mode 100644 index 000000000000..8275c414ee32 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/Microsoft.Media/preview/2021-05-01-preview/examples/video-patch.json @@ -0,0 +1,34 @@ +{ + "parameters": { + "subscriptionId": "591e76c3-3e97-44db-879c-3e2b12961b62", + "resourceGroupName": "testrg", + "accountName": "testaccount2", + "videoName": "video1", + "api-version": "2021-05-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": "Sample Description 1", + "type": "Archive", + "flags": { + "canStream": false, + "hasData": false, + "isRecording": false + } + }, + "systemData": {} + } + } + } +} diff --git a/specification/videoanalyzer/resource-manager/readme.az.md b/specification/videoanalyzer/resource-manager/readme.az.md new file mode 100644 index 000000000000..8b325b8420fa --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.az.md @@ -0,0 +1,28 @@ +## AZ + +These settings apply only when `--az` is specified on the command line. + +For new Resource Provider. It is highly recommended to onboard Azure CLI extensions. There's no differences in terms of customer usage. + +``` yaml $(az) && $(target-mode) != 'core' +az: + extensions: videoanalyzer + namespace: azure.mgmt.videoanalyzer + package-name: azure-mgmt-videoanalyzer +az-output-folder: $(azure-cli-extension-folder)/src/videoanalyzer +python-sdk-output-folder: "$(az-output-folder)/azext_videoanalyzer/vendored_sdks/videoanalyzer" +# add additional configuration here specific for Azure CLI +# refer to the faq.md for more details +``` + + + +This is for command modules that already in azure cli main repo. +``` yaml $(az) && $(target-mode) == 'core' +az: + extensions: videoanalyzer + namespace: azure.mgmt.videoanalyzer + package-name: azure-mgmt-videoanalyzer +az-output-folder: $(azure-cli-folder)/src/azure-cli/azure/cli/command_modules/videoanalyzer +python-sdk-output-folder: "$(az-output-folder)/vendored_sdks/videoanalyzer" +``` \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.azureresourceschema.md b/specification/videoanalyzer/resource-manager/readme.azureresourceschema.md new file mode 100644 index 000000000000..bea4c0e6d393 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.azureresourceschema.md @@ -0,0 +1,25 @@ +## AzureResourceSchema + +These settings apply only when `--azureresourceschema` is specified on the command line. + +### AzureResourceSchema multi-api + +``` yaml $(azureresourceschema) && $(multiapi) +batch: + - tag: schema-videoanalyzer-2021-05-01-preview + +``` + +Please also specify `--azureresourceschema-folder=`. + +### Tag: schema-videoanalyzer-2021-05-01-preview and azureresourceschema + +``` yaml $(tag) == 'schema-videoanalyzer-2021-05-01-preview' && $(azureresourceschema) +output-folder: $(azureresourceschema-folder)/schemas + +# all the input files in this apiVersion +input-file: + - Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json + - Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json + - Microsoft.Media/preview/2021-05-01-preview/Videos.json +``` diff --git a/specification/videoanalyzer/resource-manager/readme.cli.md b/specification/videoanalyzer/resource-manager/readme.cli.md new file mode 100644 index 000000000000..c6cf6ad37ea4 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.cli.md @@ -0,0 +1 @@ +## CLI Common Settings for all the command line tools \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.csharp.md b/specification/videoanalyzer/resource-manager/readme.csharp.md new file mode 100644 index 000000000000..8dcd20919d9d --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.csharp.md @@ -0,0 +1,14 @@ +## C + +These settings apply only when `--csharp` is specified on the command line. +Please also specify `--csharp-sdks-folder=`. + +```yaml $(csharp) +csharp: + azure-arm: true + license-header: MICROSOFT_MIT_NO_VERSION + payload-flattening-threshold: 2 + clear-output-folder: true + namespace: Microsoft.Azure.Management.VideoAnalyzer + output-folder: $(csharp-sdks-folder)/videoanalyzer/Microsoft.Azure.Management.VideoAnalyzer/src/Generated +``` diff --git a/specification/videoanalyzer/resource-manager/readme.go.md b/specification/videoanalyzer/resource-manager/readme.go.md new file mode 100644 index 000000000000..64c3c0f3e35f --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.go.md @@ -0,0 +1,26 @@ +## Go + +These settings apply only when `--go` is specified on the command line. + +```yaml $(go) +go: + license-header: MICROSOFT_APACHE_NO_VERSION + namespace: videoanalyzer + clear-output-folder: true +``` + +### Go multi-api + +``` yaml $(go) && $(multiapi) +batch: + - tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview and go + +These settings apply only when `--tag=package-2021-05-01-preview --go` is specified on the command line. +Please also specify `--go-sdk-folder=`. + +```yaml $(tag) == 'package-2021-05-01-preview' && $(go) +output-folder: $(go-sdk-folder)/services/preview/$(namespace)/mgmt/2021-05-01-preview/$(namespace) +``` diff --git a/specification/videoanalyzer/resource-manager/readme.java.md b/specification/videoanalyzer/resource-manager/readme.java.md new file mode 100644 index 000000000000..d22afaac06a4 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.java.md @@ -0,0 +1,33 @@ +## Java + +These settings apply only when `--java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(java) +azure-arm: true +fluent: true +namespace: com.microsoft.azure.management.videoanalyzer +license-header: MICROSOFT_MIT_NO_CODEGEN +payload-flattening-threshold: 2 +output-folder: $(azure-libraries-for-java-folder)/azure-mgmt-videoanalyzer +``` + +### Java multi-api + +``` yaml $(java) && $(multiapi) +batch: + - tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview and java + +These settings apply only when `--tag=package-2021-05-01-preview --java` is specified on the command line. +Please also specify `--azure-libraries-for-java-folder=`. + +``` yaml $(tag) == 'package-2021-05-01-preview' && $(java) && $(multiapi) +java: + namespace: com.microsoft.azure.management.videoanalyzer.v2021_05_01_preview + output-folder: $(azure-libraries-for-java-folder)/sdk/videoanalyzer/mgmt-v2021_05_01_preview +regenerate-manager: true +generate-interface: true +``` \ No newline at end of file diff --git a/specification/videoanalyzer/resource-manager/readme.md b/specification/videoanalyzer/resource-manager/readme.md new file mode 100644 index 000000000000..7b5f9ab2be71 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.md @@ -0,0 +1,90 @@ +# videoanalyzer + +> see https://aka.ms/autorest + +This is the AutoRest configuration file for videoanalyzer. + +## Getting Started + +To build the SDKs for My API, simply install AutoRest via `npm` (`npm install -g autorest`) and then run: + +> `autorest readme.md` + +To see additional help and options, run: + +> `autorest --help` + +For other options on installation see [Installing AutoRest](https://aka.ms/autorest/install) on the AutoRest github page. + +--- + +## Configuration + +### Basic Information + +These are the global settings for the videoanalyzer. + +```yaml +openapi-type: arm +tag: package-2021-05-01-preview +``` + +### Tag: package-2021-05-01-preview + +These settings apply only when `--tag=package-2021-05-01-preview` is specified on the command line. + +```yaml $(tag) == 'package-2021-05-01-preview' +input-file: + - Microsoft.Media/preview/2021-05-01-preview/VideoAnalyzers.json + - Microsoft.Media/preview/2021-05-01-preview/EdgeModules.json + - Microsoft.Media/preview/2021-05-01-preview/Videos.json +``` + +--- + +# Code Generation + +## Swagger to SDK + +This section describes what SDK should be generated by the automatic system. +This is not used by Autorest itself. + +```yaml $(swagger-to-sdk) +swagger-to-sdk: + - repo: azure-sdk-for-python-track2 + - repo: azure-sdk-for-java + - repo: azure-sdk-for-go + - repo: azure-sdk-for-js + - repo: azure-sdk-for-java + - repo: azure-resource-manager-schemas + after_scripts: + - node sdkauto_afterscript.js videoanalyzer/resource-manager + - repo: azure-cli-extensions +``` +## Az + +See configuration in [readme.az.md](./readme.az.md) + +## Go + +See configuration in [readme.go.md](./readme.go.md) + +## Python + +See configuration in [readme.python.md](./readme.python.md) + +## TypeScript + +See configuration in [readme.typescript.md](./readme.typescript.md) + +## CSharp + +See configuration in [readme.csharp.md](./readme.csharp.md) + +## Java + +See configuration in [readme.java.md](./readme.java.md) + +## AzureResourceSchema + +See configuration in [readme.azureresourceschema.md](./readme.azureresourceschema.md) diff --git a/specification/videoanalyzer/resource-manager/readme.python.md b/specification/videoanalyzer/resource-manager/readme.python.md new file mode 100644 index 000000000000..dda81cc659a9 --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.python.md @@ -0,0 +1,22 @@ +## Python + +These settings apply only when `--python` is specified on the command line. +Please also specify `--python-sdks-folder=`. + +``` yaml $(track2) +azure-arm: true +license-header: MICROSOFT_MIT_NO_VERSION +package-name: azure-mgmt-videoanalyzer +no-namespace-folders: true +package-version: 1.0.0b1 +``` + +``` yaml $(python-mode) == 'update' && $(track2) +no-namespace-folders: true +output-folder: $(python-sdks-folder)/videoanalyzer/azure-mgmt-videoanalyzer/azure/mgmt/videoanalyzer +``` + +``` yaml $(python-mode) == 'create' && $(track2) +basic-setup-py: true +output-folder: $(python-sdks-folder)/videoanalyzer/azure-mgmt-videoanalyzer +``` diff --git a/specification/videoanalyzer/resource-manager/readme.typescript.md b/specification/videoanalyzer/resource-manager/readme.typescript.md new file mode 100644 index 000000000000..222aca9a09bc --- /dev/null +++ b/specification/videoanalyzer/resource-manager/readme.typescript.md @@ -0,0 +1,14 @@ +## TypeScript + +These settings apply only when `--typescript` is specified on the command line. +Please also specify `--typescript-sdks-folder=`. + +``` yaml $(typescript) +typescript: + azure-arm: true + package-name: "@azure/arm-videoanalyzer" + output-folder: "$(typescript-sdks-folder)/sdk/videoanalyzer/arm-videoanalyzer" + payload-flattening-threshold: 1 + clear-output-folder: true + generate-metadata: true +```