DV360 OpenRTB Specification

Display and Video 360 supports the following OpenRTB versions:

Ensure you have the OpenRTB 2.5 Specification Guide available while consulting this page.

Display and Video 360 does not support all fields in the OpenRTB specification, and several nuances may apply. Sections of this document contain information and recommendations specific to the Display and Video 360 implementation. You should also follow the guidelines presented in the OpenRTB specification unless instructed otherwise.

Bid Request object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


Unique ID of the bid request, required. This can be used to identify individual requests for a very limited time after they are served.
imp 2.3
2.4
2.5


At least 1 Imp object is required
site 2.3
2.4
2.5


Required for website requests
app 2.3
2.4
2.5


Required for mobile & CTV app requests
device 2.3
2.4
2.5


Required.
user 2.3
2.4
2.5


test Not supported. Please don't send test requests.
at 2.3
2.4
2.5


Default value is 2 (second price) if the field is omitted. If the advertiser will be charged the amount they bid, please set to 1.

If the amount the advertiser will be charged is unrelated to the amount they bid then set to 2. Set to 3 if the amount charged is announced in the request as the floor price and has nothing to do with competing bids.

tmax 2.3
2.4
2.5


Default to static value specified by exchange during integration if the value is omitted. We strongly recommend this field is sent.
wseat 2.3
2.4
2.5


List of allowed buyer seats. Recommended unless all advertisers are allowed to bid.
bseat
allimps
cur 2.3
2.4
2.5


Currency in the bid request must match one of the currencies registered during integration.

It is highly recommended to support single currency per exchange.

wlang
bcat 2.3
2.4
2.5


Blocked advertiser categories using the IAB content categories
badv 2.3
2.4
2.5


Specify the blocked advertiser based on the domain provided by the advertiser.
bapp
source 2.5 Only fd is supported. See Source Object for details.
regs 2.3
2.4
2.5


Source object

Attribute Supported Implementation details
ORTB version by DV360
fd 2.5 Default value is 0 = exchange if the field is omitted. Exchanges should set fd = 1 to indicate an upstream source.
tid
pchain

Supported Extension for Source object

This extension is highly recommended since it will impact how viewability measurements are reported in DV3 to the customer. If the OMID partner name is NOT on the IAB certification list, we are required by MRC to report the viewability metrics separately from the MRC certified metrics. Learn more.

Attribute Implementation details
omidpn Identifier of the OM SDK integration. This is the same as the "name" parameter of the OMID Partner object.
omidpv Version of the OM SDK integration. This is the same as the "versionString" parameter of the OMID Partner object.

Regs object

Attribute Supported Implementation details
ORTB version by DV360
coppa 2.3
2.4
2.5


Supported extensions for Regs object

Attribute Implementation details
gdpr Indicate whether the bid request is from EEA region. 1 = EEA region, 0 = non EEA region. See Consented Provider Solution for GDPR for more detail.
us_privacy Please follow the technical specification provided by the IAB Tech Lab to implement the us_privacy string.

When we receive us_privacy string in the bid request and When the IAB string indicates a user has not opted out, Display & Video 360 will place a bid for such requests. We will not propagate the IAB signal further to other vendors. When the IAB string indicates a user has opted out, Google will not place a bid for such requests.

Imp object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


metric
banner 2.3
2.4
2.5


Required if this impression is offered as a banner ad opportunity. See Banner object below.
video 2.3
2.4
2.5


Required if this impression is offered as a video ad opportunity. See Video object below.
audio 2.3
2.4
2.5


Required if this impression is offered as an audio ad opportunity. See Audio object below.
native 2.3
2.4
2.5


Required if this impression is offered as a native ad opportunity. See Native object below.
pmp 2.3
2.4
2.5


displaymanager
displaymanagerver
instl 2.3
2.4
2.5


tagid
bidfloor 2.3
2.4
2.5


bidfloorcur 2.3
2.4
2.5


clickbrowser
secure 2.3
2.4
2.5


Assume value 0 = non-secure if the field is omitted. If secure = 1, we will only return creatives that load all assets securely.
iframebuster
exp Regardless of what a partner may send in this field, DV360 bids always expire after 1 hour. Impression events received after one hour are discarded as stale and are not considered billable by DV360.

Supported Extension for Imp object

It is required for Server to server requests to provide the Serverside extension signal to better classify server to server traffic.

Attribute Implementation details
serverside This field is intended to allow the publisher or exchange to declare the presence of a server-side ad inserter or other server-side call during delivery of the creative post win. This would be a numeric field set by the publisher as follows:

0 = 'unknown' or ‘undefined’; it is unknown whether S2S will occur or not

1 = declared client-side for all events, i.e. definitively not server-side

2 = VAST fetch server-side all other events fired client-side

3 = asset fetch and tracking pixels fired server-side.

Attribute Supported Implementation details
ORTB version by DV360
format 2.4
2.5

w 2.3
2.4
2.5


Banner.w, Banner.h and Banner.format will be merged to determine eligible creative sizes.
h 2.3
2.4
2.5


Banner.w, Banner.h and Banner.format will be merged to determine eligible creative sizes.
wmax
hmax
wmin
hmin
btype
battr 2.3
2.4
2.5


Support following values:

4 = EXPANDABLE_CLICK_INITIATED
5 = EXPANDABLE_ROLLOVER_INITIATED
7 = VIDEO_IN_BANNER_USER_INITIATED
12 = TEXT_ONLY
16 = AD_CAN_BE_SKIPPED

pos 2.3
2.4
2.5


mimes 2.3
2.4
2.5


topframe 2.3
2.4
2.5


Google Ads will not buy if topframe = 1
expdir 2.3
2.4
2.5


api 2.3
2.4
2.5


id
vcm

Format object

Attribute Supported Implementation details
ORTB version by DV360
w 2.4
2.5

Banner.w, Banner.h and Banner.format will be merged to determine eligible creative sizes.
h 2.4
2.5

Banner.w, Banner.h and Banner.format will be merged to determine eligible creative sizes.
wratio
hratio
wmin

Video object

We strongly recommend to specify placement of video in the bid request. Missing placement field will be classified as an unknown placement. See the article for more detail of position targeting.

Attribute Supported Implementation details
ORTB version by DV360
mimes 2.3
2.4
2.5


Required
minduration 2.3
2.4
2.5


maxduration 2.3
2.4
2.5


protocols 2.3
2.4
2.5


w 2.3
2.4
2.5


h 2.3
2.4
2.5


startdelay 2.3
2.4
2.5


We currently don't differentiate generic mid roll and exact position but we prefer exact position, if available.
placement 2.5 Strongly recommended to specify placement of video in the bid request. Missing placement field will be classified as an unknown placement.
linearity Only support linear ads.
skip
skipmin
skipafter
sequence
battr 2.4
2.5

maxextended
minbitrate 2.4
2.5

maxbitrate 2.4
2.5

boxingallowed
playbackmethod 2.5
playbackend
delivery
pos 2.3
2.4
2.5


companionad 2.3
2.4
2.5


api 2.3
2.4
2.5


api=7 is required to enable measurement using OMID for Active View.
companiontype

Supported Extension for Video object

We require sending the below extension for rewarded video requests. If the signal is missing or set to 0 we treat requests as not rewarded.

Attribute Implementation details
rewarded This field is to signal if the requests are rewarded or not. This should be sent as an integer.

0 = default - not rewarded
1 = rewarded

Audio object

Attribute Supported Implementation details
ORTB version by DV360
mimes 2.4
2.5

Required
minduration 2.4
2.5

Required for creative decisioning
maxduration 2.4
2.5

Required for creative decisioning
protocols 2.4
2.5

Required
startdelay 2.4
2.5

Required. This field helps target the position of the creative within the UI.
sequence
battr 2.4
2.5

maxextended
minbitrate 2.4
2.5

maxbitrate 2.4
2.5

delivery 2.4
2.5

Recommended
companionad 2.4
2.5

Recommended for creative decisioning
api
companiontype 2.4
2.5

Required for creative decisioning
maxseq
feed 2.4
2.5

Required. This field is used to help target different types of content (podcast vs music service, etc.).
stitched 2.4
2.5

Recommended
nvol

Native object

For Native please see DV360 Native Ads Specification for more detailed information.

Attribute Supported Implementation details
ORTB version by DV360
request 2.3
2.4
2.5


ver 2.3
2.4
2.5


We only support 1.2.

1.0 and 1.1 are deprecated.

api
battr

PMP object

Attribute Supported Implementation details
ORTB version by DV360
private_auction 2.3
2.4
2.5


Assume value is 0 if the field is omitted.
deals 2.3
2.4
2.5


Deal object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


PMP object cannot contain more than one deal object per ID.
bidfloor 2.3
2.4
2.5


Required if at=3.
bidfloorcur 2.3
2.4
2.5


Defaults to the bid request currency if unspecified.
at 2.3
2.4
2.5


Default matches bid_request.at if unspecified.
wseat 2.3
2.4
2.5


wadomain

Site object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


name
domain 2.3
2.4
2.5


It is recommended to send a full URL in site.page rather than only populating site.domain.
cat
sectioncat
pagecat
page 2.3
2.4
2.5


It is recommended to send the full URL for targeting purposes
ref 2.3
2.4
2.5


search
mobile
privacypolicy
publisher 2.3
2.4
2.5


content 2.3
2.4
2.5


keywords

App object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


name 2.3
2.4
2.5


bundle 2.3
2.4
2.5


Required. For iOS, it is required to be the numeric app store ID. We do not accept the reverse DNS style bundle ID. For CTV app, we recommend passing the store-defined app identifier. Please adhere to the recently published IAB OTT/CTV Store Assigned ID guidelines.
domain 2.3
2.4
2.5


storeurl 2.3
2.4
2.5


Required for app-ads.txt verification and Connected TV app store validation.
cat
sectioncat
pagecat
ver
privacypolicy
paid
publisher 2.3
2.4
2.5


content 2.3
2.4
2.5


keywords

Content object

We recommend passing these attributes where available.

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


episode 2.3
2.4
2.5


title 2.3
2.4
2.5


Recommended for Audio & Video/CTV.
series 2.3
2.4
2.5


Recommended for Audio & Video/CTV.
season 2.3
2.4
2.5


artist 2.3
2.4
2.5


genre 2.3
2.4
2.5


Recommended for Audio & Video/CTV, as we will start decisioning on this attribute.

DV360 supports a few taxonomies of video genre values for this field today, and will be updating more supported lists over time as we see demand:

  • Google curated listed of genres (Download)
  • IAB TV/Movie/Sports categories (Download)
  • DV360 Audio supported genres coming soon.
album 2.3
2.4
2.5


isrc 2.3
2.4
2.5


producer 2.3
2.4
2.5


url 2.3
2.4
2.5


cat 2.3
2.4
2.5


prodq 2.3
2.4
2.5


videoquality 2.3
2.4
2.5


context 2.3
2.4
2.5


contentrating 2.3
2.4
2.5


Recommended for Audio & Video/CTV, as we will start decisioning on this attribute.
userrating 2.3
2.4
2.5


qagmediarating 2.3
2.4
2.5


keywords 2.3
2.4
2.5


livestream 2.3
2.4
2.5


Recommended for Audio & Video/CTV, as we will start decisioning on this attribute.
sourcerelationship 2.3
2.4
2.5


len 2.3
2.4
2.5


Recommended for Audio & Video/CTV, as we will start decisioning on this attribute.
language 2.3
2.4
2.5


embeddable 2.3
2.4
2.5


data 2.3
2.4
2.5


ext 2.3
2.4
2.5


Publisher object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


Required
name
cat
domain

Device object

Attribute Supported Implementation details
ORTB version by DV360
ua 2.3
2.4
2.5


Required
geo 2.3
2.4
2.5


dnt 2.3
2.4
2.5


lmt 2.3
2.4
2.5


ip 2.3
2.4
2.5


Required if IPv4. If IP address is truncated, it must be declared in the device.ext.truncated_ip.
ipv6 2.3
2.4
2.5


Required if IPv6. If IP address is truncated, it must be declared in the device.ext.truncated_ip.
devicetype 2.3
2.4
2.5


Highly recommended for all inventory types. Used to enhance device type recognition.
make 2.3
2.4
2.5


model 2.3
2.4
2.5


os 2.3
2.4
2.5


osv
hwv 2.3
2.4
2.5


h 2.3
2.4
2.5


w 2.3
2.4
2.5


ppi
pxratio 2.3
2.4
2.5


js
geofetch
flashver
language 2.3
2.4
2.5


carrier
mccmnc
connectiontype 2.3
2.4
2.5


ifa 2.3
2.4
2.5


didsha1
didmd5
dpidsha1
dpidmd5
macsha1
macmd5

Supported extension for Device object

If ip is changed or truncated, we strongly recommend sending the below extensions to prevent traffic being declared as invalid traffic.

Attribute Implementation details
truncated_ip Indicate whether the ip address in the device.ip field of the bid request is truncated. 1= truncated 0= not truncated. It is assumed not truncated and required if the ip address is truncated.

If not declared the bid request might be classified as invalid traffic.

ip_less Indicate whether device.ip field contains the actual client ip.

1 = device.ip does not include the actual client ip

0 = device.ip does contain the actual client ip.

The assumed value is 0 which indicates that the client ip address is present.

In cases of ip_less = 1 traffic, the forwarding server ip should be included in the device.ip field.

ifa_type Indicate the origin of the device.ifa field, whether it was provided from the device itself or generated by publisher or SSP in the supply chain. Supported values in the table below.
ifa_type Device Platform
"aaid" Android TV
"rida" Roku
"afai" Amazon Fire
"idfa" Apple tvOS
"msai" Xbox/Microsoft
"dpid" Generic device platform ID
"ppid" Publisher provided ID
"sspid" SSP provided ID
"sessionid" Short-lived session ID

(fcapping only)

Geo object

Attribute Supported Implementation details
ORTB version by DV360
lat 2.3
2.4
2.5


lon 2.3
2.4
2.5


type 2.3
2.4
2.5


Required if lat/lon are provided.
accuracy
lastfix
ipservice
country
region
regionfips104
metro
city
zip
utcoffset

User object

Attribute Supported Implementation details
ORTB version by DV360
id 2.3
2.4
2.5


Supported if Google hosts the id match table
buyeruid 2.3
2.4
2.5


Supported if the SSP host the id match table
yob 2.3
2.4
2.5


Recommended for demographics targeting
gender 2.3
2.4
2.5


Recommended for demographics targeting
keywords
customdata
geo
data

Supported extensions for User object

Attribute Implementation details
consented_providers_settings.consented_providers Pass the vendors with consent for GDPR request. See Consented Provider Solution for GDPR for more detail.

Bid Response Specification

BidResponse object

Attribute Supported Implementation details Always passed
id Yes
seatbid
bidid
cur Yes
customdata
nbr

Seatbid object

Attribute Supported Implementation details Always passed
bid yes
seat yes
group

Bid object

Attribute Supported Implementation details Always passed
id yes
impid yes
price yes
nurl
burl
lurl
adm
adid
adomain
bundle
iurl
cid yes
crid yes
tactic
cat
attr
api
protocol
qagmediarating
language
dealid
w
h
wratio
hratio
exp

Supported extensions for Bid object

Attribute Implementation details
apis DV360 will send seatbid.bid.apis if both OMID and MRAID are supported. DV360 will set both OMID_1 and MRAID as an integer array.

Ad serve options

In section 4.3 of the OpenRTB specification there are two different serving options:

  • Markup served on the win notice
  • Markup served in the bid

DV360 supports both options.

  • For Banner ad, DV360 always returns markup in the adm field. Markup served on win notice is optional.
  • For Video/Audio ad using VAST protocol, DV360 supports returning VAST XML in the adm field or in the response of win notice based on requirements from exchange partners.

Refer to the OpenRTB specification to know the pros and cons of these two options.

Best practices

It is highly recommended to use the Partner ID of Display and Video 360 as the seat ID. The use of exchange-specific seat ID is not recommended.

Ensure your publishers have ads.txt files, or applications with app-ads.txt files associated, and they list you in the file as an authorized seller or reseller. Learn more.

Also ensure consistent information is passed in bid requests. For example, the app.bundle must be consistent with the mobile device information and app.storeurl.

Connected TV

Adhere to the IAB OTT IFA guidelines in passing device.ifa and device.lmt. You should also implement device.ext.ifa_type to be compliant with the guidelines. All of our CTV frequency capping and audience targeting capabilities will require the presence of an IFA.

Also adhere to the recently published IAB OTT/CTV Store Assigned ID guidelines—this defines how app.bundle should be passed for CTV apps—largely using the app store defined ID.

Active View Measurement

Active View is a Google technology used to measure if an impression was viewable and for how long. Active View uses OMID for both display and video ads. To enable measurement using OMID, exchanges must add the following fields in OpenRTB requests so that DV360 knows the client's support of OMID.

  • Required: Add an API Framework (Video.api=7 for OMSDK) to bid requests. This is mandatory for Active View to enable measurement using OMID.
  • Recommended: Adding omidpn and omidpv to Source.Ext is highly recommended because it will impact how viewability measurements are reported in DV360 to the customer. If the OMID partner name is NOT on IAB certification list, we are required by MRC to report the viewability metrics separately from the MRC certified metrics. Learn more.

FAQ

Does DV360 Support exchange custom extensions?
Yes, in addition to the extensions listed in this specification, Display and Video 360 may also support custom extensions on a case-by-case basis. It is recommended to specify and test the custom extension during the integration period. Does DV360 support rewarded Video?
Yes, send us the rewarded Video extension.
A lot of my inventory is showing up as demographics unknown, how do I improve demographic coverage?
Populate user.yob and user.gender in bid requests to DV360 to increase coverage.
Does DV360 have endpoints for each region?
No, we use a single endpoint globally and we automatically route requests to the nearest data center, so there's no region-specific endpoint we can provide.
What are the requirements for server-to-server (s2s) requests?
The Serverside extension signal is required to better classify server-to-server traffic. If the VAST fetch comes from a server, reach out to request addition to our allowlist. The client User Agent has to be forwarded, and ensure that cookies are disabled/ignored in the response to an s2s VAST fetch.
Does DV360 support OMID?
We are able to measure viewability using OMID as long as it is declared as OMID-enabled at bid request time. Details about this are summarized on pages 24-25 here.
Which version of Native do you support? Do you have any Native requirements?
We only support Native Ver1.2. Native specification here.
Does DV360 support SSP click tracking macros?
DV360 does support SSP click tracking for display creatives. It needs to be set up on our side to ensure that nothing breaks with our existing click tracking setup so please reach out to request this.
Does DV360 support bid requests sent as GZIP?
DV360 can receive gzip compressed bid requests, and will respond with gzip compressed responses if Accept-Encoding header indicates it's supported.
Does DV360 support DBURL?
Not at the moment.
Does DV360 support win loss notification?
Not at the moment. If you think it would be useful for us to support it please reach out with more details.
Does DV360 require App.name for targeting?
No, DV360 using App.name for reference but it is not required for targeting, App.bundle is used for targeting.
Can DV360 support multiple ad sizes sent in a single bid request?
Yes we can, but it requires a configuration change. Reach out to request this.
Does DV360 support multiple formats in the same bid request?
We have limited support for multi-format bid requests, but are working on improving. We support display & video formats for interstitials, but do not currently support display & native. If you are sending multi-format bid requests, please reach out to request a test.
Does DV360 support mixed impression types in the same request?
Currently we only support video/banner interstitials. We are working on native/banner & video/banner. If there are other combinations please reach out to our team and let us know.
Can multiple seats each send multiple bids on one or more of such impression opportunities in the same request?
Yes.
Does DV360 have a solution or particular need regarding capping or displaying the same advertiser for multiple such impression opportunities in the same request?
DV360 places enforcement that one advertiser can only bid up to one imp opportunities for each request. We expect SSPs to group imp objects meaningfully—e.g., all on the same page, all in the same app, etc.
Does DV360 support multiple impressions in the same bid request?
DV360 currently supports video, unlimited, with any combinations of imp objects being the same or not. However, we will need to test/enable each exchange on this. We are working on expanding this to other formats:
{
id: "2bbdc94f-7289-4fe2-9a5f-e2a530e06b38
seatbid {
bid {
  id: "0"
  impid: "234232"
  price: 41.373926619828261
  adid: "123"
  adm: "..."
  adomain: "xxx.com"
  cid: "0"
  crid: "123"
  dealid: "sample-deal-id-1"
  language: "xx"
}
bid {
  id: "1"
  impid: "234255"
  price: 2.34192037470726
  adid: "234"
  adm: "..."
  adomain: "xyz.com"
  cid: "0"
  crid: "234"
  dealid: "sample-deal-id-2"
  language: "xx"
}
seat: "123456"
}
cur: "EUR"
}

Contact us

If you have any questions or issues, reach out to our exchange support team.