Browse the documentation

Header Bidding — overview

Two ways to plug into our header-bidding stack: a lightweight custom auction (/hb/auction) and a Prebid-Server-compatible endpoint (/openrtb2/auction). Both feed the same internal pipeline; the only difference is the wire shape — pick whichever matches your stack.

Endpoints#

Reference

POST /hb/auction              Lightweight custom auction (token + slots[])
POST /openrtb2/auction        Prebid Server S2S — standard OpenRTB 2.5
GET  /openrtb2/sync           Cookie sync — drops goadserver_uid cookie
GET  /setuid                  Bidder-specific cookie set (Prebid setuid)
POST /openrtb2/cache          Prebid cache (bid storage for VAST / native)
POST /openrtb2/analytics      Prebid analytics ingestion
GET  /openrtb2/amp/auction    AMP-specific HB auction

Picking an endpoint#

/hb/auction is the simplest path — fewer fields, one request per page. /openrtb2/auction is what Prebid.js talks to via the built-in prebidServerBidAdapter; use it when you already have Prebid on the publisher side and want zero custom adapter work. Both endpoints converge on the same auction core, so the bid quality is identical.