OpenRTB 2.x Bid Response Objects

Last Updated On: September 16th, 2026

Bid Response Object

This object is the top-level bid response object (the unnamed root JSON object). The id attribute is a reflection of the bid request ID for logging purposes. At least one seatbid object is required, which contains at least one bid for an impression.

Attribute Triplelift Required Type Description
id yes string ID of the bid request to which this is a corresponding response
seatbid yes array of objects Array of seatbid objects
bidid no string Bidder generated response ID to assist with logging/tracking
cur no string Bid currency using ISO-4217 alpha codes. Defaults to 'USD'
customdata no string Optional feature to allow a bidder to set data in the exchange's cookie. The string must be in base85 cookie safe character and be in any format
nbr no integer Reason for not bidding
ext no object Placeholder for bidder-specific extensions to OpenRTB

SeatBid Object

A bid response can contain multiple SeatBid objects, each on behalf of a different bidder seat and each containing one or more individual bids. If multiple impressions are presented in the request, the group attribute can be used to specify if a seat is willing to accept any impressions that it can win or if it is only interested in winning any if it can win them all as a group.

Attribute Triplelift Required Type Description
bid yes array of objects Array of 1+ Bid objects each related to an impression. Multiple bids can relate to the same impression
seat no string ID of the buyer seat on whose behalf this bid is made
group no integer 0 = impressions can be won individually; 1 = impressions must be won or lost as a group
ext no object Placeholder for bidder-specific extensions to OpenRTB

Bid Object

A SeatBid object contains one or more Bid objects, each of which relates to a specific impression in the bid request via the impid attribute and constitutes an offer to buy that impression for a given price.

Attribute Triplelift Required Type Description
id yes string Bidder generated bid ID to assist with logging/tracking
impid yes string ID of the Imp object in the related bid request
price yes float Bid price expressed as CPM although the actual transaction is for a unit impression only
adid no string ID of a preloaded ad to be served if the bid wins
nurl no string Win notice URL called by the exchange if the bid wins
burl no string Billing notice URL called by the exchange when a winning bid becomes billable based on exchange-specific business policy
lurl no string Loss notice URL called by the exchange when a bid is known to have been lost
adm no string Optional means of conveying ad markup in case the bid wins
adomain no array of strings Advertiser domain for blocklist checking
bundle no string A platform-specific application identifier intended to be unique to the app and independent of the exchange
iurl no string URL without cache-busting to an image that is representative of the content of the campaign for ad quality/safety checking
cid no string Campaign ID to assist with ad quality checking; the collection of creatives for which iurl should be representative
crid no string Creative ID to assist with ad quality checking
cat no array of strings IAB content categories of the creative
attr no array of integers Set of attributes describing the creative
dealid no string Reference to deal.id from the bid request if this bid pertains to a private marketplace direct deal
w no integer Width of the creative in device independent pixels
h no integer Height of the creative in device independent pixels
language no string Language of the creative using ISO-639-1-alpha-2
exp no integer Advisory as to the number of seconds the bidder is willing to wait between the auction and the actual impression
ext no object Placeholder for bidder-specific extensions to OpenRTB