PrefetchSchedule - AWS Elemental MediaTailor

PrefetchSchedule

Creates, describes, updates, or deletes a prefetch schedule for a playback configuration. A prefetch schedules allows you to tell MediaTailor to fetch and prepare certain ads before an ad break happens. For more information about ad prefetching, see Using ad prefetching in the MediaTailor User Guide.

URI

/v1/prefetchSchedule/PlaybackConfigurationName/Name

HTTP methods

GET

Operation ID: GetPrefetchSchedule

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.

Path parameters
Name Type Required Description
Name String True

The identifier for the playback configuration.

PlaybackConfigurationName String True

The name of the playback configuration.

Responses
Status code Response model Description
200 PrefetchSchedule

Success.

POST

Operation ID: CreatePrefetchSchedule

Creates a new prefetch schedule for the specified playback configuration.

Path parameters
Name Type Required Description
Name String True

The identifier for the playback configuration.

PlaybackConfigurationName String True

The name of the playback configuration.

Responses
Status code Response model Description
200 PrefetchSchedule

Success.

DELETE

Operation ID: DeletePrefetchSchedule

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.

Path parameters
Name Type Required Description
Name String True

The identifier for the playback configuration.

PlaybackConfigurationName String True

The name of the playback configuration.

Responses
Status code Response model Description
204 DeletePrefetchScheduleResponse

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

Schemas

Request bodies

{ "Retrieval": { "EndTime": integer, "StartTime": integer, "DynamicVariables": { } }, "Consumption": { "AvailMatchingCriteria": [ { "DynamicVariable": "string", "Operator": enum } ], "EndTime": integer, "StartTime": integer }, "StreamId": "string" }

Response bodies

{ "Consumption": { "AvailMatchingCriteria": [ { "DynamicVariable": "string", "Operator": enum } ], "EndTime": integer, "StartTime": integer }, "Retrieval": { "EndTime": integer, "StartTime": integer, "DynamicVariables": { } }, "StreamId": "string", "Arn": "string", "PlaybackConfigurationName": "string", "Name": "string" }
{ }

Properties

AvailMatchingCriteria

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.

Property Type Required Description
DynamicVariable

string

True

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

Values: EQUALS

True

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

CreatePrefetchScheduleRequest

A complex type that contains configuration settings for retrieval, consumption, and an optional stream ID.

Property Type Required Description
Consumption

PrefetchConsumption

True

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.

Retrieval

PrefetchRetrieval

True

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.

StreamId

string

False

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.

DeletePrefetchScheduleResponse

If the action is successful, the service sends back an HTTP 204 response with an empty HTTP body.

PrefetchConsumption

A complex type that contains settings that determine how and when that MediaTailor places prefetched ads into upcoming ad breaks.

Property Type Required Description
AvailMatchingCriteria

Array of type AvailMatchingCriteria

False

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.

EndTime

integer

Format: date-time

True

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

integer

Format: date-time

False

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.

PrefetchRetrieval

A complex type that contains settings governing when MediaTailor prefetches ads, and which dynamic variables that MediaTailor includes in the request to the ad decision server.

Property Type Required Description
DynamicVariables

object

False

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.

EndTime

integer

Format: date-time

True

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

integer

Format: date-time

False

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.

PrefetchSchedule

A complex type that contains prefetch schedule information.

Property Type Required Description
Arn

string

True

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

Consumption

PrefetchConsumption

True

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.

Name

string

True

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

True

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

Retrieval

PrefetchRetrieval

True

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

StreamId

string

False

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

See also

For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

GetPrefetchSchedule

CreatePrefetchSchedule

DeletePrefetchSchedule