Видеообъявления

В этом руководстве описываются требования к интеграции, конфигурация и соответствующие поля, которые вы можете использовать при размещении ставок на видеоинвентарь.

Google поддерживает in-stream, нативную и полноэкранную видеорекламу, представленную в виде отдельных рекламных возможностей или динамических рекламных модулей. Динамические модули представляют собой группу видеорекламы, показываемую последовательно, при этом максимальная продолжительность модуля делится на один или несколько видеороликов разной длительности. Подробнее об этих форматах см. в руководствах по форматам нативной и полноэкранной рекламы.

Требования покупателя

Протокол RTB

В этом руководстве в основном будет использоваться формат Protobuf, но имена полей и пути в нем и в формате JSON эквивалентны, если не указано иное.

Прототип OpenRTB и расширения OpenRTB для Google можно найти на странице «Прототипы и справочные данные» . Подробнее о разработке биддера см. в разделе «Обработка запроса и формирование ответа» .

Творческий обзор

Google рекомендует отправлять креативы на утверждение, прежде чем делать ставки. Вы можете использовать ресурс Creatives в Real-time Bidding API, чтобы начать процесс проверки.

Конфигурация предварительного нацеливания

Чтобы получить видеоинвентарь, в вашей учетной записи Авторизованного покупателя должна быть создана конфигурация предварительного таргетинга , включающая видеоинвентарь.

Макросы

Макросы можно указать либо в URL-адресе видео, либо в XML-коде VAST, указанном в BidResponse.seatbid.bid.adm . Кроме того, если вы указываете URL-адрес видео, вы также можете разместить макросы в связанном XML-документе VAST. Для видеообъявлений поддерживаются следующие макросы:

  • %%CACHEBUSTER%%
  • %%WINNING_PRICE%%
  • %%SITE%%

Макросы кликов, такие как CLICK_URL_ESC не поддерживаются, поскольку Authorized Buyers включает свои трекеры кликов в оболочку VAST. Подробнее о поддерживаемых макросах см. в разделе «Указание макросов» .

Подробности вызова

Поле OpenRTB BidRequest.imp.video позволяет определить, относится ли входящий запрос ставки к видеоинвентарю in-stream или intersitial, а также найти дополнительную информацию о запросе, связанную с видео. Кроме того, для инвентаря нативной рекламы можно использовать BidRequest.imp.native.{request/request_native}.assets.video для получения аналогичной информации, связанной с видео.

BidRequest.{app/site}.content.producer.domain

URL-адрес страницы с описанием видеоконтента (без параметров). Издатель отправляет этот URL в Google. Например:

http://www.publisher.com/watchpagelink
banner.vcm
Если установлено значение true , сопутствующая реклама может быть выбрана для отображения в качестве завершающей (информационной карточки) в видеослоте после завершения воспроизведения видеорекламы. В противном случае сопутствующая реклама не отображается в качестве завершающей.
BidRequest.imp.rwdd
Если установлено значение true , это означает, что пользователь получает вознаграждение за просмотр видеорекламы. Типичным вознаграждением может быть бесплатное прочтение дополнительной статьи, получение дополнительной жизни в игре или спонсируемая музыкальная сессия без рекламы.
BidRequest.imp.video.maxduration

Максимально допустимая длительность (в секундах) для каждого отдельного объявления, включённого в ответ на запрос ставки. Если не задано, максимальная длительность отсутствует. Если BidRequest.imp.video.skip имеет true , поведение может отличаться. Подробнее см. в разделе «Максимальная продолжительность пропускаемого видео» .

BidRequest.imp.video.maxseq

Максимальное количество объявлений, которые могут быть показаны в динамическом видеомодуле. Если poddur задан, но maxseq не задан или 0 , ограничений на количество объявлений, которые могут быть показаны в видеомодуле, нет. Google поддерживает только динамические модули.

Фактическое количество показываемых видеореклам может быть меньше или равно этому значению, но не может его превышать.

BidRequest.imp.video.minduration
Минимальная продолжительность (в секундах) для каждого отдельного объявления, включённого в ответ на заявку. Если этот параметр не задан, минимальная продолжительность отсутствует.
BidRequest.imp.video.plcmt
Описывает, где будет воспроизводиться видео.
PLCMT_UNKNOWN Размещение неизвестно или не поддается определению.
PLCMT_INSTREAM Реклама в начале, середине и конце ролика, которая воспроизводится до, во время или после просмотра потокового видеоконтента, запрошенного потребителем. Встроенное видео должно быть включено по умолчанию при запуске проигрывателя или явно указывать на намерение пользователя посмотреть видеоконтент. Несмотря на то, что вокруг проигрывателя может быть другой контент, видеоконтент должен быть в центре внимания пользователя. Он должен оставаться основным контентом на странице и единственным видеоплеером в поле зрения, способным воспроизводить звук во время воспроизведения. Если проигрыватель становится плавающим/закрепленным, последующие вызовы рекламы должны точно отражать обновленный размер проигрывателя.
PLCMT_ACCOMPANYING_CONTENT Реклама в начале, середине и конце ролика, которая воспроизводится до, во время или после трансляции потокового видеоконтента. Видеоплеер загружается и воспроизводится до, между или после абзацев текстового или графического контента и начинает воспроизведение только при его появлении в области просмотра. Сопутствующий контент должен воспроизводиться только при появлении в области просмотра. При прокрутке страницы он может преобразовываться в плавающий/закрепленный плеер.
PLCMT_INTERSTITIAL Видеореклама, воспроизводимая без видеоконтента. Во время воспроизведения она должна быть основным объектом внимания на странице, занимать большую часть области просмотра и не выходить за её пределы. Это могут быть такие места размещения, как видео в приложениях или слайд-шоу.
PLCMT_NO_CONTENT_STANDALONE Видеореклама, воспроизводимая без потокового видеоконтента. Она может размещаться в слайд-шоу, нативных лентах, внутри контента или быть прикрепленной/плавающей.
BidRequest.imp.video.playbackmethod
Описывает, как воспроизводить видеорекламу. Метод воспроизведения определяется на основе наилучших доступных измерений: автоматическое воспроизведение или воспроизведение по клику.
AUTO_PLAY_SOUND_ON Запускается при загрузке страницы со звуком.
AUTO_PLAY_SOUND_OFF Запускается при загрузке страницы, звук выключен.
CLICK_TO_PLAY Запускается по щелчку со звуком.
MOUSE_OVER Запускается при наведении курсора мыши со включенным звуком.
ENTER_SOUND_ON Запускается при входе в область просмотра со включенным звуком.
ENTER_SOUND_OFF Запускается при входе в область просмотра, звук по умолчанию отключен.
BidRequest.imp.video.skip
Если true , это означает, что проигрыватель разрешит пропускать видео или что пропуск рекламы разрешен. В противном случае это означает, что пропуск рекламы запрещен.
BidRequest.imp.video.startdelay

Значение 0 означает пре-ролл, -1 означает середину-ролл и -2 означает пост-ролл.

Любое другое положительное значение — это время в секундах от начала видео до момента показа рекламы.

BidRequest.imp.video.durfloors и BidRequest.imp.audio.durfloors

Массив объектов DurFloors , указывающий соответствующие минимальные цены на видео- или аудиорекламу различной длительности, по которым покупатель может делать ставки.

Ниже приведен пример того, как будут выглядеть durfloors указанные Google:

  1. {"maxdur": 16, "bidfloor": 5} что соответствует (0, 16) секунд по цене $5 .
  2. {"mindur": 16, "maxdur": 31, "bidfloor": 10} что составляет [16, 31) секунд по цене $10 .
  3. {"mindur": 31, "bidfloor": 20} что составляет [31, inf) секунд по цене $20 .

Эти сигналы характерны не только для видеорекламы, но особенно ценны для участников торгов:

BidRequest.device.ifa
Это поле представляет собой 36-символьный UUID, который устанавливается только при использовании SSL и не хешируется. Это незашифрованная версия BidRequest.device.dpidm5 . Для устройств iOS оно содержит идентификатор рекламодателя (IDFA) заглавными буквами. Для устройств Android оно содержит идентификатор Android (ADID) строчными буквами. Для устройств Connected TV оно содержит их уникальные идентификаторы (например, RIDA от Roku).
BidRequest.device.devicetype
Указывает тип устройства.
MOBILE Устаревший псевдоним для HIGHEND_PHONE или TABLET.
PERSONAL_COMPUTER Включает настольные компьютеры и ноутбуки.
CONNECTED_TV включают в себя как подключенные телевизоры (то есть смарт-телевизоры), так и подключенные устройства (такие как Roku, Apple TV и т. д.).
HIGHEND_PHONE Включает в себя высококлассные телефоны.
TABLET Включая планшетные устройства.
CONNECTED_DEVICE Включает в себя специализированные игровые устройства.
SET_TOP_BOX Включая телевизионные приставки.
OOH_DEVICE Включает в себя наружные рекламные устройства, например, цифровые рекламные щиты.
BidRequest.device.make
Указывает марку устройства (например, Nokia или Samsung).
BidRequest.device.model
Указывает точную модель устройства (например, N70 или Galaxy), если она доступна, в противном случае содержит обобщенную модель, например «iphone» или «ipad».
BidRequest.imp.metric
Если Metric.type задано значение completion_rate , Metric.value будет представлять собой дробное число в диапазоне [0,0, 1,0], представляющее собой историческую долю просмотров видеорекламы, показанной в рекламном блоке. Значение по умолчанию -1.0 означает, что исторические данные о досмотре недоступны.
BidRequest.imp.video.poddur
Продолжительность (в секундах), которую можно заполнить блоком динамической видеорекламы. Это поле определяет продолжительность всей рекламной паузы. Если значение не задано, рекламный блок не входит в блок.

Запрос ставки для видео также содержит информацию об инвентаре, такую ​​как вертикаль, разрешенные поставщики и информация о канале. Все остальные поля в запросе ставки также применяются к видео.

Поля ширины и высоты в сообщении AdSlot видеозапроса соответствуют размерам проигрывателя видеорекламы.

BidRequest.imp.ext.allowed_vendor_type
Разрешенные поставщики. Список идентификаторов см. в файле vendors.txt в технической документации. Например, 309 = DFA Video Unit.
BidRequest.imp.video.mimes
Список разрешенных типов MIME-контента, описывающий поддерживаемые типы контента для рекламы, показываемой в ответ на запрос ставки; например, «video/mp4». В ответе на запрос ставки должна быть указана поддержка хотя бы одного из них.
BidRequest.imp.video.protocols
Описывает поддерживаемые издателем версии VAST для запросов видеорекламы. Содержит массив значений перечисления Protocol , включая: VAST_2_0 , VAST_3_0 , VAST_2_0_WRAPPER , VAST_3_0_WRAPPER , VAST_4_0 , VAST_4_0_WRAPPER и другие.
BidRequest.imp.video.companionad
Это поле включает массив объектов Banner , представляющих сопутствующие рекламные объявления, если они доступны.
BidRequest.site.page

URL-адрес страницы просмотра видео или URL-адрес страницы, на которую встроено видео. Например:

http://www.publisher.com/watchpagelink

При ответе на видеозапрос участник торгов должен вернуть URL-адрес перенаправления VAST или XML-код VAST в поле BidResponse.seatbid.bid.adm . Ответ на запрос ставки также должен содержать корректное объявление о видеорекламе. Ниже представлен фрагмент корректного ответа на запрос ставки по видеорекламе:

id: "n40G42d551UX18627ao8lt"
seatbid {
  bid {
    id: "17u6BnD62h88r5q7066"
    impid: "1"
    price: 0.797848
    adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%"
    adomain: "google.com"
    crid: "test_creative_id_987914"
    w: 320
    h: 480
    cattax: GOOGLE_CATEGORIES
    [com.google.doubleclick.bid] {
      attribute: 47
      attribute: 50
      billing_id: 55383762512
      skadn {
        version: "4.0"
        network: "306el65O"
        itunesitem: "832461214"
        sourceapp: "977150768"
        fidelities {
          fidelity: VIEW_THROUGH_ADS
          nonce: "0054e0b9-0b53-4426-99dd-a1eefeb45565"
          timestamp: "1757329316673"
          signature: "oE3Ek8347oZV1Yl1J42G2c88BSKr2dqEbiOK2S4ni7NVDh3v128NN0hlzWK5aX96ecV1504E9k288i0t0wGX73P317812WE7"
        }
        fidelities {
          fidelity: STOREKIT_RENDERED_ADS
          nonce: "0054e0b9-0b53-4426-99dd-a1eefeb45565"
          timestamp: "1757329316673"
          signature: "b1GqXA4v889p842512GQ1p3249q5VmPt1335f1H1zdK92fq24j7a7ml419W7u8B7rhhH97s507f2251923oWi89XF1voZv4b"
        }
        sourceidentifier: "8396"
      }
      app_promotion_type: INSTALLS
      clickurl: "google.com"
    }
  }
}
[com.google.doubleclick.bid_response] {
  processing_time_ms: 20
}

Важные поля в ответе на заявку по видео:

BidResponse.seatbid.bid.ext.attribute
Атрибуты объявлений, которые могут быть показаны из этого фрагмента. Список идентификаторов см. в файле buyer-declarable-creative-attributes.txt . Мы проверяем, чтобы ни один из этих атрибутов не соответствовал атрибутам, запрещённым издателем в запросе ставки. Например, если какое-либо из полей содержит 30 , это будет означать, что для отображения объявления требуется поддержка VPAID.
BidResponse.seatbid.bid.adm

Для видеорекламы это URL-адрес перенаправления VAST. Например:

http://ad.doubleclick.net/pfadx/N270.132652.1516607168321/B3442378.3;dcadv=1379578;sz=0x0;ord=79879;dcmt=text/xml

Альтернативно, это может быть необработанный VAST XML.

Примеры запросов и ответов на предложения

Форматы видео

Как покупатели могут включить видео

В следующих таблицах показаны способы, с помощью которых покупатели могут включать видео в свои объявления, а также места размещения, где их можно показывать на веб-сайтах и ​​в мобильных приложениях соответственно.

Интернет

Видео креатив В потоке (все) В ленте/статье Нативная лента/статья Интерстициальный В баннере

VPAID + VAST

ОГРОМНЫЙ

MRAID + JS

Пользовательский JS

Нативный + VAST

Мобильное приложение

Видео креатив В потоке (все) В ленте/статье Нативная лента/статья Интерстициальный В баннере

VPAID + VAST

ОГРОМНЫЙ

MRAID + JS

Пользовательский JS

Нативный + VAST

Ключ: Формат/технология недоступны

Видеокреативы принимаются в этом месте размещения, но подлежат блокировке издателями

Видеокреатив недоступен для этого размещения

Рекомендуемые сигналы OpenRTB

В следующих таблицах показаны рекомендуемые сигналы OpenRTB для всех форматов видео для настольных компьютеров, мобильных веб-сайтов и мобильных приложений .

Десктопный и мобильный веб

Формат видео Рекомендуемые сигналы (только сигналы, относящиеся к видео) Связанные сигналы (только сигналы, относящиеся к видео)

Встроенный (VPAID)

ВИДЕО-объект присутствует и
video.placement = INSTREAM &


Instream (без VPAID)

ВИДЕО-объект присутствует и
video.placement = INSTREAM &
video.api = 1 VPAID 1.0 or 2:VPAID 2.0


Не-в-стриме

Присутствует ВИДЕО-объект

video.linearity: linear
размещение зависит от фактического
размещение, значения указаны ниже
Video.startdelay = 0


В подаче

ВИДЕО-объект присутствует и
video.placement = IN-FEED


В статье

ВИДЕО-объект присутствует и
video.placement = IN-ARTICLE


Родной

Присутствует объект NATIVE &


В баннере

Видеообъект отсутствует &
banner.battr ≠ 6 Видео в баннере (автоматическое воспроизведение) и
banner.battr ≠ 7 Видео в баннере (инициированное пользователем)


Мобильное приложение

Формат видео Подробности запроса на ставку (только информация, относящаяся к видео)

Инстрим

ВИДЕО-объект присутствует и
video.placement = INSTREAM &

video.api = 1 VPAID 1.0 или 2 : VPAID 2.0

Не-в-стриме

Присутствует ВИДЕО-объект

video.linearity: linear
размещение зависит от фактического
размещение, значения указаны ниже
Video.startdelay = 0


В подаче

ВИДЕО-объект присутствует и
video.placement = IN-FEED


В статье

ВИДЕО-объект присутствует и
video.placement = IN-ARTICLE


Родной

Присутствует объект NATIVE &


Интерстициальный (VAST)

ВИДЕО-объект присутствует и
video.placement = INTERSTITIAL


Межстраничный (без VAST)

ВИДЕО-объект присутствует и
video.placement = INTERSTITIAL

Отфильтровано

Внутрибаннерный (MRAID)

Видеообъект отсутствует &
banner.battr ≠ 6 Видео в баннере (автоматическое воспроизведение) и
banner.battr ≠ 7 Видео в баннере (инициированное пользователем)


В баннере

(без MRAID)

Видеообъект отсутствует &
banner.battr ≠ 6 Видео в баннере (автоматическое воспроизведение) и
banner.battr ≠ 7 Видео в баннере (инициированное пользователем)


Как издатели могут разрешить/запретить видео

В следующей таблице показаны способы, с помощью которых издатели могут разрешить/запретить видео в своих местах размещения.

Вариант паба Применимые форматы Описано в запросе на тендер как

Укажите Instream видео как единицу

В потоке (все)

Видеообъект присутствует и
video.placement = INSTREAM

Подключиться к VPAID

Instream веб

Видеообъект присутствует и
video.api = 1 (VPAID 1.0) или 2 (VPAID 2.0)

Вступить в IBV

В баннере

Интерстициальный

banner.battr ≠ 6 видео в баннере (автоматическое воспроизведение) и/или 7 видео в баннере (инициированное пользователем)

Подписаться на ( инструкции )

В подаче

В статье

Видеообъект присутствует и
video.placement = IN-FEED или IN-ARTICLE

Подписаться на Non-in-stream ( инструкции )

Родной

Присутствует родной объект

Блок видеоинтерстициальной рекламы

Интерстициальное приложение

Объект ВИДЕО отсутствует

Крайние случаи

# Описание дела Комментарии Запрос предложения

1

Отложенное пользовательское закрытие с использованием MRAID

Для полноэкранных объявлений закрытие рекламы может отправить покупателю уведомление с помощью MRAID, даже если он не использовал пользовательское закрытие.


Примененный авторизованными покупателями значок X всегда будет отображаться поверх любого пользовательского закрытия, даже если пользовательское закрытие появится ниже через 5 секунд.


Глоссарий

См. видеоглоссарий «Авторизованные покупатели» .

Соответствующие поля для форматов Instream и Non-Instream

См. OpenRTB 2.5 (начиная со страницы 47)

BidRequest.Video.
Placement
Инстрим mWeb

1 : В потоке
2 : В баннере

mApp

1 : В потоке
2 : В баннере

Не-в-стриме mApp Interstitial

5 : Интерстициальный

Native

3 : Внутри статьи
4 : Входящая подача

Rewarded

rwdd : bool

linearity

Указывает, должно ли впечатление быть линейным, нелинейным и т. д. Если ничего не указано, предполагается, что разрешены все варианты.

Инстрим mWeb

1 : LINEAR (в потоке)

mApp

1 : LINEAR (в потоке)

Не-в-стриме mApp Interstitial

2 : INTERSTITIAL

Native

3 : IN_FEED
5 : IN_ARTICLE

videoad_start_delay
Инстрим mWeb

>0: start delay in seconds
0: PRE_ROLL
-1: GENERIC_MID_ROLL
-2: GENERIC_POST_ROLL

mApp

>0: start delay in seconds
0: PRE_ROLL
-1: GENERIC_MID_ROLL
-2: GENERIC_POST_ROLL

Не-в-стриме Rewarded

>0: start delay in seconds
0: PRE_ROLL
-1: GENERIC_MID_ROLL
-2: GENERIC_POST_ROLL

Источник значения запроса ставки

OpenRTB
Объект
Поля Авторизованные покупатели
/Обмен
Торги
Не-в-стриме
Примеры значений Кто это определяет?
/Откуда берётся это значение?
от?
Объект
Видео мимов да ["приложение/javascript",
"видео/mp4"]",
Google
мышление нет Настроено издателем
максимальная продолжительность да Настроено издателем
playbackmet
ход
да [6] Обычно Издатель
Настроено
API (MRAID) да [1,2] Google
протоколы да [2,3,5,6,7,8] Google
линейность да [1] Google
размещение да [1] Google
ширина игрока да 400,400,300 Google
рост игрока да 225,300,153 Google
задержка старта да 0 Google, по умолчанию 5 сек.
пропускать да 1 Издатель/Google
- для Interstitial => Google
- для Instream => Издатель
решает, разрешить ли
пропускаемые, не пропускаемые или оба варианта.
Реклама с вознаграждением, всегда без пропуска;
минимальный битрейт Нет Google
максимальный битрейт нет Google
поз да 1 Google
Устройство
соотношение Px да 1 Google
впечатление
Безопасный да 1 Google
по умолчанию true
потому что adtag всегда
безопасный