Header bidding without changing your wrapper
Publishers that already run Prebid.js can add bid9 as one more bidder. The bid9 adapter sends one OpenRTB 2.6 request per ad unit, each routed by the ad unit's bid9 channel ID, and returns a bid for each.
This page runs a real Prebid auction against the local bid9 mock endpoint, alongside AdKernel, a second Prebid bidder. The leaderboard and sidebar are bid9 only. This in-article unit has bid9 and AdKernel competing, and bid9 bids lower here, so AdKernel wins it. Each winning creative is rendered with pbjs.renderAd, and the badge under each slot names the winning bidder.
Floors from the Price Floors Module, consent signals, the SharedID user ID and the supply chain object are all forwarded automatically. Use the "Last bid request" link to inspect the exact payload the mock received.
Change the channel IDs in the URL to try other mock scenarios, for example ?side=deal for a deal bid, ?top=nobid for an empty slot or ?inline=slow&timeout=600 for a timeout.