Skip to content

Synapse HX Bid Adapter : initial release#15331

Open
prebid-compas wants to merge 1 commit into
prebid:masterfrom
prebid-compas:implement-synapse-hx-adapter
Open

Synapse HX Bid Adapter : initial release#15331
prebid-compas wants to merge 1 commit into
prebid:masterfrom
prebid-compas:implement-synapse-hx-adapter

Conversation

@prebid-compas

@prebid-compas prebid-compas commented Jul 9, 2026

Copy link
Copy Markdown

Type of change

  • New bidder adapter

Description of change

New bidder adapter for Synapse HX
Maintainer: prebid@compas-inc.com

Other information

Docs PR - prebid/prebid.github.io#6657

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

Copy link
Copy Markdown

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: e8a3686751

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

netRevenue: true,
ttl: 30
},
translator: toOrtb26

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 Apply ORTB 2.6 translation to consent fields

When consent modules are enabled in real auctions, Prebid normalizes GDPR/USP consent into ORTB 2.5-style paths such as regs.ext.gdpr, regs.ext.us_privacy, and user.ext.consent, but ortbConverter does not consume a translator option, so this line is a no-op. As a result, the Synapse ORTB 2.6 endpoint will not receive the regs.gdpr, regs.us_privacy, or user.consent fields that the adapter tests expect unless toOrtb26(data) is applied explicitly after converter.toORTB(...) or inside the request customizer.

Useful? React with 👍 / 👎.

method: METHOD,
url: makeUrl(bidRequests),
options: {
contentType: 'application/json',

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 Use a safelisted content type for POSTs

For browser auctions this is a cross-origin POST with credentials, and Content-Type: application/json is not CORS-safelisted, so each bid request can incur an OPTIONS preflight and can fail entirely if the exchange does not answer preflight before the auction timeout. Prebid's bidderFactory already stringifies object payloads for POSTs, so using text/plain avoids the extra round trip unless this endpoint explicitly requires preflighted JSON.

Useful? React with 👍 / 👎.

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Whoa there, partner! 🌵🤠 We wrangled some duplicated code in your PR:

Reducing code duplication by importing common functions from a library not only makes our code cleaner but also easier to maintain. Please move the common code from both files into a library and import it in each. We hate that we have to mention this, however, commits designed to hide from this utility by renaming variables or reordering an object are poor conduct. We will not look upon them kindly! Keep up the great work! 🚀

method: METHOD,
url: makeUrl(bidRequests),
options: {
contentType: 'application/json',
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

Whoa there partner! This project is migrating to typescript. Consider changing the new JS files to TS, with well-defined types for what interacts with the prebid public API (for example: bid params and configuration). Thanks!

  • modules/synapseHxBidAdapter.js

@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown

This PR introduces changes that may not work on all browsers. According to Babel, the following polyfills may be needed, and they are not automatically included:

  • Changes to modules/synapseHxBidAdapter.js may need:
    • es.array.push
    • es.iterator.constructor
    • es.iterator.for-each
    • esnext.iterator.constructor
    • esnext.iterator.for-each
    • web.url-search-params.delete
    • web.url-search-params.has
    • web.url-search-params.size
  • Changes to test/spec/modules/synapseHxBidAdapter_spec.js may need:
    • es.iterator.constructor
    • es.iterator.for-each
    • es.json.stringify
    • esnext.iterator.constructor
    • esnext.iterator.for-each

The best way to address this is to provide good test coverage, as normal PR checks run unit tests on older browsers.

@barecheck

barecheck Bot commented Jul 9, 2026

Copy link
Copy Markdown

Barecheck - Code coverage report

Total: 96.57%

Your code coverage diff: 0.00% ▴

Uncovered files and lines
FileLines
modules/synapseHxBidAdapter.js17, 46, 106, 117-121

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