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

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

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

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

RTB-протокол

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

Вы можете найти прототип OpenRTB и специфичные для Google расширения OpenRTB на странице Protos и справочных данных . Для получения дополнительной информации о разработке торгующего см. раздел Обработка запроса и построение ответа .

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

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

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

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

Макросы

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

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

Макросы кликов, такие как CLICK_URL_ESC не поддерживаются, поскольку Authorized Buyers включает свои трекеры кликов в оболочку VAST. Для получения дополнительной информации о поддерживаемых макросах см. Укажите макросы .

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

Вы можете использовать поле OpenRTB BidRequest.imp.video , чтобы определить, относится ли входящий запрос ставки к инвентарю in-stream или intersitial video, и найти дополнительную информацию о запросе, связанную с видео. Кроме того, для инвентаря нативной рекламы вы можете использовать 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 Реклама в начале, середине и конце ролика, которая воспроизводится до, во время или после потокового видеоконтента, запрошенного потребителем. Видео 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: "79N7F1708654i75q3k69j1"
seatbid {
  bid {
    id: "1gR655162hOsH9q3X6R"
    impid: "1"
    price: 2.3833
    adid: "test_creative_id_648299"
    adm: "https://video.test.com/ads?id=123456&wprice=%%WINNING_PRICE%%"
    adomain: "google.com"
    crid: "test_creative_id_648299"
    attr: VIDEO_IN_BANNER_AUTO_PLAY
    w: 1920
    h: 1080
    [com.google.doubleclick.bid] {
      event_notification_token {
        payload: "token"
      }
      billing_id: 11004606416
      skadn {
        version: "4.0"
        network: "O5O88B57"
        itunesitem: "509167749"
        nonce: ""
        sourceapp: "com.google.testapp"
        timestamp: "OMITTED"
        signature: "OMITTED"
        fidelities {
          fidelity: VIEW_THROUGH_ADS
          nonce: "d3be52b1-8ef6-4277-8922-54450b07fd5b"
          timestamp: "1730409097616"
          signature: "8d52E359K158Dj1u89EpLP3544Qz7B10CV0a92YZJ6JXX8d9uXi72N43ZxjRl96Ph7v8R5u1k5y9Aoy3jZcN3C5dxRU390qc"
        }
        fidelities {
          fidelity: STOREKIT_RENDERED_ADS
          nonce: "d3be52b1-8ef6-4277-8922-54450b07fd5b"
          timestamp: "1730409097616"
          signature: "43C2b79X4nPY913Qs3jJLLhCjUNZg39cK022pCE2wH731Ie7q4584b5UGG137Jh12I2R6a0e35LJbvQJbn5o564roQ7G1Mtd"
        }
        sourceidentifier: "1"
      }
      app_promotion_type: INSTALLS
    }
  }
  seat: "1061:9160:833989"
}
bidid: "m7V3rjn0-aF599ZZ6-37hA-b9o7DU8CLrtp"
cur: "USD"

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

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


Не-in-stream

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

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


В-подача

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


В статье

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


Родной

НАТИВНЫЙ объект присутствует и


В баннере

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


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

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

В потоке

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

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

Не-in-stream

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

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


В-подача

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


В статье

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


Родной

НАТИВНЫЙ объект присутствует и


Интерстициальный (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

Встроенный веб

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

Подпишитесь на IBV

В баннере

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

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

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

В-подача

В статье

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

Подпишитесь на Non-instream ( инструкции )

Родной

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

Блокировка видео вставки

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

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

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

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

1

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

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


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


Глоссарий

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

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

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

BidRequest.Видео.
Placement
В потоке mWeb

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

mApp

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

Не-in-stream mApp Interstitial

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

Native

3 : В статье
4 : Входящая подача

Rewarded

is_rewarded_inventory : расширение OpenRTB bool

linearity

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

В потоке mWeb

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

mApp

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

Не-in-stream 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

Не-in-stream Rewarded

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

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

OpenRTB
Объект
Поля Авторизованные покупатели
/Обмен
Торги
Не-in-stream
Примеры значений Кто это определяет?
/Откуда берется это значение
от?
Объект
Видео мимы да ["приложение/javascript",
"видео/mp4"]",
Google
мышление нет Издатель настроен
макс.продолжительность да Издатель настроен
воспроизведениемет
ход
да [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 всегда
безопасный