Open RTB 2.5 Bid Request
Suggested 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
The following objects should be sent encoded as JSON in the request body:
Bid Request
Attribute | Required? | Description |
---|---|---|
at | Yes | Auction type, first price = 1 (int) |
id | Yes | Unique bid request ID (string) |
imp | Yes | Array of Imp objects representing the impressions offered(object). |
site | Yes | Details via a Site object about the publisher’s website(object). |
device | Yes | Details via a Device object about the user’s device to which the impression will be delivered(object). |
user | No | Details via a User object about the human user of the device; the advertising audience(object). |
ext | No | Placeholder for extensions to OpenRTB. |
imp
Attribute | Required? | Description |
---|---|---|
id | Yes | Unique impression ID within this bid request (string) |
bidfloor | No | Minimum bid for this impression (CPM) / click (CPC) and account currency, optional (float). |
banner | Only for banner imps | A banner object ; required if this impression is offered as a banner ad opportunity(object). |
secure | No; Recommended 1 | Flag to indicate if the impression requires secure HTTPS URL creative assets and markup, where 0 = non-secure, 1 = secure. If omitted, the secure state is unknown, but non-secure HTTP support can be assumed, optional (integer) |
imp.banner
Attribute | Required? | Description |
---|---|---|
w | Yes | Width of the banner (integer) |
h | Yes | Height of the banner (integer) |
site
Attribute | Required? | Description |
---|---|---|
id | Recommended | Unique Site ID (string) |
domain | Recommended | Domain name of the site (string) |
cat | No | IAB category ID (string array) |
page | Recommended | Full URL of the page where the ad will be shown (string) |
keywords | No | Keywords can be used to ensure ad zones get the right type of advertising. Keywords should be a string of comma-separated words |
device
Attribute | Required? | Description |
---|---|---|
ua | Yes | Browser user agent (string) |
geo | No | Location of the device assumed to be the user’s current location defined by a Geo object. |
ip | Yes | IP address of the user (string)* |
ipv6 | Recommended | IPv6 address of the user (string)* |
language | Recommended | Browser language (string) |
os | No | Operating System (string) |
js | No | Support for JavaScript, where 0 = no, 1 = yes (integer) |
ext | No | Placeholder for exchange-specific extensions to OpenRTB |
*Either ip or ipv6 will be in the request
device.geo
Attribute | Required? | Description |
---|---|---|
country | No | Country ISO3 |
device.ext
Attribute | Required? | Description |
---|---|---|
remote_addr | No | Main IP address of the user (string) |
x_forwarded_for | No | X-FORWARDED-FOR IP address of the user or empty if not set (string) |
user
Attribute | Required? | Description |
---|---|---|
id | No | Unique user ID (string) |
user.ext
Attribute | Description |
---|---|
consent | user.ext.consent: This is the consent string required by the IAB standards. Negative consent only for now (string) |
regs.ext
Attribute | Description |
---|---|
gdpr | regs.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. |
ext
Attribute | Required? | Description |
---|---|---|
sub | No | The Sub ID. This should be a number between six and ten digits: Do not use zeroes at the beginning of Sub IDs. |
Examples
Banner
{
"id": "d4b5c697-41f3-4c1c-a3d5-5fd01b5ef2aa",
"at":1,
"imp": [
{
"id": "974090632",
"banner": {
"w": 300,
"h": 250
}
}
],
"site": {
"id": "12345",
"domain": "sitedomain.com",
"cat": ["IAB25-3"],
"page": "https://sitedomain.com/page",
"keywords": "lifestyle, humour"
},
"device": {
"ua": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.63 Safari/537.36",
"ip": "131.34.123.159",
"geo": {
"country": "IRL"
},
"language": "en",
"os": "Linux & UNIX",
"js": 0,
"ext": {
"remote_addr": "131.34.123.159",
"x_forwarded_for": "",
"accept_language": "en-GB;q=0.8,pt-PT;q=0.6,en;q=0.4,en-US;q=0.2,de;q=0.2,es;q=0.2,fr;q=0.2"
}
},
"user": {
"id": "57592f333f8983.043587162282415065",
"ext": {
"consent": "CO9A8QHPAbnHWBcADBENBJCoAAAAAAAAAAqIHKJU9VybLh0Dq4A170B0OAEYN_r_v40zigeds-8Myd-X3DsX50M7vFy6pr4AuR4km3CBIQFkHOmcTUmw6IkVrRPsak2Mr7NKJ7PEinsbe2dYEHtfn9VTuZKZr97s___zf_-___3_75f__-3_3_vp9UAAAABA5QAkgkDYAKAQRAAJIwKhQAhAuJDoBAAUUIwtE1hASuCmYVAR-ggYAIDUBGAECDEEGIIIAAAAAkgiAkAPBAAgCIBAACAFSAhAARoAgsAJAwCAAUA0LACKAIQJCDI4KjlICAiRaKCeSMASi72MMIQSigAAAAAAAA"
}
},
"ext": {
"sub": 1221
}
}
Banner Bid Request Structure