# ContentKeyPolicyPlayReadyLicense

The PlayReady license

## allowTestDevices  
**Type**: boolean  
**Required**: Yes  
A flag indicating whether test devices can use the license.

## beginDate  
**Type**: string  
**Format**: date-time  
**Required**: No  
The begin date of license.

## contentKeyLocation  
**Type**: object  
**Required**: Yes  
The content key location.

### Discriminated by `@odata.type`. Select one variant:

#### Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader  
**Type**: object  
[ContentKeyPolicyPlayReadyContentEncryptionKeyFromHeader](https://docs.mediakind.com/api-reference/media-api/schemas/contentkeypolicyplayreadycontentencryptionkeyfromheader)  
Specifies that the content key ID is in the PlayReady header.

- **@odata.type**: string  
  **Required**: Yes  
  The discriminator for derived types.

#### Microsoft.Media.ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier  
**Type**: object  
[ContentKeyPolicyPlayReadyContentEncryptionKeyFromKeyIdentifier](https://docs.mediakind.com/api-reference/media-api/schemas/contentkeypolicyplayreadycontentencryptionkeyfromkeyidentifier)  
Specifies that the content key ID is specified in the PlayReady configuration.

- **@odata.type**: string  
  **Required**: Yes  
  The discriminator for derived types.

## keyId  
**Type**: string or null  
**Required**: Yes  
**Format**: uuid  
The content key ID.

## contentType  
**Type**: enum  
**Required**: Yes  
The PlayReady content type.

**Allowed values**: Unknown, Unspecified, UltraVioletDownload, UltraVioletStreaming

## expirationDate  
**Type**: string  
**Optional**: Yes  
**Format**: date-time  
The expiration date of license.

## gracePeriod  
**Type**: string  
**Optional**: Yes  
**Format**: duration  
The grace period of license.

## licenseType  
**Type**: enum  
**Required**: Yes  
The license type.

**Allowed values**: Unknown, NonPersistent, Persistent

## playRight  
**Type**: object  
[ContentKeyPolicyPlayReadyPlayRight](https://docs.mediakind.com/api-reference/media-api/schemas/contentkeypolicyplayreadyplayright)  
**Optional**
The license PlayRight.

### Properties

- **agcAndColorStripeRestriction**: integer  
  **Optional**: Yes  
  **Range**: 0 to 3  
  Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive.

- **allowPassingVideoContentToUnknownOutput**: enum  
  **Required**: Yes  
  Configures Unknown output handling settings of the license.

**Allowed values**: Unknown, NotAllowed, Allowed, AllowedWithVideoConstriction

- **analogVideoOpl**: integer  
  **Optional**: Yes  
  Specifies the output protection level for compressed digital audio.

- **compressedDigitalAudioOpl**: integer  
  **Optional**: Yes  
  Specifies the output protection level for compressed digital audio.

- **compressedDigitalVideoOpl**: integer  
  **Optional**: Yes  
  Specifies the output protection level for compressed digital video.

- **digitalVideoOnlyContentRestriction**: boolean  
  **Required**: Yes  
  Enables the Image Constraint For Analog Component Video Restriction in the license.

- **explicitAnalogTelevisionOutputRestriction**: object  
  [ContentKeyPolicyPlayReadyExplicitAnalogTelevisionRestriction](https://docs.mediakind.com/api-reference/media-api/schemas/contentkeypolicyplayreadyexplicitanalogtelevisionrestriction)  
  **Optional**
  Configures the Explicit Analog Television Output Restriction in the license. Configuration data must be between 0 and 3 inclusive.

- **bestEffort**: boolean  
    **Required**: Yes  
    Indicates whether this restriction is enforced on a Best Effort basis.

- **configurationData**: integer  
    **Required**: Yes  
    **Range**: 0 to 3  
    Configures the restriction control bits. Must be between 0 and 3 inclusive.

- **firstPlayExpiration**: string  
  **Optional**: Yes  
  **Format**: duration  
  The amount of time that the license is valid after the license is first used to play content.

- **imageConstraintForAnalogComponentVideoRestriction**: boolean  
  **Required**: Yes  
  Enables the Image Constraint For Analog Component Video Restriction in the license.

- **imageConstraintForAnalogComputerMonitorRestriction**: boolean  
  **Required**: Yes  
  Enables the Image Constraint For Analog Component Video Restriction in the license.

- **scmsRestriction**: integer  
  **Optional**: Yes  
  **Range**: 0 to 3  
  Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive.

- **uncompressedDigitalAudioOpl**: integer  
  **Optional**: Yes  
  Specifies the output protection level for uncompressed digital audio.

- **uncompressedDigitalVideoOpl**: integer  
  **Optional**: Yes  
  Specifies the output protection level for uncompressed digital video.

- **relativeBeginDate**: string  
  **Optional**: Yes  
  **Format**: duration  
  The relative begin date of license.

- **relativeExpirationDate**: string  
  **Optional**: Yes  
  **Format**: duration  
  The relative expiration date of license.

- **securityLevel**: enum  
  **Optional**: Yes  
  The security level.

**Allowed values**: Unknown, SL150, SL2000, SL3000
