Проверка ответа на ставку OpenRTB

Найдите в ответе пропущенные поля, цены неверного типа и забытые макросы.

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

Создаёт и поддерживает Udit Agarwal

Проверить запрос ставки

Об инструменте Проверка ответа на ставку OpenRTB

Ответ на ставку — короткая половина диалога OpenRTB, и почти всё, что в нём ломается, ломается структурно, а не хитро: ставка без impid, которая ни к чему не привязана, цена, отправленная строкой, креатив, так и не назвавший домен рекламодателя, или уведомление о выигрыше, забывшее макрос цены аукциона и потому сообщающее неверную цену закрытия. Валидатор проходит по ответу так, как это сделала бы биржа, отделяя поля, требуемые спецификацией, от тех, что на практике отвергают покупатели и площадки.

Возможности

  • Проверяет обязательные поля на уровне ответа, seatbid и ставки
  • Ошибки, предупреждения и заметки разделены, у каждой свой путь JSON
  • Проверка типов у цены, размеров, adomain и полей идентификаторов
  • Учёт версии для mtype, появившегося в OpenRTB 2.6
  • Отмечает уведомления о выигрыше без макроса цены и небезопасные URL
  • Проверяет ответы без ставки и их коды nbr
  • Находит повторяющиеся идентификаторы ставок и несколько ставок на один показ
  • Справочные таблицы причин отказа и типов носителя

Как использовать Проверка ответа на ставку OpenRTB

  1. Вставьте JSON, который вернул ваш биддер
  2. Выберите версию протокола, на которой работает биржа
  3. Сначала устраните ошибки, затем предупреждения
  4. По пути JSON у каждой находки отыщите нужную ставку

Пример

Ввод

{ "id": "1", "seatbid": [{ "bid": [{ "id": "b1", "impid": "1", "price": "2.15" }] }] }

Результат

error seatbid[0].bid[0].price — price has to be a number, not a string

Цена в кавычках — самая частая причина, по которой ставку молча отбрасывают.

Частые ошибки и устранение неполадок

  • Здесь ставка корректна, а биржа всё равно её отбрасывает. — Биржи добавляют собственные требования: знакомый идентификатор seat, категории из конкретной таксономии или уже одобренный креатив.
  • Предупреждение об adomain для собственной рекламы. — Заполните его всё равно. Площадки блокируют по домену рекламодателя, и без него ставку часто отбрасывают раньше всего остального.
  • mtype отмечается на интеграции 2.5. — Он появился в OpenRTB 2.6, и биржа на 2.5 его игнорирует. Переключите версию на ту, что реально используется.
  • Пустой массив seatbid даёт лишь предупреждение. — Потому что это допустимо, но бесполезно. Чисто отказаться можно кодом HTTP 204 или ответом с кодом nbr.

Часто задаваемые вопросы

Какие поля обязательны в ответе на ставку OpenRTB?
В ответе нужен id, повторяющий идентификатор запроса. В каждой ставке нужны id, impid, соответствующий показу, цена и креатив в виде adm или nurl.
Что означает поле nbr?
Причина отказа от ставки. Это целочисленный код, поясняющий, почему ставки не было: 2 — некорректный запрос, 8 — неизвестный пользователь.
Зачем в nurl нужен макрос AUCTION_PRICE?
Потому что при выигрыше биржа подставляет туда цену закрытия. Без макроса уведомление уходит без цены, и в логах остаётся ставка, а не фактическая оплата.
Чем adm отличается от nurl?
adm несёт креатив прямо в ответе, а nurl — это адрес, по которому биржа заберёт его при выигрыше. Сегодня чаще используют встроенный вариант.
Заменяет ли mtype что-то из 2.5?
Он делает явным то, что раньше выводилось. В 2.5 тип носителя определялся объектом показа, что ломалось на мультиформатных показах.

Связанные инструменты

  • Валидатор OpenRTB — Проверьте bid request OpenRTB 2.5 и 2.6 по правилам IAB в браузере.
  • Генератор OpenRTB — Соберите корректный bid request OpenRTB 2.5 или 2.6 из простой формы.
  • Enum OpenRTB — Ищите перечислимые списки OpenRTB 2.x — каждый код с его значением.
  • Валидатор VAST — Проверьте VAST XML по правилам IAB прямо в браузере.
  • Генератор Prebid — Соберите конфиг ad unit Prebid.js и сниппет pbjs.addAdUnits().
  • Сборщик schain — Соберите и проверьте объект IAB SupplyChain для OpenRTB.

Другие инструменты: Программатическая реклама

  • Валидатор VAST — Проверьте VAST XML по правилам IAB прямо в браузере.
  • Инспектор VAST — Разберите VAST-тег на InLine/Wrapper, медиафайлы и трекинг-URL.
  • Коды ошибок VAST — Найдите любой код ошибки IAB VAST или VPAID с его значением и причиной.
  • Макросы VAST — Раскройте макросы VAST 4.x в трекинг-URL и посмотрите итоговый запрос.
  • Валидатор VMAP — Проверьте паузы VMAP AdBreak и покажите pre-, mid- и post-roll на таймлайне.
  • Валидатор OpenRTB — Проверьте bid request OpenRTB 2.5 и 2.6 по правилам IAB в браузере.
  • Генератор OpenRTB — Соберите корректный bid request OpenRTB 2.5 или 2.6 из простой формы.
  • Enum OpenRTB — Ищите перечислимые списки OpenRTB 2.x — каждый код с его значением.
  • Декодер TCF — Декодируйте строку согласия IAB TCF v2.2 в CMP, цели и вендоров.
  • Декодер GPP — Декодируйте строку IAB GPP — заголовок, gpp_sid и каждую секцию.
  • Декодер US Privacy — Декодируйте строку CCPA us_privacy — уведомление, opt-out и LSPA.
  • Кодировщик TCF — Соберите строку согласия IAB TCF v2.2 из настроек CMP и id вендоров.

Все инструменты: Программатическая реклама (23) · Все инструменты