Skip to content

adQuery Bid Adapter: standardize adapter request and response handling#14775

Merged
patmmccann merged 1 commit intoprebid:10.29.x-legacyfrom
adquery:adquery_work_legacy_10.29_update_adapter_consistency_1
Apr 22, 2026
Merged

adQuery Bid Adapter: standardize adapter request and response handling#14775
patmmccann merged 1 commit intoprebid:10.29.x-legacyfrom
adquery:adquery_work_legacy_10.29_update_adapter_consistency_1

Conversation

@adzida-adquery
Copy link
Copy Markdown
Contributor

Type of change

  • Updated bidder adapter

Description of change

Standardizes adapter logic by updating user ID handling, consent propagation, user sync payload, and response parsing to use consistent and modern structures.

…agation, user sync payload, and response parsing to use consistent and modern structures.
Copy link
Copy Markdown

@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: e961b445f7

ℹ️ 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".

Comment on lines +291 to +293
if (!userId) {
userId = eids[0]?.uids?.[0]?.id;
}
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Use only adquery.io IDs for bidQid

When no adquery.io EID exists, this fallback now takes the first EID from any source and sends it as bidQid. In mixed-ID setups (e.g. UID2/ID5 first in the list), that forwards a non-Adquery identifier to the Adquery endpoint, which changes prior behavior (previously it generated a local fallback ID) and can both mis-key user matching and leak unrelated IDs to this bidder.

Useful? React with 👍 / 👎.

Comment on lines 296 to 300
if (!userId) {
// onetime User ID
const ramdomValues = Array.from(window.crypto.getRandomValues(new Uint32Array(4)));
userId = ramdomValues.map(val => val.toString(36)).join('').substring(0, 20);
const randomValues = Array.from(window.crypto.getRandomValues(new Uint32Array(4)));
const randomPart = randomValues.map(val => val.toString(36)).join('').substring(0, 26);
userId = `qd_${randomPart}`;
logMessage('generated onetime User ID: ', userId);
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Persist generated fallback qid between bid requests

For requests without userIdAsEids, the adapter now generates a fresh random bidQid on every buildRequest call and does not persist it. In auctions with multiple Adquery bids, this produces different IDs within the same page view, reducing match consistency and breaking the previous single-session fallback behavior that reused one generated ID.

Useful? React with 👍 / 👎.

@coveralls
Copy link
Copy Markdown
Collaborator

Coverage Report for CI Build 24773319629

Coverage increased (+0.004%) to 96.38%

Details

  • Coverage increased (+0.004%) from the base build.
  • Patch coverage: 78 of 78 lines across 2 files are fully covered (100%).
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 228049
Covered Lines: 219793
Line Coverage: 96.38%
Relevant Branches: 53248
Covered Branches: 43445
Branch Coverage: 81.59%
Branches in Coverage %: No
Coverage Strength: 72.22 hits per line

💛 - Coveralls

@patmmccann patmmccann merged commit 50737bc into prebid:10.29.x-legacy Apr 22, 2026
98 checks passed
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.

3 participants