Skip to content

IntentIq ID Module & Analytical Adapter: increase default server call time, support region, bugfixes#14374

Merged
patmmccann merged 12 commits intoprebid:masterfrom
DimaIntentIQ:v_0.34
Jan 26, 2026
Merged

IntentIq ID Module & Analytical Adapter: increase default server call time, support region, bugfixes#14374
patmmccann merged 12 commits intoprebid:masterfrom
DimaIntentIQ:v_0.34

Conversation

@DimaIntentIQ
Copy link
Contributor

@DimaIntentIQ DimaIntentIQ commented Jan 23, 2026

Type of change

  • Bugfix
  • Feature
  • Code style update (formatting, local variables)

Other information

  • Added support for region in configuration
  • Included ad size and position in reports
  • Increased the default server call interval to 72 hours
  • Bug fixes and minor improvements

Related pull requests in prebid.io -> prebid/prebid.github.io#6408

@DimaIntentIQ DimaIntentIQ changed the title IntentIq ID Module & Analytical Adapter: IntentIq ID Module & Analytical Adapter: increase default server call time, support region, bugfixes Jan 23, 2026
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: dec84b084c

ℹ️ 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 +19 to +21
export const getIiqServerAddress = (configParams = {}) => {
if (typeof configParams?.iiqServerAddress === 'string') return configParams.iiqServerAddress;
return buildServerAddress('api', configParams.region);

Choose a reason for hiding this comment

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

P1 Badge Preserve GDPR endpoint selection when region unset

This helper now builds API/reporting/sync base URLs solely from configParams.region, which means GDPR detection from CMP no longer influences endpoint choice. If a publisher previously relied on automatic GDPR routing (e.g., gdprString present but no explicit region configured), requests will now go to *.intentiq.com instead of *-gdpr.intentiq.com, changing behavior for existing integrations and potentially violating data-residency/consent expectations. Consider retaining the CMP-based GDPR fallback (or mapping gdprString → region) so default behavior doesn’t regress for EU traffic.

Useful? React with 👍 / 👎.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

In our system, each partner account is provisioned for a specific region, and traffic should use the matching regional account. So region routing is intentional and explicit — the account must match the target region.

Comment on lines +12 to +13
const firstKey = Object.keys(mediaTypes)[0];
const pos = mediaTypes[firstKey]?.pos;

Choose a reason for hiding this comment

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

P2 Badge Use mediaType-specific pos for multi-format adUnits

This picks the first key in adUnit.mediaTypes to read pos. For multi-format adUnits (e.g., banner + video), object key order is not guaranteed to match the winning mediaType, so a video win can be reported with the banner pos (or undefined), corrupting analytics. Consider selecting mediaTypes[data.mediaType]?.pos (or mapping from adType) when the event includes a media type.

Useful? React with 👍 / 👎.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

pos is defined at the adUnit level and is identical across mediaTypes, so reading it from any mediaTypes entry yields the same value. We don’t depend on key order for correctness in this case.

@coveralls
Copy link
Collaborator

Pull Request Test Coverage Report for Build 21288978463

Details

  • 162 of 164 (98.78%) changed or added relevant lines in 9 files are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+0.006%) to 96.221%

Changes Missing Coverage Covered Lines Changed/Added Lines %
libraries/intentIqUtils/getRefferer.js 8 9 88.89%
test/spec/modules/intentIqAnalyticsAdapter_spec.js 61 62 98.39%
Totals Coverage Status
Change from base Build 21265604449: 0.006%
Covered Lines: 208845
Relevant Lines: 217047

💛 - Coveralls

@patmmccann patmmccann merged commit b1836ae into prebid:master Jan 26, 2026
102 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.

4 participants

Comments