Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Topics
Bid Request and Response Basics
A short reference. Field names follow the OpenRTB specification.
What arrives in a bid request
| Object | Carries |
|---|---|
id | The unique identifier for this auction |
imp | The impression: its ID, format, size, and floor price (bidfloor) |
site / app | Where the impression is, its domain or bundle, and category |
device | Device type, operating system, user agent, IP, and connection |
geo | Country, region, and city |
user | Audience and identity signals attached to the request |
tmax | The maximum time you have to respond, in milliseconds |
What your response must contain
| Field | Meaning |
|---|---|
id | Echo the request id |
seatbid.bid.impid | Which impression you are bidding on |
seatbid.bid.price | Your bid, as CPM |
seatbid.bid.adm | The ad markup to render |
seatbid.bid.crid | Your creative ID |
seatbid.bid.adomain | The advertiser domain, required for brand safety |
nurl | Optional win-notice URL |
No bid. Return HTTP 204, or an empty response body, when you do not want the impression. Returning a malformed response instead of a clean no-bid counts against your error rate.
Timeouts. A response arriving after tmax is discarded, and you are charged nothing, but sustained timeouts reduce the request volume sent to you. Respond inside the window even if that means bidding on fewer requests.
Creative requirements. adomain must be accurate. Creatives are still subject to the advertising policies, so a bid that wins with non-compliant markup can have the campaign paused.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

