OpenRTB ломается не в шине, а в кривом маппинге полей между SSP и DSP
Почти все ошибки интеграции сводятся к трём зонам: bidRequest.imp, device/user и ext. Если у вас в imp есть несколько форматов, проверьте, что каждый bidder видит только свой тип креатива, а не «всё подряд». Для video отдельно смотрите placement, mimes, minduration/maxduration, skip, protocols; для native — assets и eventtrackers.
В device чаще всего теряются ifa/idfa/aaid, ua и ip-логика. Не смешивайте пустое значение с отсутствующим полем: для части DSP это разные сигналы. В user не отправляйте лишние идентификаторы без консистентного consent-механизма; если есть eids, следите за их структурой и соответствием partner source.
Поле ext — не свалка для «потом разберём». Всё, что уходит в кастомные расширения, должно быть документировано: какие ключи обязательны, какие типы значений допустимы, что делать при неизвестном поле. Иначе одна сторона тихо начнёт игнорировать объект, а другая будет считать, что данные передаются.
Перед запуском сверяйте три вещи: схема JSON, обязательность полей и поведение при null/empty. Если хотя бы один из этих пунктов не формализован, у вас не OpenRTB-интеграция, а набор допущений.
AdTech Pulse — SSP / DSP / OpenRTB
@adtech_pulse_aff
OpenRTB ломается не в шине, а в кривом маппинге полей между SSP и DSP
Этот пост опубликован в Telegram-канале AdTech Pulse — SSP / DSP / OpenRTB. Подписаться можно по ссылке: @adtech_pulse_aff.