schemes: - https swagger: '2.0' info: title: Microsoft Azure Azure Media Services description: This Swagger was generated by the API Framework. version: 2018-06-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: TrackPropertyCondition: properties: property: type: string enum: - Unknown - FourCC x-ms-enum: name: TrackPropertyType values: - value: Unknown description: Unknown track property - value: FourCC description: Track FourCC modelAsExtensible: true description: Track property type operation: type: string enum: - Unknown - Equal x-ms-enum: name: TrackPropertyCompareOperation values: - value: Unknown description: Unknown track property compare operation - value: Equal description: Equal operation modelAsExtensible: true description: Track property condition operation value: type: string description: Track property value type: object required: - property - operation description: Class to specify one track property condition TrackSelection: properties: trackSelections: type: array items: $ref: '#/definitions/TrackPropertyCondition' description: >- TrackSelections is a track property condition list which can specify track(s) type: object description: Class to select a track DefaultKey: properties: label: type: string description: >- Label can be used to specify Content Key when creating a Streaming Locator policyName: type: string description: Policy used by Default Key type: object description: >- Class to specify properties of default content key for each encryption scheme StreamingPolicyContentKey: properties: label: type: string description: >- Label can be used to specify Content Key when creating a Streaming Locator policyName: type: string description: Policy used by Content Key tracks: type: array items: $ref: '#/definitions/TrackSelection' description: Tracks which use this content key type: object description: Class to specify properties of content key StreamingPolicyContentKeys: properties: defaultKey: $ref: '#/definitions/DefaultKey' description: Default content key for an encryption scheme keyToTrackMappings: type: array items: $ref: '#/definitions/StreamingPolicyContentKey' description: Representing tracks needs separate content key type: object description: Class to specify properties of all content keys in Streaming Policy StreamingPolicyPlayReadyConfiguration: properties: customLicenseAcquisitionUrlTemplate: type: string description: >- The template for a customer service to deliver keys to end users. Not needed when using Azure Media Services for issuing keys. playReadyCustomAttributes: type: string description: Custom attributes for PlayReady type: object description: Class to specify configurations of PlayReady in Streaming Policy StreamingPolicyWidevineConfiguration: properties: customLicenseAcquisitionUrlTemplate: type: string description: >- The template for a customer service to deliver keys to end users. Not needed when using Azure Media Services for issuing keys. type: object description: Class to specify configurations of Widevine in Streaming Policy StreamingPolicyFairPlayConfiguration: properties: customLicenseAcquisitionUrlTemplate: type: string description: >- The template for a customer service to deliver keys to end users. Not needed when using Azure Media Services for issuing keys. allowPersistentLicense: type: boolean description: All license to be persistent or not type: object required: - allowPersistentLicense description: Class to specify configurations of FairPlay in Streaming Policy CbcsDrmConfiguration: properties: fairPlay: $ref: '#/definitions/StreamingPolicyFairPlayConfiguration' description: FairPlay configurations playReady: $ref: '#/definitions/StreamingPolicyPlayReadyConfiguration' description: PlayReady configurations widevine: $ref: '#/definitions/StreamingPolicyWidevineConfiguration' description: Widevine configurations type: object description: >- Class to specify DRM configurations of CommonEncryptionCbcs scheme in Streaming Policy CencDrmConfiguration: properties: playReady: $ref: '#/definitions/StreamingPolicyPlayReadyConfiguration' description: PlayReady configurations widevine: $ref: '#/definitions/StreamingPolicyWidevineConfiguration' description: Widevine configurations type: object description: >- Class to specify DRM configurations of CommonEncryptionCenc scheme in Streaming Policy EnabledProtocols: properties: download: type: boolean description: Enable Download protocol or not dash: type: boolean description: Enable DASH protocol or not hls: type: boolean description: Enable HLS protocol or not smoothStreaming: type: boolean description: Enable SmoothStreaming protocol or not type: object required: - download - dash - hls - smoothStreaming description: Class to specify which protocols are enabled NoEncryption: properties: enabledProtocols: $ref: '#/definitions/EnabledProtocols' description: Representing supported protocols type: object description: Class for NoEncryption scheme EnvelopeEncryption: properties: enabledProtocols: $ref: '#/definitions/EnabledProtocols' description: Representing supported protocols clearTracks: type: array items: $ref: '#/definitions/TrackSelection' description: Representing which tracks should not be encrypted contentKeys: $ref: '#/definitions/StreamingPolicyContentKeys' description: >- Representing default content key for each encryption scheme and separate content keys for specific tracks customKeyAcquisitionUrlTemplate: type: string description: >- KeyAcquisitionUrlTemplate is used to point to user specified service to delivery content keys type: object description: Class for EnvelopeEncryption encryption scheme CommonEncryptionCenc: properties: enabledProtocols: $ref: '#/definitions/EnabledProtocols' description: Representing supported protocols clearTracks: type: array items: $ref: '#/definitions/TrackSelection' description: Representing which tracks should not be encrypted contentKeys: $ref: '#/definitions/StreamingPolicyContentKeys' description: >- Representing default content key for each encryption scheme and separate content keys for specific tracks drm: $ref: '#/definitions/CencDrmConfiguration' description: Configuration of DRMs for CommonEncryptionCenc encryption scheme type: object description: Class for envelope encryption scheme CommonEncryptionCbcs: properties: enabledProtocols: $ref: '#/definitions/EnabledProtocols' description: Representing supported protocols clearTracks: type: array items: $ref: '#/definitions/TrackSelection' description: Representing which tracks should not be encrypted contentKeys: $ref: '#/definitions/StreamingPolicyContentKeys' description: >- Representing default content key for each encryption scheme and separate content keys for specific tracks drm: $ref: '#/definitions/CbcsDrmConfiguration' description: Configuration of DRMs for current encryption scheme type: object description: Class for CommonEncryptionCbcs encryption scheme StreamingPolicyProperties: properties: created: type: string format: date-time description: Creation time of Streaming Policy readOnly: true x-nullable: false defaultContentKeyPolicyName: type: string description: Default ContentKey used by current Streaming Policy envelopeEncryption: $ref: '#/definitions/EnvelopeEncryption' description: Configuration of EnvelopeEncryption commonEncryptionCenc: $ref: '#/definitions/CommonEncryptionCenc' description: Configuration of CommonEncryptionCenc commonEncryptionCbcs: $ref: '#/definitions/CommonEncryptionCbcs' description: Configuration of CommonEncryptionCbcs noEncryption: $ref: '#/definitions/NoEncryption' description: Configurations of NoEncryption type: object description: Class to specify properties of Streaming Policy StreamingPolicy: allOf: - $ref: >- ../../../Accounts/preview/2018-06-01-preview/Common.json#/definitions/ProxyResource properties: properties: $ref: '#/definitions/StreamingPolicyProperties' x-ms-client-flatten: true type: object description: A Streaming Policy resource StreamingLocatorContentKey: properties: id: type: string format: uuid description: ID of Content Key type: type: string enum: - CommonEncryptionCenc - CommonEncryptionCbcs - EnvelopeEncryption x-ms-enum: name: StreamingLocatorContentKeyType values: - value: CommonEncryptionCenc description: Common Encryption using CENC - value: CommonEncryptionCbcs description: Common Encryption using CBCS - value: EnvelopeEncryption description: Envelope Encryption modelAsExtensible: true description: Encryption type of Content Key readOnly: true x-nullable: false label: type: string description: Label of Content Key value: type: string description: Value of Content Key policyName: type: string description: ContentKeyPolicy used by Content Key readOnly: true tracks: type: array items: $ref: '#/definitions/TrackSelection' description: Tracks which use this Content Key type: object required: - id description: Class for content key in Streaming Locator StreamingPath: properties: streamingProtocol: type: string enum: - Hls - Dash - SmoothStreaming - Download x-ms-enum: name: StreamingPolicyStreamingProtocol values: - value: Hls description: HLS protocol - value: Dash description: DASH protocol - value: SmoothStreaming description: SmoothStreaming protocol - value: Download description: Download protocol modelAsExtensible: true description: Streaming protocol encryptionScheme: type: string enum: - NoEncryption - EnvelopeEncryption - CommonEncryptionCenc - CommonEncryptionCbcs x-ms-enum: name: EncryptionScheme values: - value: NoEncryption description: NoEncryption scheme - value: EnvelopeEncryption description: EnvelopeEncryption scheme - value: CommonEncryptionCenc description: CommonEncryptionCenc scheme - value: CommonEncryptionCbcs description: CommonEncryptionCbcs scheme modelAsExtensible: true description: Encryption scheme paths: type: array items: type: string description: Streaming paths for each protocol and encryptionScheme pair type: object required: - streamingProtocol - encryptionScheme description: Class of paths for streaming StreamingLocatorProperties: properties: assetName: type: string description: Asset Name created: type: string format: date-time description: Creation time of Streaming Locator readOnly: true x-nullable: false startTime: type: string format: date-time description: StartTime of Streaming Locator endTime: type: string format: date-time description: EndTime of Streaming Locator streamingLocatorId: type: string format: uuid description: StreamingLocatorId of Streaming Locator streamingPolicyName: type: string description: >- Streaming policy name used by this streaming locator. Either specify the name of streaming policy you created or use one of the predefined streaming polices. The predefined streaming policies available are: 'Predefined_DownloadOnly', 'Predefined_ClearStreamingOnly', 'Predefined_DownloadAndClearStreaming', 'Predefined_ClearKey', 'Predefined_SecureStreaming' and 'Predefined_SecureStreamingWithFairPlay' defaultContentKeyPolicyName: type: string description: Default ContentKeyPolicy used by this Streaming Locator contentKeys: type: array items: $ref: '#/definitions/StreamingLocatorContentKey' description: ContentKeys used by this Streaming Locator alternativeMediaId: type: string description: >- An Alternative Media Identifier associated with the StreamingLocator. This identifier can be used to distinguish different StreamingLocators for the same Asset for authorization purposes in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the StreamingPolicy specified in the StreamingPolicyName field. type: object required: - assetName - streamingPolicyName description: Class to specify properties of Streaming Locator ListContentKeysResponse: properties: contentKeys: type: array items: $ref: '#/definitions/StreamingLocatorContentKey' description: ContentKeys used by current Streaming Locator type: object description: Class of response for listContentKeys action ListPathsResponse: properties: streamingPaths: type: array items: $ref: '#/definitions/StreamingPath' description: Streaming Paths supported by current Streaming Locator downloadPaths: type: array items: type: string description: Download Paths supported by current Streaming Locator type: object description: Class of response for listPaths action StreamingLocator: allOf: - $ref: >- ../../../Accounts/preview/2018-06-01-preview/Common.json#/definitions/ProxyResource properties: properties: $ref: '#/definitions/StreamingLocatorProperties' x-ms-client-flatten: true type: object description: A Streaming Locator resource ODataError: properties: code: type: string description: A language-independent error name. message: type: string description: The error message. target: type: string description: >- The target of the error (for example, the name of the property in error). details: type: array items: $ref: '#/definitions/ODataError' description: The error details. type: object description: Information about an error. ApiError: properties: error: $ref: '#/definitions/ODataError' description: The error properties. type: object description: The API error. StreamingPolicyCollection: properties: value: type: array items: $ref: '#/definitions/StreamingPolicy' description: A collection of StreamingPolicy items. '@odata.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 StreamingPolicy items. StreamingLocatorCollection: properties: value: type: array items: $ref: '#/definitions/StreamingLocator' description: A collection of StreamingLocator items. '@odata.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 StreamingLocator items. paths: ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingPolicies : get: summary: Microsoft Azure List Streaming Policies description: Lists the Streaming Policies in the account operationId: microsoftAzureStreamingpoliciesList responses: '200': description: OK schema: $ref: '#/definitions/StreamingPolicyCollection' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - $ref: '#/parameters/ApiVersion' - name: $filter in: query required: false type: string description: Restricts the set of items returned. - name: $top in: query required: false type: integer 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: '@odata.nextLink' x-ms-odata: '#/definitions/StreamingPolicy' x-ms-examples: Lists Streaming Policies: $ref: examples/streaming-policies-list.json tags: - Subscriptions ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingPolicies/{streamingPolicyName} : get: summary: Microsoft Azure Get A Streaming Policy description: Get the details of a Streaming Policy in the Media Services account operationId: microsoftAzureStreamingpoliciesGet responses: '200': description: OK schema: $ref: '#/definitions/StreamingPolicy' '404': description: NotFound default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingPolicyName in: path required: true type: string description: The Streaming Policy name. - $ref: '#/parameters/ApiVersion' x-ms-examples: Get a Streaming Policy by name: $ref: examples/streaming-policy-get-by-name.json tags: - Subscriptions put: summary: Microsoft Azure Create A Streaming Policy description: Create a Streaming Policy in the Media Services account operationId: microsoftAzureStreamingpoliciesCreate responses: '201': description: Created schema: $ref: '#/definitions/StreamingPolicy' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingPolicyName in: path required: true type: string description: The Streaming Policy name. - name: parameters in: body required: true schema: $ref: '#/definitions/StreamingPolicy' description: The request parameters - $ref: '#/parameters/ApiVersion' x-ms-examples: Creates a Streaming Policy with clear streaming: $ref: examples/streaming-policies-create-clear.json Creates a Streaming Policy with envelopeEncryption only: $ref: examples/streaming-policies-create-envelopeEncryption-only.json Creates a Streaming Policy with commonEncryptionCenc only: $ref: examples/streaming-policies-create-commonEncryptionCenc-only.json Creates a Streaming Policy with commonEncryptionCbcs only: $ref: examples/streaming-policies-create-commonEncryptionCbcs-only.json Creates a Streaming Policy with secure streaming: $ref: examples/streaming-policies-create-secure-streaming.json tags: - Subscriptions delete: summary: Microsoft Azure Delete A Streaming Policy description: Deletes a Streaming Policy in the Media Services account operationId: microsoftAzureStreamingpoliciesDelete responses: '200': description: OK '204': description: NoContent default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingPolicyName in: path required: true type: string description: The Streaming Policy name. - $ref: '#/parameters/ApiVersion' x-ms-examples: Delete a Streaming Policy: $ref: examples/streaming-policies-delete.json tags: - Subscriptions ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingLocators : get: summary: Microsoft Azure List Streaming Locators description: Lists the Streaming Locators in the account operationId: microsoftAzureStreaminglocatorsList responses: '200': description: OK schema: $ref: '#/definitions/StreamingLocatorCollection' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - $ref: '#/parameters/ApiVersion' - name: $filter in: query required: false type: string description: Restricts the set of items returned. - name: $top in: query required: false type: integer 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: '@odata.nextLink' x-ms-odata: '#/definitions/StreamingLocator' x-ms-examples: Lists Streaming Locators: $ref: examples/streaming-locators-list.json tags: - Subscriptions ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingLocators/{streamingLocatorName} : get: summary: Microsoft Azure Get A Streaming Locator description: Get the details of a Streaming Locator in the Media Services account operationId: microsoftAzureStreaminglocatorsGet responses: '200': description: OK schema: $ref: '#/definitions/StreamingLocator' '404': description: NotFound default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingLocatorName in: path required: true type: string description: The Streaming Locator name. - $ref: '#/parameters/ApiVersion' x-ms-examples: Get a Streaming Locator by name: $ref: examples/streaming-locators-get-by-name.json tags: - Subscriptions put: summary: Microsoft Azure Create A Streaming Locator description: Create a Streaming Locator in the Media Services account operationId: microsoftAzureStreaminglocatorsCreate responses: '201': description: Created schema: $ref: '#/definitions/StreamingLocator' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingLocatorName in: path required: true type: string description: The Streaming Locator name. - name: parameters in: body required: true schema: $ref: '#/definitions/StreamingLocator' description: The request parameters - $ref: '#/parameters/ApiVersion' x-ms-examples: Creates a Streaming Locator with clear streaming: $ref: examples/streaming-locators-create-clear.json Creates a Streaming Locator with secure streaming: $ref: examples/streaming-locators-create-secure.json Creates a Streaming Locator with user defined content keys: $ref: >- examples/streaming-locators-create-secure-userDefinedContentKeys.json tags: - Subscriptions delete: summary: Microsoft Azure Delete A Streaming Locator description: Deletes a Streaming Locator in the Media Services account operationId: microsoftAzureStreaminglocatorsDelete responses: '200': description: OK '204': description: NoContent default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingLocatorName in: path required: true type: string description: The Streaming Locator name. - $ref: '#/parameters/ApiVersion' x-ms-examples: Delete a Streaming Locator: $ref: examples/streaming-locators-delete.json tags: - Subscriptions ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingLocators/{streamingLocatorName}/listContentKeys : post: summary: Microsoft Azure List Content Keys description: List Content Keys used by this Streaming Locator operationId: microsoftAzureStreaminglocatorsListcontentkeys responses: '200': description: OK schema: $ref: '#/definitions/ListContentKeysResponse' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingLocatorName in: path required: true type: string description: The Streaming Locator name. - $ref: '#/parameters/ApiVersion' x-ms-examples: List Content Keys: $ref: examples/streaming-locators-list-content-keys.json tags: - Subscriptions ? /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Media/mediaServices/{accountName}/streamingLocators/{streamingLocatorName}/listPaths : post: summary: Microsoft Azure List Paths description: List Paths supported by this Streaming Locator operationId: microsoftAzureStreaminglocatorsListpaths responses: '200': description: OK schema: $ref: '#/definitions/ListPathsResponse' default: description: Detailed error information. schema: $ref: '#/definitions/ApiError' parameters: - $ref: '#/parameters/SubscriptionId' - $ref: '#/parameters/ResourceGroupName' - $ref: '#/parameters/MediaServicesAccountName' - name: streamingLocatorName in: path required: true type: string description: The Streaming Locator name. - $ref: '#/parameters/ApiVersion' x-ms-examples: List Paths which has streaming paths only: $ref: examples/streaming-locators-list-paths-streaming-only.json List Paths which has streaming paths and download paths: $ref: examples/streaming-locators-list-paths-streaming-and-download.json tags: - Subscriptions parameters: SubscriptionId: name: subscriptionId in: path required: true type: string description: The unique identifier for a Microsoft Azure subscription. ResourceGroupName: name: resourceGroupName in: path required: true type: string description: The name of the resource group within the Azure subscription. x-ms-parameter-location: method MediaServicesAccountName: name: accountName in: path required: true type: string description: The Media Services account name. x-ms-parameter-location: method ApiVersion: name: api-version in: query required: true type: string description: The Version of the API to be used with the client request. tags: - name: Subscriptions