Веб-реклама. Запрос из OpenRTB-хоста

Предложение участвовать в аукционе передается методом POST в формате JSON (Content-Type: application/json).

Тело запроса

В теле запроса содержится объект Bid Request. Его параметры характеризуют сайт, конечное устройство, потребителя. Эти характеристики помогают DSP подобрать рекламу и ставку.

{
  "id": "(string)",
  "user": {
    "buyeruid": "(string)",
    "id" : "(string)",
    "ext": {
      "consent": "(string)"
    }
  },
  "cur": [
    "(array of strings)"
  ],
  "bcat": [
    "(array of strings)"
  ],
  "imp": [
    {
      "secure": "(int)",
      "bidfloor": "(float)",
      "bidfloorcur": "(string)",
      "banner": {
        "format": [
          {
            "h": "(int)",
            "w": "(int)"
          }
        ],
        "h": "(int)",
        "w": "(int)"
      },
      "id": "(string)",
      "ext": {
        "unmoderated": "(int)"
      },
      "tagid": "(string)",
      "instl": "(int)"
    }
  ],
  "tmax": "(int)",
  "site": {
    "page": "(string)",
    "domain": "(string)",
    "publisher": {
      "id": "(string)"
    },
    "id": "(string)",
    "content": {
      "language": "(string)"
    }
  },
  "device": {
    "lmt": "(int)",
    "geo": {
      "country": "(string)"
    },
    "os": "(string)",
    "ip": "(string)",
    "ipv6": "(string)",
    "ua": "(string)",
    "devicetype": "(int)",
    "mccmnc": "(string)",
    "ifa": "(string)",
    "dnt": "(int)",
    "ext": {
      "oaid": "(string)",
      "gaid": "(string)",
      "idfa": "(string)"
    }
  },
  "regs": {
    "coppa": "(int)",
    "ext": {
      "gdpr": "(int)",
      "nroa": {
        "version": "(string)",
        "mandatory": "(bool)"
      }
    }
  },
  "source": {
    "fd": "(int)",
    "sourcetype": "(int)",
    "tid": "(string)",
    "ext": {
      "schain": {
        "complete": "(int)",
        "nodes": [
          {
            "asi": "(string)",
            "sid": "(string)",
            "hp": "(int)",
            "rid": "(string)"
          }
        ],
        "ver": "(string)"
      }
    }
  },
  "at": "(int)",
  "test": "(int)",
  "ext": {
    "notifications": {
      "lurl": "(int)",
      "nurl": "(int)"
    }
  }
}

Параметры запроса

Bid Request object

Параметр

Описание

Обязательность

id

Идентификатор аукциона, присвоенный RTB-хостом. DSP возвращает этот идентификатор в ответе.

да

user

Информация о покупателе рекламы в объекте User.

да

ext

Объект Ext с дополнительными параметрами.

нет

cur

Список валют для ставок. Передаются следующие параметры:

  • RUB — российский рубль;
  • USD — американский доллар;
  • EUR — евро;
  • CHF — швейцарский франк;
  • TRY — турецкая лира;
  • UAH — украинская гривна;
  • KZT — казахстанский тенге.

да

bcat

Категории заблокированных рекламодателей согласно классификации IAB.

нет

imp

Массив объектов Imp, которые содержат параметры визуализации баннера. Каждый объект соответствует одному рекламному блоку на HTML-странице. В текущей реализации передается один объект.

да

tmax

Максимальное время ответа в миллисекундах, в течение которого нужно сделать ставку, с учетом задержки в интернете.

да

site

Информация о сайте в объекте Site.

да

app

Информация о приложении в объекте App.

да

device

Информация о конечном устройстве в объекте Device.

да

regs

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

нет

at

Тип аукциона. Возможные значения:

  • 1 — аукцион первой цены;
  • 2 — аукцион второй цены.

нет

test

Индикатор тестового режима. Возможные значения:

  • 0 — отправка реального трафика;
  • 1 — отправка тестового трафика.

нет

source

Информация о источнике запроса в объекте Source.

да

Ext object

Параметр

Описание

Обязательность

notifications

Объект Ext.Notifications с URL-адресами уведомлений о выигрыше или проигрыше ставки.

нет

Ext.Notifications object

Параметр

Описание

Обязательность

lurl

Вероятность вызова ссылки-уведомления о проигрыше. Возможные статусы:

  • 0 — нет;
  • 1 — да;
  • 2 — возможно.

нет

nurl

Вероятность вызова ссылки-уведомления о выигрыше. Возможные статусы:

  • 0 — нет;
  • 1 — да;
  • 2 — возможно.

нет

Imp object

Параметр

Описание

Обязательность

secure

Тип соединения. Возможные варианты:

  • 0 — незащищенное соединение (HTTP);
  • 1 — защищенное соединение (HTTPS).

нет

bidfloor

Минимальная стоимость показа для текущего аукциона, указанная в формате CPM.

да

bidfloorcur

Буквенный код валюты в формате ISO-4217. Может отличаться от валюты предложения, возвращенной участником торгов, если это разрешено биржей.

да

banner

Объект Imp.Banner с размерами рекламного блока по умолчанию.

да

id

Идентификатор рекламного блока на HTML-странице.

да

ext

Объект Imp.Ext с дополнительными параметрами.

да

tagid

Идентификатор места размещения объявления.

да

instl

Тип рекламы. Возможные варианты:

  • 0 — неполноэкранная реклама;
  • 1 — полноэкранная реклама.

да

displaymanager

Название монетизатора или SDK.

нет

displaymanagerver

Версия монетизатора или SDK.

да

clickbrowser

Тип браузера, открываемого при нажатии на креатив в приложении. Возможные значения:

  • 0 — встроенный браузер;
  • 1 — нативный браузер.

да

video

Объект Imp.Video с параметрами показа видео.

нет

Imp.Banner object

Параметр

Описание

Обязательность

format

Объект Imp.Banner.Format с допустимыми размерами рекламного блока.

да

h

Высота блока в пикселях.

да

w

Ширина блока в пикселях.

да

Imp.Banner.Format object

Параметр

Описание

Обязательность

h

Высота блока в пикселях.

да

w

Ширина блока в пикселях.

да

Imp.Video object

Параметр

Описание

Обязательность

mimes

Поддерживаемые типы контента MIME.

да

protocols

Поддерживаемые протоколы передачи видео.

нет

h

Высота видеоплеера в пикселях.

нет

w

Ширина видеоплеера в пикселях.

нет

api

Список поддерживаемых API для этого показа.

нет

minduration

Минимальная продолжительность видео в секундах.

нет

maxduration

Максимальная продолжительность видео в секундах.

нет

skip

Показывает, допускает ли видеоплеер пропуск видео:

  • 0 — нет;
  • 1 — да.

нет

playbackmethod

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

нет

minbitrate

Минимальный битрейт в кбит/с.

нет

maxbitrate

Максимальный битрейт в кбит/с.

нет

startdelay

Показывает задержку начала воспроизведения в секундах для размещения рекламы в: начале ролика; середине; конце.

нет

placement

Тип размещения видеобаннера:

  • 1 — In-Stream. Воспроизведение до, во время или после трансляции видеоконтента (Pre-roll, Mid-roll, Post-roll);
  • 2 — In-Banner. Воспроизведение внутри веб-баннера, размещенного на странице;
  • 3 — In-Article. Размещение в тексте веб-страницы;
  • 4 — In-Feed. Размещение в новостной ленте;
  • 5 — Interstitial/Slider/Floating. Размещение поверх экрана. Полноэкранные баннеры типа interstitial (например, баннеры для мобильных приложений) отличаются от баннеров типа floating/slider значением поля imp.instl.

нет

linearity

Линейность видеобаннера. Возможные значения:

  • 1 — Linear;
  • 2 — Non-Linear.

нет

pos

Расположение баннера на экране. Возможные значения:

  • 0 — Unknown;
  • 1 — Above the Fold;
  • 3 — Below the Fold;
  • 4 — Header;
  • 5 — Footer;
  • 6 — Sidebar;
  • 7 — Full Screen.

нет

ext

Объект с дополнительными параметрами.

нет

Imp.Ext object

Параметр

Описание

Обязательность

unmoderated

Статус модерации аукциона. Возможные значения:

  • 0 — немодерируемый аукцион.
  • 1 — модерируемый аукцион.

да

reward

Реклама с вознаграждением. Возможные варианты:

  • 0 - нет;
  • 1 - да.

нет

Site object

Параметр

Описание

Обязательность

page

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

нет

domain

Домен сайта.

нет

publisher

Информация о площадке в объекте Site.Publisher.

да

id

Идентификатор сайта.

да

content

Объект Site.Content с информацией о содержимом сайта.

нет

Site.Publisher object

Параметр

Описание

Обязательность

id

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

да

Site.Content object

Параметр

Описание

Обязательность

language

Язык сайта.

нет

Device object

Параметр

Описание

Обязательность

lmt

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

  • 0 — отслеживание не ограничено;
  • 1 — отслеживание ограничено.

да

geo

Объект Device.Geo с описанием местоположения конечного устройства.

да

os

Операционная система.

да

ip

IP-адрес конечного устройства.

да

ipv6

IPv6-адрес конечного устройства.

да

ua

Значение HTTP-заголовка User-Agent — название приложения на конечном устройстве.

да

devicetype

Тип устройства.

  • 1 — телефон;
  • 3 — смартфон;
  • 4 — планшет;
  • 5 — десктоп.

нет

mccmnc

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

нет

ifa

Рекламный идентификатор конечного устройства.

да

dnt

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

  • 0 — отслеживание не ограничено;
  • 1 — отслеживание ограничено.

да

language

Язык, выбранный в браузере. Используемый формат — ISO-639-1-alpha-2.

нет

ext

Объект Device.Ext с дополнительными параметрами.

нет

carrier

Оператор связи или интернет-провайдер.

нет

connectiontype

Тип сетевого соединения.

  • 0 — не определено;
  • 1 — Ethernet (локальная сеть);
  • 2 — WI-FI;
  • 3 — сотовая связь;
  • 4 — сотовая связь 2G;
  • 5 — сотовая связь 3G;
  • 6 — сотовая связь 4G.

нет

make

Производитель устройства.

нет

model

Модель устройства.

нет

osv

Версия операционной системы устройства.

нет

h

Высота устройства.

нет

w

Ширина устройства.

нет

dpidsha1

Идентификатор платформы устройства (например, идентификатор Android), хешированный по алгоритму SHA1.

нет

dpidmd5

Идентификатор платформы устройства (например, идентификатор Android), хешированный по алгоритму MD5.

нет

Device.Geo object

Параметр

Описание

Обязательность

country

Геокод страны по классификации ISO-3166-1 Alpha-3.

да

Device.Ext object

Параметр

Описание

Обязательность

oaid

Идентификатор устройства.

нет

gaid

Идентификатор Android-устройств.

нет

idfa

Идентификатор iOS-устройств.

нет

User object

Параметр

Описание

Обязательность

id

Биржевой идентификатор пользователя.

нет

buyeruid

Идентификатор покупателя.

нет

ext

Объект User.Ext с дополнительными параметрами.

нет

User.Ext object

Параметр

Описание

Обязательность

consent

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

  • 0 — не согласен;
  • 1 — согласен.

нет

Regs object

Параметр

Описание

Обязательность

coppa

Флаг, указывающий, попадает ли запрос под действие закона о защите конфиденциальности детей в Интернете (COPPA).

  • 0 — нет;
  • 1 — да.

да

ext

Объект Regs.Ext с дополнительными параметрами.

нет

Regs.Ext object

Параметр

Описание

Обязательность

gdpr

Флаг, указывающий, попадает ли запрос под действие общего положения о защите данных (GDPR).

  • 0 — нет;
  • 1 — да.

да

nroa

Родительский объект для расширения.

нет

Ext.nroa object

Параметр

Описание

Обязательность

version

Номер версии. Текущую версию см. в приложении.

нет

mandatory

При значении true сообщает о том, что ответы DSP без полной и корректной информации о договорах будут не допущены к аукциону.

нет

Source object

Параметр

Описание

Обязательность

fd

Финальное решение о показе объявления.

  • 0 — биржа;
  • 1 — исходный источник.

да

sourcetype

Источник запроса.

  • 1 — запрос исходит не от аукциона Header bidding;
  • 2 — запрос исходит c клиентской стороны аукциона;
  • 3 — запрос исходит со стороны сервера.

да

tid

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

да

ext

Объект Source.Ext с дополнительными параметрами.

нет

Source.Ext object

Параметр

Описание

Обязательность

schain

Объект Source.Ext.Schain с указанием всех участников цепочки продажи инвентаря.

нет

Source.Ext.Schain object

Параметр

Описание

Обязательность

complete

Флаг указывает на то, содержит ли цепочка все ноды до первоначального источника инвентаря. Возможные значения:

  • 0 — нет;
  • 1 — да.

да

nodes

Массив объектов Source.Ext.Schain.Nodes с порядком расположения участников в цепочке.

да

ver

Версия спецификации supply chain. На данный момент существует только версия 1.0.

да

Source.Ext.Schain.Nodes object

Параметр

Описание

Обязательность

asi

Канонический домен организации, должен совпадать с доменом из ads.txt, если такой существует.

да

sid

Тот же идентификатор seller_id для издателя, что и в файле sellers.json.

да

hp

Указывает, должен ли этот нод быть включен в цепочку участников оплаты за инвентарь. Если значение равно 1, то организация, указанная в поле asi, платит продавцу, указанному в поле sid. Продавец — организация, которая отвечает за оплату предыдущему ноду в цепочке. Для версии 1.0 значение всегда должно быть равно 1.

да

rid

OpenRTB RequestId, отправленный продавцом.

нет

name

Официальное наименование организации, поле не должно присутствовать в объекте, если организация указана в sellers.json.

нет

domain

Официальный домен организации, поле не должно присутствовать в объекте, если организация указана в sellers.json.

нет

{
  "id": "5881455945172700775",
  "user": {
    "buyeruid": "8fahfsfd9a",
    "id": "108799773262946888",
    "ext": {
      "consent": "1"
    }
  },
  "source": {
    "fd": 0,
    "sourcetype": 3,
    "tid": "",
    "ext": {
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "yandex.com",
            "sid": "12345",
            "hp": 1,
            "rid": "bidrequest123"
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "cur": [
    "RUB",
    "USD",
    "EUR",
    "TRY",
    "UAH",
    "KZT",
    "CHF"
  ],
  "bcat": [
    ""
  ],
  "imp": [
    {
      "secure": 1,
      "bidfloor": 0.01,
      "bidfloorcur": "USD",
      "banner": {
        "format": [
          {
            "h": 0,
            "w": 0
          },
          {
            "h": 250,
            "w": 300
          },
          {
            "h": 600,
            "w": 300
          },
          {
            "h": 400,
            "w": 240
          }
        ],
        "h": 600,
        "w": 300
      },
      "id": "55",
      "ext": {
        "unmoderated": 0
      },
      "tagid": "215876-55",
      "instl": 0
    }
  ],
  "tmax": 200,
  "site": {
    "page": "https://banners.adfox.ru/201208/adfox/1300062/2b9df8c5d7bd3400f1c1702953801bc8_index.html",
    "domain": "adfox.ru",
    "publisher": {
      "id": "944028"
    },
    "id": "215876",
    "content": {
      "language": "ru"
    }
  },
  "device": {
    "lmt": 0,
    "geo": {
      "country": "RUS"
    },
    "os": "Windows",
    "ip": "",
    "ipv6": "2a02:6b8:b081:8124::1:29",
    "ua": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 YaBrowser/21.8.3.607 Yowser/2.5 Safari/537.36",
    "devicetype": 1,
    "mccmnc": "",
    "ifa": "",
    "dnt": 0,
    "ext": {
      "gaid": "",
      "idfa": "1DB9B91B-7520-4807-8D87-BE362369646E",
      "oaid": ""
    }
  },
  "regs": {
    "coppa": 0,
    "ext": {
      "gdpr": 0,
      "nroa": {
        "version": "2",
        "mandatory": true
      }
    }
  },
  "at": 1,
  "ext": {
    "notifications": {
      "lurl": 1,
      "nurl": 1
    }
  }
}

Пример запроса — видеореклама

{
  "site": {
    "page": "https://banners.adfox.ru/201208/adfox/1300062/2b9df8c5d7bd3400f1c1702953801bc8_index.html",
    "domain": "adfox.ru",
    "publisher": {
      "id": "944028"
    },
    "id": "215876",
    "content": {
      "language": "ru"
    }
  },
  "at": 1,
  "cur": [
    "RUB",
    "USD",
    "EUR",
    "TRY",
    "UAH",
    "KZT",
    "CHF"
  ],
  "device": {
    "carrier": "MTS RUS",
    "connectiontype": 2,
    "devicetype": 1,
    "dnt": 0,
    "dpidmd5": "",
    "dpidsha1": "",
    "ext": {
      "gaid": "851391a2-cb10-4edf-8e89-cdasdf9430",
      "idfa": "",
      "oaid": ""
    },
    "geo": {
      "country": "RUS"
    },
    "h": 838,
    "ifa": "851391a2-cb10-4edf-8e89-cdasdf9430",
    "ip": "109.252.147.115",
    "ipv6": "::ffff:109.252.147.115",
    "language": "ru",
    "lmt": 0,
    "make": "motorola",
    "mccmnc": "250-1",
    "model": "moto g(20)",
    "os": "Android",
    "osv": "11",
    "ua": "Dalvik/2.1.0 (Linux; U; Android 11; moto g(20) Build/RTAS31.68-29-2)",
    "w": 411
  },
  "ext": {
    "notifications": {
      "lurl": 1,
      "nurl": 1
    }
  },
  "id": "2613544480608676485",
  "imp": [
    {
      "bidfloor": 0.0001567892,
      "bidfloorcur": "USD",
      "clickbrowser": 1,
      "displaymanager": "Yandex Mobile Ads SDK",
      "displaymanagerver": "4.4.1",
      "ext": {
        "reward": 0,
        "unmoderated": 0
      },
      "id": "14",
      "instl": 0,
      "secure": 1,
      "tagid": "1354193-14",
      "video": {
        "h": 400,
        "mimes": [
          "video/mp4"
        ],
        "protocols": [
          3,
          6,
          7,
          8
        ],
        "w": 240,
        "api": [
          5
        ],
        "minduration": 5,
        "maxduration": 30,
        "skip": 0,
        "playbackmethod": [
          2
        ],
        "minbitrate": 400,
        "maxbitrate": 1000,
        "startdelay": -1,
        "placement": 1,
        "linearity": 1,
        "pos": 0,
        "ext": {
          "nroa": {
            "markup_version": 1
          }
        }
      }
    }
  ],
  "regs": {
    "coppa": 0,
    "ext": {
      "gdpr": 0,
      "nroa": {
        "version": "2",
        "mandatory": true
      }
    }
  },
  "source": {
    "fd": 0,
    "sourcetype": 3,
    "tid": "",
    "ext": {
      "schain": {
        "complete": 1,
        "nodes": [
          {
            "asi": "yandex.com",
            "sid": "12345",
            "hp": 1,
            "rid": "bidrequest123"
          }
        ],
        "ver": "1.0"
      }
    }
  },
  "tmax": 500,
  "user": {
    "id": "108799773262946888",
    "ext": {
      "consent": "0"
    }
  }
}
Следующая