grant_flow_entitlements

grant_flow_entitlements(**kwargs)

Grants entitlements to an existing flow.

See also: AWS API Documentation

Request Syntax

response = client.grant_flow_entitlements(
    Entitlements=[
        {
            'DataTransferSubscriberFeePercent': 123,
            'Description': 'string',
            'Encryption': {
                'Algorithm': 'aes128'|'aes192'|'aes256',
                'ConstantInitializationVector': 'string',
                'DeviceId': 'string',
                'KeyType': 'speke'|'static-key'|'srt-password',
                'Region': 'string',
                'ResourceId': 'string',
                'RoleArn': 'string',
                'SecretArn': 'string',
                'Url': 'string'
            },
            'EntitlementStatus': 'ENABLED'|'DISABLED',
            'Name': 'string',
            'Subscribers': [
                'string',
            ]
        },
    ],
    FlowArn='string'
)
Parameters
  • Entitlements (list) --

    [REQUIRED] The list of entitlements that you want to grant.

    • (dict) -- The entitlements that you want to grant on a flow.
      • DataTransferSubscriberFeePercent (integer) -- Percentage from 0-100 of the data transfer cost to be billed to the subscriber.
      • Description (string) -- A description of the entitlement. This description appears only on the AWS Elemental MediaConnect console and will not be seen by the subscriber or end user.
      • Encryption (dict) -- The type of encryption that will be used on the output that is associated with this entitlement.
        • Algorithm (string) -- The type of algorithm that is used for the encryption (such as aes128, aes192, or aes256).
        • ConstantInitializationVector (string) -- A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content. This parameter is not valid for static key encryption.
        • DeviceId (string) -- The value of one of the devices that you configured with your digital rights management (DRM) platform key provider. This parameter is required for SPEKE encryption and is not valid for static key encryption.
        • KeyType (string) -- The type of key that is used for the encryption. If no keyType is provided, the service will use the default setting (static-key).
        • Region (string) -- The AWS Region that the API Gateway proxy endpoint was created in. This parameter is required for SPEKE encryption and is not valid for static key encryption.
        • ResourceId (string) -- An identifier for the content. The service sends this value to the key server to identify the current endpoint. The resource ID is also known as the content ID. This parameter is required for SPEKE encryption and is not valid for static key encryption.
        • RoleArn (string) -- [REQUIRED] The ARN of the role that you created during setup (when you set up AWS Elemental MediaConnect as a trusted entity).
        • SecretArn (string) -- The ARN of the secret that you created in AWS Secrets Manager to store the encryption key. This parameter is required for static key encryption and is not valid for SPEKE encryption.
        • Url (string) -- The URL from the API Gateway proxy that you set up to talk to your key server. This parameter is required for SPEKE encryption and is not valid for static key encryption.
      • EntitlementStatus (string) -- An indication of whether the new entitlement should be enabled or disabled as soon as it is created. If you don’t specify the entitlementStatus field in your request, MediaConnect sets it to ENABLED.
      • Name (string) -- The name of the entitlement. This value must be unique within the current flow.
      • Subscribers (list) -- [REQUIRED] The AWS account IDs that you want to share your content with. The receiving accounts (subscribers) will be allowed to create their own flows using your content as the source.
        • (string) --
  • FlowArn (string) -- [REQUIRED] The flow that you want to grant entitlements on.
Return type

dict

Returns

Response Syntax

{
    'Entitlements': [
        {
            'DataTransferSubscriberFeePercent': 123,
            'Description': 'string',
            'Encryption': {
                'Algorithm': 'aes128'|'aes192'|'aes256',
                'ConstantInitializationVector': 'string',
                'DeviceId': 'string',
                'KeyType': 'speke'|'static-key'|'srt-password',
                'Region': 'string',
                'ResourceId': 'string',
                'RoleArn': 'string',
                'SecretArn': 'string',
                'Url': 'string'
            },
            'EntitlementArn': 'string',
            'EntitlementStatus': 'ENABLED'|'DISABLED',
            'Name': 'string',
            'Subscribers': [
                'string',
            ]
        },
    ],
    'FlowArn': 'string'
}

Response Structure

  • (dict) -- AWS Elemental MediaConnect granted the entitlements successfully.
    • Entitlements (list) -- The entitlements that were just granted.
      • (dict) -- The settings for a flow entitlement.
        • DataTransferSubscriberFeePercent (integer) -- Percentage from 0-100 of the data transfer cost to be billed to the subscriber.
        • Description (string) -- A description of the entitlement.
        • Encryption (dict) -- The type of encryption that will be used on the output that is associated with this entitlement.
          • Algorithm (string) -- The type of algorithm that is used for the encryption (such as aes128, aes192, or aes256).
          • ConstantInitializationVector (string) -- A 128-bit, 16-byte hex value represented by a 32-character string, to be used with the key for encrypting content. This parameter is not valid for static key encryption.
          • DeviceId (string) -- The value of one of the devices that you configured with your digital rights management (DRM) platform key provider. This parameter is required for SPEKE encryption and is not valid for static key encryption.
          • KeyType (string) -- The type of key that is used for the encryption. If no keyType is provided, the service will use the default setting (static-key).
          • Region (string) -- The AWS Region that the API Gateway proxy endpoint was created in. This parameter is required for SPEKE encryption and is not valid for static key encryption.
          • ResourceId (string) -- An identifier for the content. The service sends this value to the key server to identify the current endpoint. The resource ID is also known as the content ID. This parameter is required for SPEKE encryption and is not valid for static key encryption.
          • RoleArn (string) -- The ARN of the role that you created during setup (when you set up AWS Elemental MediaConnect as a trusted entity).
          • SecretArn (string) -- The ARN of the secret that you created in AWS Secrets Manager to store the encryption key. This parameter is required for static key encryption and is not valid for SPEKE encryption.
          • Url (string) -- The URL from the API Gateway proxy that you set up to talk to your key server. This parameter is required for SPEKE encryption and is not valid for static key encryption.
        • EntitlementArn (string) -- The ARN of the entitlement.
        • EntitlementStatus (string) -- An indication of whether the entitlement is enabled.
        • Name (string) -- The name of the entitlement.
        • Subscribers (list) -- The AWS account IDs that you want to share your content with. The receiving accounts (subscribers) will be allowed to create their own flow using your content as the source.
          • (string) --
    • FlowArn (string) -- The ARN of the flow that these entitlements were granted to.

Exceptions

  • MediaConnect.Client.exceptions.GrantFlowEntitlements420Exception
  • MediaConnect.Client.exceptions.BadRequestException
  • MediaConnect.Client.exceptions.InternalServerErrorException
  • MediaConnect.Client.exceptions.ForbiddenException
  • MediaConnect.Client.exceptions.NotFoundException
  • MediaConnect.Client.exceptions.ServiceUnavailableException
  • MediaConnect.Client.exceptions.TooManyRequestsException