{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-mediapackage/refs/heads/main/json-schema/mediapackage-api-encryption-contract-configuration-schema.json", "title": "EncryptionContractConfiguration", "description": "Use encryptionContractConfiguration to configure one or more content encryption keys for your endpoints that use SPEKE 2.0. \nThe encryption contract defines which content keys are used to encrypt the audio and video tracks in your stream. \nTo configure the encryption contract, specify which audio and video encryption presets to use.\nNote the following considerations when using encryptionContractConfiguration:\nencryptionContractConfiguration can be used for DASH or CMAF endpoints that use SPEKE 2.0. SPEKE 2.0 relies on the CPIX 2.3 specification.\nYou must disable key rotation for this endpoint by setting keyRotationIntervalSeconds to 0.\n", "type": "object", "properties": { "PresetSpeke20Audio": { "allOf": [ { "$ref": "#/components/schemas/PresetSpeke20Audio" }, { "xml": { "name": "presetSpeke20Audio" }, "description": "A collection of audio encryption presets." } ] }, "PresetSpeke20Video": { "allOf": [ { "$ref": "#/components/schemas/PresetSpeke20Video" }, { "xml": { "name": "presetSpeke20Video" }, "description": "A collection of video encryption presets." } ] } }, "required": [ "PresetSpeke20Audio", "PresetSpeke20Video" ] }