How do I signal web vs in-app inventory in a bid request?
Answer
Include a site object for website inventory or an app object for non-browser application inventory; OpenRTB 2.6 adds a third option, dooh, for digital out-of-home screens. A bid request must not contain more than one of site, app, or dooh. Neither object has strictly required fields, but a site should carry at least an id or page URL and an app at least an id or bundle, since buyers key brand safety and ads.txt or app-ads.txt checks off site.domain and app.bundle. Requests carrying both site and app are a common integration bug and get rejected by many DSPs.
Fields in this answer
| Field | Type | Since | Status in 2.6 |
|---|---|---|---|
site.domain | string | 2.0 | Current |
app.bundle | string | 2.0 | Current |
Go deeper
More questions on openrtb basics and the bid request
- What is OpenRTB? OpenRTB is the IAB Tech Lab standard that defines the JSON messages ad exchanges and bidders use to buy and sell impressions in real time.
- How does a real-time bidding auction work end to end? A user loads a page or app, the publisher's ad system asks an exchange to sell the impression, and the exchange sends an OpenRTB BidRequest over HTTP POST to many bidders at once.
- What's the difference between OpenRTB and Prebid.js? OpenRTB is a wire protocol; Prebid.js is a piece of software.
- Is header bidding the same as OpenRTB? No.
- What's the difference between an SSP, a DSP, and an ad exchange? From the protocol's point of view there are only two roles: the supply side sends OpenRTB bid requests and runs the auction, and the demand side receives them and bids.
- What is a bid request in programmatic advertising? A bid request is the JSON message an exchange sends to bidders to offer one or more impressions for sale.
All 93 questions are listed in the OpenRTB FAQ.