Key concepts

For each Content Replacement service and time slot, the end-users receive the stream with either the original or replacement content. The decision is made based on the match between the zip code or “category” specified in the client request, and the policy defined in the metadata.

Content Replacement is supported on Live feed only. A Live stream can be replaced either by another Live, or by an Asset.

When replacing a content over a certain period of time that we can call "event", metadata must be ingested prior to the events through a secured API. Base API endpoint is and more information on how to use the API can be found here API reference)

The API is an Event Scheduling and Notification Interface (ESNI) which is based upon the SCTE 224 standard (link).
It allows you to define audiences (for instance with a list of zip codes, each zip code being a 5-digit number) and time slots.

Please note that time slots can also be created through a dedicated API (see the Content Replacement slot section).



  • End user client requests must include a zip code or a category in the Query Parameter field (see pre-requisites)
  • All API calls must be authenticated with a valid key (see Generate your API key section)

Content mapping vs slot timing behavior

Before slot startsWithin slotAfter slot ends
Original content Content Replacement is unconditional when no audience is defined
For any end-user client request not matching the zip or category value, original content is selected
* For end-user client requests matching the zip or category value, replacement content (slot level or default) is selected
Original content

Slot vs notification timing

"Past" and "future" time points are relative to timing when the API call is received and processed by the platform.

Use casePast event (obsolete notification)In progress event (late notification)Future event (notification)
DescriptionSlot ends in the past.Slot starts in the past but ends in the future.Slot starts in the future and ends in the future.
ScenarioEvent is already finished. Slot cannot be created.Event has started but has not finished yet. Slot will be created for the remaining period of time.Event has not yet started. Slot will be created for the defined period.
API callCall is refused.Not supported yet (coming soon)Supported


Service variants

A future release will allow the ESNI Media Id to be mapped to a set of service variants. This scheme will be based upon an optional list of streaming formats, and will, for instance, enable support for any combination of formats/versions/DRMs you may have:

  • packaging format (DASH, HLS)
  • packaging format versions (HLS v3, HLS v5, etc.)
  • DRM versions (Fairplay, PlayReady, etc.)