Skip to main content

Prebid / OpenRTB 2.5 Bid Request

Prebid Server / OpenRTB 2.5

This implementation supports both the regular OpenRTB 2.5 implementation and the Prebid Server implementation. In order to use the Prebid Server implementation, the campaign needs to be created with the Prebid Server template.

The Prebid Server implementation has an ext.prebid.storedrequest field where the id of the StoredRequest is provided. An example can be found in the specs below.

You can find more examples here.

Additional Privacy Fields

We have added additional fields regarding privacy, regs.ext.gdpr and user.ext.consent , which are compliant with the IAB privacy specifications (in the Advised Extensions section). There is more information about this here.

Bid Request Headers

  • OpenRTB Version HTTP Header: x-openrtb-version: 2.5
  • Keep-Alive HTTP Header: Connection: Keep-Alive
  • Content JSON: Content-Type: application/json
  • Data Encoding Header: Accept-Encoding

Bid Request 2.5

When requesting bids for a specific context, the platform will perform an HTTP request with a timeout of 300ms and send the following object encoded as JSON in the request body. HTTP is recommended due to extra latency when using HTTPS.

idUnique bid request ID (string)
siteDetails via a Site object about the publisher’s website(object).
deviceDetails via a Device object about the user’s device to which the impression will be delivered(object).
userDetails via a User object about the human user of the device; the advertising audience(object).
extPlaceholder for extensions to OpenRTB.


idUnique Site ID (string)
domainDomain name of the site (string)
catIAB category ID (string array)
pageFull URL of the page where the ad will be shown (string)
extPlaceholder for exchange-specific extensions to OpenRTB.


exchangecatCustom ExoClick category ID (integer)
idzoneCustom ExoClick Ad Zone ID (integer)


uaBrowser user agent (string)
geoLocation of the device assumed to be the user’s current location defined by a Geo object.
ipIP address of the user (string)*
ipv6IPv6 address of the user (string)*
languageBrowser language (string)
osOperating System (string)
jsSupport for JavaScript, where 0 = no, 1 = yes (integer)
extPlaceholder for exchange-specific extensions to OpenRTB


countryCountry ISO3


remote_addrMain IP address of the user (string)
x_forwarded_forX-FORWARDED-FOR IP address of the user or empty if not set (string)


idUnique user ID (string)


consentuser.ext.consent: This is the consent string required by the IAB standards. Negative consent only for now (string)


idUsed for stored request matching on partners servers format: sr_odadsrv_idzone (string)


gdprregs.ext.gdpr: This is 0 if the caller believes that the user is not under GDPR, and 1 if the user is under GDPR. If neither, this parameter will be undefined.