Skip to content

HypeLab Bid Adapter: Migrate to OpenRTB endpoint#14562

Open
Minebomber wants to merge 1 commit intoprebid:masterfrom
gohypelab:feat/hypelab-ortb-migration
Open

HypeLab Bid Adapter: Migrate to OpenRTB endpoint#14562
Minebomber wants to merge 1 commit intoprebid:masterfrom
gohypelab:feat/hypelab-ortb-migration

Conversation

@Minebomber
Copy link
Contributor

Type of change

  • Updated bidder adapter

Description of change

Our old v1/ad_requests endpoint was deprecated and this change to our bidding adapter uses the new request endpoint v1/rtb_requests, which follows the OpenRTB 2.6 spec. We updated the adapter to use the builtin ortbConverter util to simplify a lot of the old logic related to building requests & parsing responses while retaining our required parameters in the ext fields. This change has no outward effects on publishers as the integration requirements remain the same (property_slug, placement_slug).

Migrate HypeLab bid adapter from custom /v1/prebid_requests format to
OpenRTB 2.6-compliant /v1/rtb_requests endpoint using Prebid's built-in
ortbConverter. Remove legacy event reporting callbacks (onTimeout,
onSetTargeting, onBidderError); keep onBidWon to fire burl pixel.
@review-assignment-bot review-assignment-bot bot requested a review from lksharma March 7, 2026 00:18
source: "prebid",
sdk_version: PREBID_VERSION,
provider_version: PROVIDER_VERSION,
dpr: typeof window !== "undefined" ? window.devicePixelRatio : 1,

Check warning

Code scanning / CodeQL

Use of browser API associated with fingerprinting Warning

devicePixelRatio is an indicator of fingerprinting; weight: 18.39
method: "POST",
url: ENDPOINT_URL,
data: converter.toORTB({ bidRequests: [bidRequest], bidderRequest }),
options: { contentType: "application/json", withCredentials: true },

Check warning

Code scanning / CodeQL

Application/json request type in bidder Warning

application/json request type triggers preflight requests and may increase bidder timeouts
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: af18dcbe15

ℹ️ About Codex in GitHub

Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

},
user: {
buyeruid: userId,
id: userId,

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Do not overwrite existing ORTB user.id

The ORTB builder already starts from bidderRequest.ortb2, but this assignment unconditionally replaces user.id with the adapter-derived userId (or a generated tmp_* ID). In setups where publishers provide ortb2.user.id but do not provide userIdAsEids, this drops a stable first-party identifier and replaces it with a per-request random value, which can reduce identity match quality and bidding performance; preserve an existing request.user.id and only set buyeruid/fallback IDs when needed.

Useful? React with 👍 / 👎.

return bidRequests.map((bidRequest) => ({
method: "POST",
url: ENDPOINT_URL,
data: converter.toORTB({ bidRequests: [bidRequest], bidderRequest }),

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Preserve params.bidFloor fallback in ORTB requests

By routing request construction entirely through converter.toORTB(...), the adapter no longer carries forward the previous fallback that read bid.params.bidFloor when no getFloor() function was present. Since ORTB bidfloor population depends on getFloor (typically from the floors module), deployments that rely on static params.bidFloor without that module will stop signaling floors after this migration, allowing bids below the intended minimum.

Useful? React with 👍 / 👎.

@coveralls
Copy link
Collaborator

Pull Request Test Coverage Report for Build 22787418921

Details

  • 131 of 131 (100.0%) changed or added relevant lines in 2 files are covered.
  • 3 unchanged lines in 2 files lost coverage.
  • Overall coverage increased (+0.001%) to 96.329%

Files with Coverage Reduction New Missed Lines %
test/spec/modules/id5AnalyticsAdapter_spec.js 1 96.13%
libraries/medianetUtils/logger.js 2 83.78%
Totals Coverage Status
Change from base Build 22738520064: 0.001%
Covered Lines: 217481
Relevant Lines: 225770

💛 - Coveralls

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants