BidSwitch buyer 5.7

BidSwitch, run by BidSwitch GmbH, sits between supply partners and buyers: suppliers send it requests, and it forwards them to buying platforms under its own OpenRTB-based protocols. This profile covers buyer protocol 5.7, the version buyers implement.

Direction and version

BidSwitch sends bid requests to buyers, and buyers return bid responses to BidSwitch.

Buyer protocol 5.7, which BidSwitch lists under its OpenRTB 2.6 support. Native requests arrive as an object in imp.native.request, and buyers return Native markup in bid.ext.native.

The RTBlint profile bidswitch checks requests and responses against the published contract.

Rules beyond the OpenRTB spec

  • Requests always include device, user, tmax, cur, and ext. user may be an empty object when the user opted out under GDPR or CCPA.
  • A request has inventory context in site, app, ext.tv, or dooh, and a DOOH request carries neither site nor app.
  • User identifiers are limited to 50 characters.
  • A buyer returns at most two bids per ad slot across all seats, and all bids from one seat go in one seatbid entry.
  • burl must contain ${AUCTION_PRICE}, and nurl is optional when burl is used. The macro may appear once in adm, never in both adm and nurl.
  • VAST and DAAST document URLs may not contain the win price macro. When ext.s2s_nurl is 1, adm may not contain it either.
  • Video bids need bid.ext.vast_url or the documented nurl fallback, and audio bids need a VAST or DAAST URL.
  • Win notices on secure browser inventory must use HTTPS. Server-to-server notices may use HTTP.
  • Advertiser domains must be ASCII, with punycode for international names, and DSA names in bid.ext.dsa are limited to 100 characters.
  • When wseat and bseat both list a seat, wseat takes precedence. at defaults to 2.

Documented extensions

PathMeaning
ext.tvConnected TV inventory context, used in place of site or app.
ext.s2s_nurlWhen 1, BidSwitch calls only burl server to server and adm must not carry the price macro.
imp.video.ext.vast_url_rqWhen 1, the bid must supply bid.ext.vast_url.
bid.ext.vast_urlURL of the VAST document; it may not contain the price macro.
bid.ext.daast_urlURL of the DAAST document for audio bids.
bid.ext.nativeNative response markup in buyer responses.
bid.ext.advertiser_nameAdvertiser name, required by some suppliers.
bid.ext.agency_nameAgency name, required by some suppliers.
bid.ext.lpdomainLanding page domain, recommended.
bid.ext.skadnSKAdNetwork response data.
bid.ext.dsaDSA transparency; behalf and paid are limited to 100 characters.
ext.igbidResponse-level interest group bids, which may stand in for seatbid.

What the validator checks for this profile

Validate against this contract

Open the tester with the BidSwitch buyer 5.7 profile, or run:

rtblint validate --profile bidswitch request.json

Similar integrations