AWS MediaTailor

2021/10/12 - AWS MediaTailor - 4 new api methods

Changes  MediaTailor now supports ad prefetching.

ListPrefetchSchedules (new) Link ¶

Creates a new prefetch schedule.

See also: AWS API Documentation

Request Syntax

client.list_prefetch_schedules(
    MaxResults=123,
    NextToken='string',
    PlaybackConfigurationName='string',
    StreamId='string'
)
type MaxResults

integer

param MaxResults

The maximum number of prefetch schedules that you want MediaTailor to return in response to the current request. If the playback configuration has more than MaxResults prefetch schedules, use the value of NextToken in the response to get the next page of results.

type NextToken

string

param NextToken

(Optional) If the playback configuration has more than MaxResults prefetch schedules, use NextToken to get the second and subsequent pages of results.

For the first ListPrefetchSchedulesRequest request, omit this value.

For the second and subsequent requests, get the value of NextToken from the previous response and specify that value for NextToken in the request.

If the previous response didn't include a NextToken element, there are no more prefetch schedules to get.

type PlaybackConfigurationName

string

param PlaybackConfigurationName

[REQUIRED]

The name of the playback configuration.

type StreamId

string

param StreamId

An optional filtering parameter whereby MediaTailor filters the prefetch schedules to include only specific streams.

rtype

dict

returns

Response Syntax

{
    'Items': [
        {
            'Arn': 'string',
            'Consumption': {
                'AvailMatchingCriteria': [
                    {
                        'DynamicVariable': 'string',
                        'Operator': 'EQUALS'
                    },
                ],
                'EndTime': datetime(2015, 1, 1),
                'StartTime': datetime(2015, 1, 1)
            },
            'Name': 'string',
            'PlaybackConfigurationName': 'string',
            'Retrieval': {
                'DynamicVariables': {
                    'string': 'string'
                },
                'EndTime': datetime(2015, 1, 1),
                'StartTime': datetime(2015, 1, 1)
            },
            'StreamId': 'string'
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    Success.

    • Items (list) --

      Lists the prefetch schedules. An empty Items list doesn't mean there aren't more items to fetch, just that that page was empty.

      • (dict) --

        A complex type that contains prefetch schedule information.

        • Arn (string) --

          The Amazon Resource Name (ARN) of the prefetch schedule.

        • Consumption (dict) --

          Consumption settings determine how, and when, MediaTailor places the prefetched ads into ad breaks. Ad consumption occurs within a span of time that you define, called a consumption window . You can designate which ad breaks that MediaTailor fills with prefetch ads by setting avail matching criteria.

          • AvailMatchingCriteria (list) --

            If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as scte.event_id, set the avail matching criteria.

            • (dict) --

              MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into.

              As an example, let's say that you set DynamicVariable to scte.event_id and Operator to EQUALS, and your playback configuration has an ADS URL of https://my.ads.server.com/path?&podId=[scte.avail_num]&event=[scte.event_id]&duration=[session.avail_duration_secs]. And the prefetch request to the ADS contains these values https://my.ads.server.com/path?&podId=3&event=my-awesome-event&duration=30. MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of my-awesome-event, since it must match the event id that MediaTailor uses to query the ADS.

              You can specify up to five AvailMatchingCriteria. If you specify multiple AvailMatchingCriteria, MediaTailor combines them to match using a logical AND. You can model logical OR combinations by creating multiple prefetch schedules.

              • DynamicVariable (string) --

                The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the MediaTailor User Guide .

                You can include up to 100 dynamic variables.

              • Operator (string) --

                For the DynamicVariable specified in AvailMatchingCriteria, the Operator that is used for the comparison.

          • EndTime (datetime) --

            The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call DeletePrefetchSchedule.

          • StartTime (datetime) --

            The time when prefetched ads are considered for use in an ad break. If you don't specify StartTime, the prefetched ads are available after MediaTailor retrives them from the ad decision server.

        • Name (string) --

          The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration.

        • PlaybackConfigurationName (string) --

          The name of the playback configuration to create the prefetch schedule for.

        • Retrieval (dict) --

          A complex type that contains settings for prefetch retrieval from the ad decision server (ADS).

          • DynamicVariables (dict) --

            The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS).

            You intially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify DynamicVariables for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS.

            • (string) --

              • (string) --

          • EndTime (datetime) --

            The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time.

          • StartTime (datetime) --

            The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible.

        • StreamId (string) --

          An optional stream identifier that you can specify in order to prefetch for multiple streams that use the same playback configuration.

    • NextToken (string) --

      The value that you will use forNextToken in the next ListPrefetchSchedulesRequest request.

DeletePrefetchSchedule (new) Link ¶

Deletes a prefetch schedule for a specific playback configuration. If you call DeletePrefetchSchedule on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code.

See also: AWS API Documentation

Request Syntax

client.delete_prefetch_schedule(
    Name='string',
    PlaybackConfigurationName='string'
)
type Name

string

param Name

[REQUIRED]

The identifier for the playback configuration.

type PlaybackConfigurationName

string

param PlaybackConfigurationName

[REQUIRED]

The name of the playback configuration.

rtype

dict

returns

Response Syntax

{}

Response Structure

  • (dict) --

    The request was successful and there is no content in the response.

CreatePrefetchSchedule (new) Link ¶

Creates a new prefetch schedule for the specified playback configuration.

See also: AWS API Documentation

Request Syntax

client.create_prefetch_schedule(
    Consumption={
        'AvailMatchingCriteria': [
            {
                'DynamicVariable': 'string',
                'Operator': 'EQUALS'
            },
        ],
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    Name='string',
    PlaybackConfigurationName='string',
    Retrieval={
        'DynamicVariables': {
            'string': 'string'
        },
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    StreamId='string'
)
type Consumption

dict

param Consumption

[REQUIRED]

The configuration settings for MediaTailor's consumption of the prefetched ads from the ad decision server. Each consumption configuration contains an end time and an optional start time that define the consumption window . Prefetch schedules automatically expire no earlier than seven days after the end time.

  • AvailMatchingCriteria (list) --

    If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as scte.event_id, set the avail matching criteria.

    • (dict) --

      MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into.

      As an example, let's say that you set DynamicVariable to scte.event_id and Operator to EQUALS, and your playback configuration has an ADS URL of https://my.ads.server.com/path?&podId=[scte.avail_num]&event=[scte.event_id]&duration=[session.avail_duration_secs]. And the prefetch request to the ADS contains these values https://my.ads.server.com/path?&podId=3&event=my-awesome-event&duration=30. MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of my-awesome-event, since it must match the event id that MediaTailor uses to query the ADS.

      You can specify up to five AvailMatchingCriteria. If you specify multiple AvailMatchingCriteria, MediaTailor combines them to match using a logical AND. You can model logical OR combinations by creating multiple prefetch schedules.

      • DynamicVariable (string) -- [REQUIRED]

        The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the MediaTailor User Guide .

        You can include up to 100 dynamic variables.

      • Operator (string) -- [REQUIRED]

        For the DynamicVariable specified in AvailMatchingCriteria, the Operator that is used for the comparison.

  • EndTime (datetime) -- [REQUIRED]

    The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call DeletePrefetchSchedule.

  • StartTime (datetime) --

    The time when prefetched ads are considered for use in an ad break. If you don't specify StartTime, the prefetched ads are available after MediaTailor retrives them from the ad decision server.

type Name

string

param Name

[REQUIRED]

The identifier for the playback configuration.

type PlaybackConfigurationName

string

param PlaybackConfigurationName

[REQUIRED]

The name of the playback configuration.

type Retrieval

dict

param Retrieval

[REQUIRED]

The configuration settings for retrieval of prefetched ads from the ad decision server. Only one set of prefetched ads will be retrieved and subsequently consumed for each ad break.

  • DynamicVariables (dict) --

    The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS).

    You intially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify DynamicVariables for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS.

    • (string) --

      • (string) --

  • EndTime (datetime) -- [REQUIRED]

    The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time.

  • StartTime (datetime) --

    The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible.

type StreamId

string

param StreamId

An optional stream identifier that MediaTailor uses to prefetch ads for multiple streams that use the same playback configuration. If StreamId is specified, MediaTailor returns all of the prefetch schedules with an exact match on StreamId. If not specified, MediaTailor returns all of the prefetch schedules for the playback configuration, regardless of StreamId.

rtype

dict

returns

Response Syntax

{
    'Arn': 'string',
    'Consumption': {
        'AvailMatchingCriteria': [
            {
                'DynamicVariable': 'string',
                'Operator': 'EQUALS'
            },
        ],
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    'Name': 'string',
    'PlaybackConfigurationName': 'string',
    'Retrieval': {
        'DynamicVariables': {
            'string': 'string'
        },
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    'StreamId': 'string'
}

Response Structure

  • (dict) --

    Success.

    • Arn (string) --

      The Amazon Resource Name (ARN) of the prefetch schedule.

    • Consumption (dict) --

      Consumption settings determine how, and when, MediaTailor places the prefetched ads into ad breaks. Ad consumption occurs within a span of time that you define, called a consumption window . You can designate which ad breaks that MediaTailor fills with prefetch ads by setting avail matching criteria.

      • AvailMatchingCriteria (list) --

        If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as scte.event_id, set the avail matching criteria.

        • (dict) --

          MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into.

          As an example, let's say that you set DynamicVariable to scte.event_id and Operator to EQUALS, and your playback configuration has an ADS URL of https://my.ads.server.com/path?&podId=[scte.avail_num]&event=[scte.event_id]&duration=[session.avail_duration_secs]. And the prefetch request to the ADS contains these values https://my.ads.server.com/path?&podId=3&event=my-awesome-event&duration=30. MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of my-awesome-event, since it must match the event id that MediaTailor uses to query the ADS.

          You can specify up to five AvailMatchingCriteria. If you specify multiple AvailMatchingCriteria, MediaTailor combines them to match using a logical AND. You can model logical OR combinations by creating multiple prefetch schedules.

          • DynamicVariable (string) --

            The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the MediaTailor User Guide .

            You can include up to 100 dynamic variables.

          • Operator (string) --

            For the DynamicVariable specified in AvailMatchingCriteria, the Operator that is used for the comparison.

      • EndTime (datetime) --

        The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call DeletePrefetchSchedule.

      • StartTime (datetime) --

        The time when prefetched ads are considered for use in an ad break. If you don't specify StartTime, the prefetched ads are available after MediaTailor retrives them from the ad decision server.

    • Name (string) --

      The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration.

    • PlaybackConfigurationName (string) --

      The name of the playback configuration to create the prefetch schedule for.

    • Retrieval (dict) --

      A complex type that contains settings for prefetch retrieval from the ad decision server (ADS).

      • DynamicVariables (dict) --

        The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS).

        You intially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify DynamicVariables for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS.

        • (string) --

          • (string) --

      • EndTime (datetime) --

        The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time.

      • StartTime (datetime) --

        The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible.

    • StreamId (string) --

      An optional stream identifier that you can specify in order to prefetch for multiple streams that use the same playback configuration.

GetPrefetchSchedule (new) Link ¶

Returns information about the prefetch schedule for a specific playback configuration. If you call GetPrefetchSchedule on an expired prefetch schedule, MediaTailor returns an HTTP 404 status code.

See also: AWS API Documentation

Request Syntax

client.get_prefetch_schedule(
    Name='string',
    PlaybackConfigurationName='string'
)
type Name

string

param Name

[REQUIRED]

The identifier for the playback configuration.

type PlaybackConfigurationName

string

param PlaybackConfigurationName

[REQUIRED]

The name of the playback configuration.

rtype

dict

returns

Response Syntax

{
    'Arn': 'string',
    'Consumption': {
        'AvailMatchingCriteria': [
            {
                'DynamicVariable': 'string',
                'Operator': 'EQUALS'
            },
        ],
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    'Name': 'string',
    'PlaybackConfigurationName': 'string',
    'Retrieval': {
        'DynamicVariables': {
            'string': 'string'
        },
        'EndTime': datetime(2015, 1, 1),
        'StartTime': datetime(2015, 1, 1)
    },
    'StreamId': 'string'
}

Response Structure

  • (dict) --

    Success.

    • Arn (string) --

      The Amazon Resource Name (ARN) of the prefetch schedule.

    • Consumption (dict) --

      Consumption settings determine how, and when, MediaTailor places the prefetched ads into ad breaks. Ad consumption occurs within a span of time that you define, called a consumption window . You can designate which ad breaks that MediaTailor fills with prefetch ads by setting avail matching criteria.

      • AvailMatchingCriteria (list) --

        If you only want MediaTailor to insert prefetched ads into avails (ad breaks) that match specific dynamic variables, such as scte.event_id, set the avail matching criteria.

        • (dict) --

          MediaTailor only places (consumes) prefetched ads if the ad break meets the criteria defined by the dynamic variables. This gives you granular control over which ad break to place the prefetched ads into.

          As an example, let's say that you set DynamicVariable to scte.event_id and Operator to EQUALS, and your playback configuration has an ADS URL of https://my.ads.server.com/path?&podId=[scte.avail_num]&event=[scte.event_id]&duration=[session.avail_duration_secs]. And the prefetch request to the ADS contains these values https://my.ads.server.com/path?&podId=3&event=my-awesome-event&duration=30. MediaTailor will only insert the prefetched ads into the ad break if has a SCTE marker with an event id of my-awesome-event, since it must match the event id that MediaTailor uses to query the ADS.

          You can specify up to five AvailMatchingCriteria. If you specify multiple AvailMatchingCriteria, MediaTailor combines them to match using a logical AND. You can model logical OR combinations by creating multiple prefetch schedules.

          • DynamicVariable (string) --

            The dynamic variable(s) that MediaTailor should use as avail matching criteria. MediaTailor only places the prefetched ads into the avail if the avail matches the criteria defined by the dynamic variable. For information about dynamic variables, see Using dynamic ad variables in the MediaTailor User Guide .

            You can include up to 100 dynamic variables.

          • Operator (string) --

            For the DynamicVariable specified in AvailMatchingCriteria, the Operator that is used for the comparison.

      • EndTime (datetime) --

        The time when MediaTailor no longer considers the prefetched ads for use in an ad break. MediaTailor automatically deletes prefetch schedules no less than seven days after the end time. If you'd like to manually delete the prefetch schedule, you can call DeletePrefetchSchedule.

      • StartTime (datetime) --

        The time when prefetched ads are considered for use in an ad break. If you don't specify StartTime, the prefetched ads are available after MediaTailor retrives them from the ad decision server.

    • Name (string) --

      The name of the prefetch schedule. The name must be unique among all prefetch schedules that are associated with the specified playback configuration.

    • PlaybackConfigurationName (string) --

      The name of the playback configuration to create the prefetch schedule for.

    • Retrieval (dict) --

      A complex type that contains settings for prefetch retrieval from the ad decision server (ADS).

      • DynamicVariables (dict) --

        The dynamic variables to use for substitution during prefetch requests to the ad decision server (ADS).

        You intially configure dynamic variables for the ADS URL when you set up your playback configuration. When you specify DynamicVariables for prefetch retrieval, MediaTailor includes the dynamic variables in the request to the ADS.

        • (string) --

          • (string) --

      • EndTime (datetime) --

        The time when prefetch retrieval ends for the ad break. Prefetching will be attempted for manifest requests that occur at or before this time.

      • StartTime (datetime) --

        The time when prefetch retrievals can start for this break. Ad prefetching will be attempted for manifest requests that occur at or after this time. Defaults to the current time. If not specified, the prefetch retrieval starts as soon as possible.

    • StreamId (string) --

      An optional stream identifier that you can specify in order to prefetch for multiple streams that use the same playback configuration.