pakopress.dev — Prebid.js · configUrl only · third-party

Same isolated knob as the first-party page, with a hardcoded configUrl (no enabler yet), but pointed at the ID5-hosted edge edge.eu-2-id5-sync.com — a different registrable domain, so third-party to the page (not the blocked root id5-sync.com). The submodule's config POST (#callForConfig) reaches it, and the ID5 app returns a dynamicConfig that decides the fetch URL (server-side, from X-ID5-*). No externalModuleUrl and no id5ApiBaseUrl. For partners who do not own the publisher's domain.

Resolving the ID5 ID through Prebid…

ID5 ID inside the auction

Waiting for the first auction…

Read from the bidRequest.userIdAsEids seen by a pbjs auction event.

Integration

Knob exercised: configUrl → edge.eu-2-id5-sync.com/a7q3/config/prebid (third-party ID5 edge, hardcoded)
Server-driven: the ID5 app returns the fetch URL in dynamicConfig (based on X-ID5-*) — already solved app-side
Not set here: externalModuleUrl, id5ApiBaseUrl (Prebid uses its default module path)
<!-- 1. Load Prebid.js (with the ID5 User ID module) -->
<script src="https://pakopress.dev/prebid.js"></script>

<!-- 2. Configure the ID5 User ID module -->
pbjs.setConfig({
  userSync: {
    auctionDelay: 300,
    userIds: [{
      name: 'id5Id',
      params: {
        partner: 173,
        configUrl: 'https://edge.eu-2-id5-sync.com/a7q3/config/prebid'  ← third-party ID5 edge; app returns the fetch URL
      },
      storage: { type: 'html5', name: 'id5id', expires: 90 }
    }]
  }
});

Requests made by this page

green = first-party · amber = ID5 edge (incl. the config POST to edge.eu-2-id5-sync.com) · red = direct id5-sync.com

typehostpath