API динамической вставки рекламы VOD

API динамической вставки рекламы позволяет запрашивать и отслеживать потоки видео по запросу (VOD) с использованием технологии DAI. Поддерживаются потоки HLS и DASH.

Сервис: dai.google.com

Путь к методу stream указывается относительно https://dai.google.com

Метод: поток

Методы
stream POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

Создает поток HLS DAI для заданного источника контента и идентификатора видео.

POST /ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

Создает поток DASH DAI для заданного источника контента и идентификатора видео.

HTTP-запрос

POST https://dai.google.com/ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

POST https://dai.google.com/ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

Заголовок запроса

Параметры
api‑key string

Ключ API, предоставленный при создании потока, должен быть действителен для сети издателя.

Вместо того чтобы указывать ключ API в теле запроса, его можно передать в заголовке HTTP Authorization в следующем формате:

Authorization: DCLKDAI key="<api-key>"

Параметры пути

Параметры
content-source string

Идентификатор CMS потока.

video-id string

Идентификатор видеопотока.

Текст запроса

Тело запроса имеет тип application/x-www-form-urlencoded и содержит следующие параметры:

Параметры
dai-ssb Необязательный

Установите значение true , чтобы создать поток отправки сигналов на стороне сервера. По умолчанию — false . Отслеживание потока по умолчанию инициируется клиентом и отправляется на сервер.

Параметры таргетинга DFP Необязательный Дополнительные параметры наведения.
Переопределение параметров потока Необязательный Переопределить значения по умолчанию параметра создания потока.
Аутентификация HMAC Необязательный Аутентификация осуществляется с помощью токена на основе HMAC.

Ответный текст

В случае успеха тело ответа содержит новый Stream . Для потоков, отправляемых на стороне сервера, этот Stream содержит только поля stream_id и stream_manifest .

Открытое измерение

Поле Verifications содержит информацию для проверки Open Measurement для потоков, не использующих серверную передачу сигналов. Поле Verifications содержит один или несколько элементов Verification , в которых перечислены ресурсы и метаданные, необходимые для проверки воспроизведения креативов с помощью стороннего кода измерения. Поддерживается только JavaScriptResource . Для получения дополнительной информации см. IAB Tech Lab и спецификацию VAST 4.1 .

Метод: проверка СМИ

После обнаружения идентификатора рекламного медиафайла во время воспроизведения, немедленно отправьте запрос, используя media_verification_url , с конечной точки stream . media_verification_url — это абсолютный путь. Запросы на проверку медиафайлов не требуются для потоков, передающих сигналы на стороне сервера, где проверку медиафайлов инициирует сам сервер.

Запросы к конечной точке media verification являются идемпотентными.

Методы
media verification GET {media_verification_url}/{ad_media_id}

Уведомляет API о событии проверки носителя.

HTTP-запрос

GET {media-verification-url}/{ad-media-id}

Ответный текст

media verification возвращаются следующие данные:

  • HTTP/1.1 204 No Content если проверка медиафайлов прошла успешно и все пинги отправлены.
  • HTTP/1.1 404 Not Found , если запрос не может проверить медиафайл из-за неправильного форматирования URL-адреса или истечения срока действия.
  • HTTP/1.1 404 Not Found если предыдущий запрос на проверку этого идентификатора был успешным.
  • HTTP/1.1 409 Conflict если в данный момент другой запрос уже отправляет пинги.

Идентификаторы рекламных медиа (HLS)

Идентификаторы рекламных медиафайлов будут закодированы в HLS Timed Metadata с использованием ключа TXXX , зарезервированного для фреймов с "текстовой информацией, определяемой пользователем". Содержимое фрейма будет незашифрованным и всегда будет начинаться с текста "google_" .

Для каждого запроса на подтверждение рекламы необходимо добавить все текстовое содержимое фрейма в поле media_verification_url .

Идентификаторы рекламных медиа (DASH)

Идентификаторы рекламных медиафайлов будут добавлены в манифест с помощью элемента EventStream из библиотеки DASH.

Каждый EventStream будет иметь URI с идентификатором схемы urn:google:dai:2018 . Они будут содержать события с атрибутом messageData , включающим идентификатор рекламного носителя, начинающийся с "google_" . Всё содержимое атрибута messageData должно быть добавлено к media_verification_url для каждого запроса на подтверждение рекламы.

Данные ответа

Транслировать

Объект Stream используется для отображения списка всех ресурсов для вновь созданного потока в формате JSON.
JSON-представление
{
  "stream_id": string,
  "total_duration": number,
  "content_duration": number,
  "valid_for": string,
  "valid_until": string,
  "subtitles": [object(Subtitle)],
  "hls_master_playlist": string,
  "stream_manifest": string,
  "media_verification_url": string,
  "apple_tv": object(AppleTV),
  "ad_breaks": [object(AdBreak)],
}
Поля
stream_id string

Идентификатор потока.
total_duration number

Продолжительность трансляции в секундах.
content_duration number

Продолжительность контента без рекламы в секундах.
valid_for string

Продолжительность потока указана в формате "00h00m00s".
valid_until string

Дата, до которой поток действителен, в формате RFC 3339.
subtitles [object(Subtitle)]

Список субтитров. Опускается, если список пуст. Только HLS.
hls_master_playlist string

(УСТАРЕЛО) URL основного плейлиста HLS. Используйте stream_manifest. Только HLS.
stream_manifest string

Манифест потока. Соответствует основному плейлисту в HLS и MPD в DASH. Это единственное поле, помимо "stream_id", которое присутствует в ответе при создании потока, отправляемого на стороне сервера.
media_verification_url string

URL для проверки медиафайлов.
apple_tv object(AppleTV)

Дополнительная информация, специфичная для устройств AppleTV. Только HLS.
ad_breaks [object(AdBreak)]

Список рекламных вставок. Опускается, если список пуст.

AppleTV

В разделе AppleTV содержится информация, специфичная для устройств Apple TV.
JSON-представление
{
  "interstitials_url": string,
}
Поля
interstitials_url string

URL-адреса межстраничных сообщений.

AdBreak

AdBreak описывает отдельный рекламный блок в рекламном потоке. Он содержит позицию, продолжительность, тип (в середине/перед/после) и список рекламных объявлений.
JSON-представление
{
  "type": string,
  "start": number,
  "duration": number,
  "ads": [object(Ad)],
}
Поля
type string

Допустимые типы перерывов: промежуточный, пред- и последующий.
start number

Место в потоке, с которого начинается разрыв, в секундах.
duration number

Продолжительность рекламной паузы в секундах.
ads [object(Ad)]

Список объявлений. Опускается, если список пуст.
Описание объявления в рекламном потоке содержит информацию о позиции объявления в рекламной паузе, продолжительности показа и некоторые необязательные метаданные.
JSON-представление
{
  "seq": number,
  "start": number,
  "duration": number,
  "title": string,
  "description": string,
  "advertiser": string,
  "ad_system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
  "clickthrough_url": string,
  "icons": [object(Icon)],
  "wrappers": [object(Wrapper)],
  "events": [object(Event)],
  "verifications": [object(Verification)],
  "universal_ad_id": object(UniversalAdID),
  "companions": [object(Companion)],
  "interactive_file": object(InteractiveFile),
  "skip_metadata": object(SkipMetadata),
  "extensions": [],
}
Поля
seq number

Положение рекламы в рекламном блоке.
start number

Позиция в рекламном потоке, с которой начинается показ рекламы, в секундах.
duration number

Продолжительность рекламного ролика в секундах.
title string

Заголовок объявления (необязательно).
description string

Дополнительное описание объявления.
advertiser string

Необязательный идентификатор рекламодателя.
ad_system string

Дополнительная рекламная система.
ad_id string

Необязательный идентификатор объявления.
creative_id string

Необязательный идентификатор креатива.
creative_ad_id string

Необязательный идентификатор креативного объявления.
deal_id string

Необязательный идентификатор сделки.
clickthrough_url string

Необязательный URL-адрес для перехода по ссылке.
icons [object(Icon)]

Список значков, опускается, если он пуст.
wrappers [object(Wrapper)]

Список оберток. Опускается, если список пуст.
events [object(Event)]

Список событий, упомянутых в рекламе.
verifications [object(Verification)]

Дополнительные записи для проверки Open Measurement, в которых перечислены ресурсы и метаданные, необходимые для выполнения стороннего кода измерения с целью проверки воспроизведения креативов.
universal_ad_id object(UniversalAdID)

Дополнительный универсальный идентификатор объявления.
companions [object(Companion)]

Дополнительные материалы, которые могут отображаться вместе с этим объявлением (по желанию).
interactive_file object(InteractiveFile)

Дополнительный интерактивный креатив (SIMID), который должен отображаться во время воспроизведения рекламы.
skip_metadata object(SkipMetadata)

Необязательные метаданные для пропускаемых объявлений. Если задано, это указывает на то, что объявление можно пропустить, и включает инструкции по обработке события пропуска и отслеживания.
extensions string

Необязательный список всех узлов <Extension> в VAST.

Событие

Событие содержит информацию о типе события и времени его проведения.
JSON-представление
{
  "time": number,
  "type": string,
}
Поля
time number

Время начала презентации этого мероприятия.
type string

Тип данного события.

Субтитры

Атрибут Subtitle описывает дополнительный файл субтитров для видеопотока. Он хранит два формата субтитров: TTML и WebVTT. Атрибут TTMLPath содержит URL-адрес дополнительного файла TTML, а атрибут WebVTTPath аналогично содержит URL-адрес дополнительного файла WebVTT.
JSON-представление
{
  "language": string,
  "language_name": string,
  "ttml": string,
  "webvtt": string,
}
Поля
language string

Языковой код, например, «en» или «de».
language_name string

Описательное название языка. Оно позволяет отличить один набор субтитров от другого, если для одного и того же языка существует несколько наборов.
ttml string

Необязательный URL-адрес файла-дополнения TTML.
webvtt string

Необязательный URL-адрес файла-дополнения WebVTT.

SkipMetadata

SkipMetadata предоставляет информацию, необходимую клиентам для обработки событий пропуска для пропускаемых объявлений.
JSON-представление
{
  "offset": number,
  "tracking_url": string,
}
Поля
offset number

Параметр Offset указывает время в секундах, которое плеер должен подождать, прежде чем отобразится кнопка пропуска рекламы. Если этот параметр не указан в VAST, он опускается.
tracking_url string

В переменной TrackingURL содержится URL-адрес, который должен быть отправлен при событии skip.

Икона

Icon содержит информацию об иконке VAST.
JSON-представление
{
  "click_data": object(ClickData),
  "creative_type": string,
  "click_fallback_images": [object(FallbackImage)],
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "x_position": string,
  "y_position": string,
  "program": string,
  "alt_text": string,
}
Поля
click_data object(ClickData)

creative_type string

click_fallback_images [object(FallbackImage)]

height int32

width int32

resource string

type string

x_position string

y_position string

program string

alt_text string

ClickData

Данные ClickData содержат информацию о клике по значку.
JSON-представление
{
  "url": string,
}
Поля
url string

FallbackImage

FallbackImage содержит информацию о резервном образе VAST.
JSON-представление
{
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "alt_text": string,
}
Поля
creative_type string

height int32

width int32

resource string

alt_text string

Упаковка

Wrapper содержит информацию о рекламном объявлении-оболочке. Он не включает идентификатор предложения (Deal ID), если он отсутствует.
JSON-представление
{
  "system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
}
Поля
system string

Идентификатор рекламной системы.
ad_id string

Идентификатор объявления, используемый для рекламной оболочки.
creative_id string

Для рекламного объявления-оболочки использован Creative ID.
creative_ad_id string

Идентификатор креатива, используемый для рекламного объявления-оболочки.
deal_id string

Необязательный идентификатор сделки для рекламного объявления-оболочки.

Проверка

В разделе «Верификация» содержится информация для Open Measurement, которая упрощает измерение видимости и верификацию сторонними сервисами. В настоящее время поддерживаются только ресурсы JavaScript. См. https://iabtechlab.com/standards/open-measurement-sdk/
JSON-представление
{
  "vendor": string,
  "java_script_resources": [object(JavaScriptResource)],
  "tracking_events": [object(TrackingEvent)],
  "parameters": string,
}
Поля
vendor string

Поставщик услуг по проверке.
java_script_resources [object(JavaScriptResource)]

Список ресурсов JavaScript для проверки.
tracking_events [object(TrackingEvent)]

Список событий отслеживания для проверки.
parameters string

Непрозрачная строка, передаваемая коду проверки начальной загрузки.

JavaScriptResource

JavaScriptResource содержит информацию для проверки с помощью JavaScript.
JSON-представление
{
  "script_url": string,
  "api_framework": string,
  "browser_optional": boolean,
}
Поля
script_url string

URI в JavaScript-код.
api_framework string

APIFramework — это название видеофреймворка, использующего код подтверждения.
browser_optional boolean

Можно ли запустить этот скрипт вне браузера?

Отслеживание событий

Класс TrackingEvent содержит URL-адреса, которые клиент должен проверять в определенных ситуациях.
JSON-представление
{
  "event": string,
  "uri": string,
}
Поля
event string

Тип события отслеживания.
uri string

Событие отслеживания, которое необходимо проверить с помощью команды ping.

UniversalAdID

UniversalAdID используется для предоставления уникального идентификатора рекламного креатива, который сохраняется во всех рекламных системах.
JSON-представление
{
  "id_value": string,
  "id_registry": string,
}
Поля
id_value string

Универсальный идентификатор объявления (Universal Ad ID) выбранного креатива для рекламы.
id_registry string

Строка, используемая для идентификации URL-адреса веб-сайта реестра, где каталогизирован универсальный идентификатор объявления выбранного рекламного материала.

Спутник

В разделе «Сопутствующие материалы» содержится информация о сопутствующих рекламных объявлениях, которые могут отображаться вместе с основным объявлением.
JSON-представление
{
  "click_data": object(ClickData),
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "ad_slot_id": string,
  "api_framework": string,
  "tracking_events": [object(TrackingEvent)],
}
Поля
click_data object(ClickData)

Данные о кликах по этому сопутствующему товару.
creative_type string

Атрибут CreativeType у узла <StaticResource> в VAST указывает, является ли он компонентом типа static.
height int32

Высота этого спутника в пикселях.
width int32

Ширина этого компаньона в пикселях.
resource string

Для статических элементов и элементов iframe это будет URL-адрес, который будет загружен и отображен. Для элементов HTML это будет фрагмент HTML-кода, который должен отображаться в качестве элемента.
type string

Тип этого дополнения. Оно может быть статическим, iframe или HTML.
ad_slot_id string

Идентификатор слота для этого компаньона.
api_framework string

API-фреймворк для этого дополнения.
tracking_events [object(TrackingEvent)]

Список событий отслеживания для этого компаньона.

Интерактивный файл

Файл InteractiveFile содержит информацию об интерактивном креативе (т.е. SIMID), который должен отображаться во время воспроизведения рекламы.
JSON-представление
{
  "resource": string,
  "type": string,
  "variable_duration": boolean,
  "ad_parameters": string,
}
Поля
resource string

URL-адрес интерактивного рекламного материала.
type string

MIME-тип файла, предоставленного в качестве ресурса.
variable_duration boolean

Возможно ли, что автор данного творческого произведения попросит продлить срок действия?
ad_parameters string

Значение узла <AdParameters> в VAST.
,

API динамической вставки рекламы позволяет запрашивать и отслеживать потоки видео по запросу (VOD) с использованием технологии DAI. Поддерживаются потоки HLS и DASH.

Сервис: dai.google.com

Путь к методу stream указывается относительно https://dai.google.com

Метод: поток

Методы
stream POST /ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

Создает поток HLS DAI для заданного источника контента и идентификатора видео.

POST /ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

Создает поток DASH DAI для заданного источника контента и идентификатора видео.

HTTP-запрос

POST https://dai.google.com/ondemand/v1/hls/content/{content-source}/vid/{video-id}/stream

POST https://dai.google.com/ondemand/v1/dash/content/{content-source}/vid/{video-id}/stream

Заголовок запроса

Параметры
api‑key string

Ключ API, предоставленный при создании потока, должен быть действителен для сети издателя.

Вместо того чтобы указывать ключ API в теле запроса, его можно передать в заголовке HTTP Authorization в следующем формате:

Authorization: DCLKDAI key="<api-key>"

Параметры пути

Параметры
content-source string

Идентификатор CMS потока.

video-id string

Идентификатор видеопотока.

Текст запроса

Тело запроса имеет тип application/x-www-form-urlencoded и содержит следующие параметры:

Параметры
dai-ssb Необязательный

Установите значение true , чтобы создать поток отправки сигналов на стороне сервера. По умолчанию — false . Отслеживание потока по умолчанию инициируется клиентом и отправляется на сервер.

Параметры таргетинга DFP Необязательный Дополнительные параметры наведения.
Переопределение параметров потока Необязательный Переопределить значения по умолчанию параметра создания потока.
Аутентификация HMAC Необязательный Аутентификация осуществляется с помощью токена на основе HMAC.

Ответный текст

В случае успеха тело ответа содержит новый Stream . Для потоков, отправляемых на стороне сервера, этот Stream содержит только поля stream_id и stream_manifest .

Открытое измерение

Поле Verifications содержит информацию для проверки Open Measurement для потоков, не использующих серверную передачу сигналов. Поле Verifications содержит один или несколько элементов Verification , в которых перечислены ресурсы и метаданные, необходимые для проверки воспроизведения креативов с помощью стороннего кода измерения. Поддерживается только JavaScriptResource . Для получения дополнительной информации см. IAB Tech Lab и спецификацию VAST 4.1 .

Метод: проверка СМИ

После обнаружения идентификатора рекламного медиафайла во время воспроизведения, немедленно отправьте запрос, используя media_verification_url , с конечной точки stream . media_verification_url — это абсолютный путь. Запросы на проверку медиафайлов не требуются для потоков, передающих сигналы на стороне сервера, где проверку медиафайлов инициирует сам сервер.

Запросы к конечной точке media verification являются идемпотентными.

Методы
media verification GET {media_verification_url}/{ad_media_id}

Уведомляет API о событии проверки носителя.

HTTP-запрос

GET {media-verification-url}/{ad-media-id}

Ответный текст

media verification возвращаются следующие данные:

  • HTTP/1.1 204 No Content если проверка медиафайлов прошла успешно и все пинги отправлены.
  • HTTP/1.1 404 Not Found , если запрос не может проверить медиафайл из-за неправильного форматирования URL-адреса или истечения срока действия.
  • HTTP/1.1 404 Not Found если предыдущий запрос на проверку этого идентификатора был успешным.
  • HTTP/1.1 409 Conflict если в данный момент другой запрос уже отправляет пинги.

Идентификаторы рекламных медиа (HLS)

Идентификаторы рекламных медиафайлов будут закодированы в HLS Timed Metadata с использованием ключа TXXX , зарезервированного для фреймов с "текстовой информацией, определяемой пользователем". Содержимое фрейма будет незашифрованным и всегда будет начинаться с текста "google_" .

Для каждого запроса на подтверждение рекламы необходимо добавить все текстовое содержимое фрейма в поле media_verification_url .

Идентификаторы рекламных медиа (DASH)

Идентификаторы рекламных медиафайлов будут добавлены в манифест с помощью элемента EventStream из библиотеки DASH.

Каждый EventStream будет иметь URI с идентификатором схемы urn:google:dai:2018 . Они будут содержать события с атрибутом messageData , включающим идентификатор рекламного носителя, начинающийся с "google_" . Всё содержимое атрибута messageData должно быть добавлено к media_verification_url для каждого запроса на подтверждение рекламы.

Данные ответа

Транслировать

Объект Stream используется для отображения списка всех ресурсов для вновь созданного потока в формате JSON.
JSON-представление
{
  "stream_id": string,
  "total_duration": number,
  "content_duration": number,
  "valid_for": string,
  "valid_until": string,
  "subtitles": [object(Subtitle)],
  "hls_master_playlist": string,
  "stream_manifest": string,
  "media_verification_url": string,
  "apple_tv": object(AppleTV),
  "ad_breaks": [object(AdBreak)],
}
Поля
stream_id string

Идентификатор потока.
total_duration number

Продолжительность трансляции в секундах.
content_duration number

Продолжительность контента без рекламы в секундах.
valid_for string

Продолжительность потока указана в формате "00h00m00s".
valid_until string

Дата, до которой поток действителен, в формате RFC 3339.
subtitles [object(Subtitle)]

Список субтитров. Опускается, если список пуст. Только HLS.
hls_master_playlist string

(УСТАРЕЛО) URL основного плейлиста HLS. Используйте stream_manifest. Только HLS.
stream_manifest string

Манифест потока. Соответствует основному плейлисту в HLS и MPD в DASH. Это единственное поле, помимо "stream_id", которое присутствует в ответе при создании потока, отправляемого на стороне сервера.
media_verification_url string

URL для проверки медиафайлов.
apple_tv object(AppleTV)

Дополнительная информация, специфичная для устройств AppleTV. Только HLS.
ad_breaks [object(AdBreak)]

Список рекламных вставок. Опускается, если список пуст.

AppleTV

В разделе AppleTV содержится информация, специфичная для устройств Apple TV.
JSON-представление
{
  "interstitials_url": string,
}
Поля
interstitials_url string

URL-адреса межстраничных сообщений.

AdBreak

AdBreak описывает отдельный рекламный блок в рекламном потоке. Он содержит позицию, продолжительность, тип (в середине/перед/после) и список рекламных объявлений.
JSON-представление
{
  "type": string,
  "start": number,
  "duration": number,
  "ads": [object(Ad)],
}
Поля
type string

Допустимые типы перерывов: промежуточный, пред- и последующий.
start number

Место в потоке, с которого начинается разрыв, в секундах.
duration number

Продолжительность рекламной паузы в секундах.
ads [object(Ad)]

Список объявлений. Опускается, если список пуст.
Описание объявления в рекламном потоке содержит информацию о позиции объявления в рекламной паузе, продолжительности показа и некоторые необязательные метаданные.
JSON-представление
{
  "seq": number,
  "start": number,
  "duration": number,
  "title": string,
  "description": string,
  "advertiser": string,
  "ad_system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
  "clickthrough_url": string,
  "icons": [object(Icon)],
  "wrappers": [object(Wrapper)],
  "events": [object(Event)],
  "verifications": [object(Verification)],
  "universal_ad_id": object(UniversalAdID),
  "companions": [object(Companion)],
  "interactive_file": object(InteractiveFile),
  "skip_metadata": object(SkipMetadata),
  "extensions": [],
}
Поля
seq number

Положение рекламы в рекламном блоке.
start number

Позиция в рекламном потоке, с которой начинается показ рекламы, в секундах.
duration number

Продолжительность рекламного ролика в секундах.
title string

Заголовок объявления (необязательно).
description string

Дополнительное описание объявления.
advertiser string

Необязательный идентификатор рекламодателя.
ad_system string

Дополнительная рекламная система.
ad_id string

Необязательный идентификатор объявления.
creative_id string

Необязательный идентификатор креатива.
creative_ad_id string

Необязательный идентификатор креативного объявления.
deal_id string

Необязательный идентификатор сделки.
clickthrough_url string

Необязательный URL-адрес для перехода по ссылке.
icons [object(Icon)]

Список значков, опускается, если он пуст.
wrappers [object(Wrapper)]

Список оберток. Опускается, если список пуст.
events [object(Event)]

Список событий, упомянутых в рекламе.
verifications [object(Verification)]

Дополнительные записи для проверки Open Measurement, в которых перечислены ресурсы и метаданные, необходимые для выполнения стороннего кода измерения с целью проверки воспроизведения креативов.
universal_ad_id object(UniversalAdID)

Дополнительный универсальный идентификатор объявления.
companions [object(Companion)]

Дополнительные материалы, которые могут отображаться вместе с этим объявлением (по желанию).
interactive_file object(InteractiveFile)

Дополнительный интерактивный креатив (SIMID), который должен отображаться во время воспроизведения рекламы.
skip_metadata object(SkipMetadata)

Необязательные метаданные для пропускаемых объявлений. Если задано, это указывает на то, что объявление можно пропустить, и включает инструкции по обработке события пропуска и отслеживания.
extensions string

Необязательный список всех узлов <Extension> в VAST.

Событие

Событие содержит информацию о типе события и времени его проведения.
JSON-представление
{
  "time": number,
  "type": string,
}
Поля
time number

Время начала презентации этого мероприятия.
type string

Тип данного события.

Субтитры

Атрибут Subtitle описывает дополнительный файл субтитров для видеопотока. Он хранит два формата субтитров: TTML и WebVTT. Атрибут TTMLPath содержит URL-адрес дополнительного файла TTML, а атрибут WebVTTPath аналогично содержит URL-адрес дополнительного файла WebVTT.
JSON-представление
{
  "language": string,
  "language_name": string,
  "ttml": string,
  "webvtt": string,
}
Поля
language string

Языковой код, например, «en» или «de».
language_name string

Описательное название языка. Оно позволяет отличить один набор субтитров от другого, если для одного и того же языка существует несколько наборов.
ttml string

Необязательный URL-адрес файла-дополнения TTML.
webvtt string

Необязательный URL-адрес файла-дополнения WebVTT.

SkipMetadata

SkipMetadata предоставляет информацию, необходимую клиентам для обработки событий пропуска для пропускаемых объявлений.
JSON-представление
{
  "offset": number,
  "tracking_url": string,
}
Поля
offset number

Параметр Offset указывает время в секундах, которое плеер должен подождать, прежде чем отобразится кнопка пропуска рекламы. Если этот параметр не указан в VAST, он опускается.
tracking_url string

В переменной TrackingURL содержится URL-адрес, который должен быть отправлен при событии skip.

Икона

Icon содержит информацию об иконке VAST.
JSON-представление
{
  "click_data": object(ClickData),
  "creative_type": string,
  "click_fallback_images": [object(FallbackImage)],
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "x_position": string,
  "y_position": string,
  "program": string,
  "alt_text": string,
}
Поля
click_data object(ClickData)

creative_type string

click_fallback_images [object(FallbackImage)]

height int32

width int32

resource string

type string

x_position string

y_position string

program string

alt_text string

ClickData

Данные ClickData содержат информацию о клике по значку.
JSON-представление
{
  "url": string,
}
Поля
url string

FallbackImage

FallbackImage содержит информацию о резервном образе VAST.
JSON-представление
{
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "alt_text": string,
}
Поля
creative_type string

height int32

width int32

resource string

alt_text string

Упаковка

Wrapper содержит информацию о рекламном объявлении-оболочке. Он не включает идентификатор предложения (Deal ID), если он отсутствует.
JSON-представление
{
  "system": string,
  "ad_id": string,
  "creative_id": string,
  "creative_ad_id": string,
  "deal_id": string,
}
Поля
system string

Идентификатор рекламной системы.
ad_id string

Идентификатор объявления, используемый для рекламной оболочки.
creative_id string

Для рекламного объявления-оболочки использован Creative ID.
creative_ad_id string

Идентификатор креатива, используемый для рекламного объявления-оболочки.
deal_id string

Необязательный идентификатор сделки для рекламного объявления-оболочки.

Проверка

В разделе «Верификация» содержится информация для Open Measurement, которая упрощает измерение видимости и верификацию сторонними сервисами. В настоящее время поддерживаются только ресурсы JavaScript. См. https://iabtechlab.com/standards/open-measurement-sdk/
JSON-представление
{
  "vendor": string,
  "java_script_resources": [object(JavaScriptResource)],
  "tracking_events": [object(TrackingEvent)],
  "parameters": string,
}
Поля
vendor string

Поставщик услуг по проверке.
java_script_resources [object(JavaScriptResource)]

Список ресурсов JavaScript для проверки.
tracking_events [object(TrackingEvent)]

Список событий отслеживания для проверки.
parameters string

Непрозрачная строка, передаваемая коду проверки начальной загрузки.

JavaScriptResource

JavaScriptResource содержит информацию для проверки с помощью JavaScript.
JSON-представление
{
  "script_url": string,
  "api_framework": string,
  "browser_optional": boolean,
}
Поля
script_url string

URI в JavaScript-код.
api_framework string

APIFramework — это название видеофреймворка, использующего код подтверждения.
browser_optional boolean

Можно ли запустить этот скрипт вне браузера?

Отслеживание событий

Класс TrackingEvent содержит URL-адреса, которые клиент должен проверять в определенных ситуациях.
JSON-представление
{
  "event": string,
  "uri": string,
}
Поля
event string

Тип события отслеживания.
uri string

Событие отслеживания, которое необходимо проверить с помощью команды ping.

UniversalAdID

UniversalAdID используется для предоставления уникального идентификатора рекламного креатива, который сохраняется во всех рекламных системах.
JSON-представление
{
  "id_value": string,
  "id_registry": string,
}
Поля
id_value string

Универсальный идентификатор объявления (Universal Ad ID) выбранного креатива для рекламы.
id_registry string

Строка, используемая для идентификации URL-адреса веб-сайта реестра, где каталогизирован универсальный идентификатор объявления выбранного рекламного материала.

Спутник

В разделе «Сопутствующие материалы» содержится информация о сопутствующих рекламных объявлениях, которые могут отображаться вместе с основным объявлением.
JSON-представление
{
  "click_data": object(ClickData),
  "creative_type": string,
  "height": int32,
  "width": int32,
  "resource": string,
  "type": string,
  "ad_slot_id": string,
  "api_framework": string,
  "tracking_events": [object(TrackingEvent)],
}
Поля
click_data object(ClickData)

Данные о кликах по этому сопутствующему товару.
creative_type string

Атрибут CreativeType у узла <StaticResource> в VAST указывает, является ли он компонентом типа static.
height int32

Высота этого спутника в пикселях.
width int32

Ширина этого компаньона в пикселях.
resource string

Для статических элементов и элементов iframe это будет URL-адрес, который будет загружен и отображен. Для элементов HTML это будет фрагмент HTML-кода, который должен отображаться в качестве элемента.
type string

Тип этого дополнения. Оно может быть статическим, iframe или HTML.
ad_slot_id string

Идентификатор слота для этого компаньона.
api_framework string

API-фреймворк для этого дополнения.
tracking_events [object(TrackingEvent)]

Список событий отслеживания для этого компаньона.

Интерактивный файл

Файл InteractiveFile содержит информацию об интерактивном креативе (т.е. SIMID), который должен отображаться во время воспроизведения рекламы.
JSON-представление
{
  "resource": string,
  "type": string,
  "variable_duration": boolean,
  "ad_parameters": string,
}
Поля
resource string

URL-адрес интерактивного рекламного материала.
type string

MIME-тип файла, предоставленного в качестве ресурса.
variable_duration boolean

Возможно ли, что автор данного творческого произведения попросит продлить срок действия?
ad_parameters string

Значение узла <AdParameters> в VAST.