The User ID module has been available since Prebid.js 2.10.0.
The User ID module supports multiple ways of establishing pseudonymous IDs for users, which is an important way of increasing the value of header bidding. Instead of having several exchanges sync IDs with dozens of demand sources, a publisher can choose to integrate with one of these ID schemes:
setConfig()is called, and if the user has consented to storing IDs locally, the module is invoked to call the URL if needed
Note that User IDs aren’t needed in the mobile app world because device ID is available in those ad serving scenarios.
Also note that not all bidder adapters support all forms of user ID. See the tables below for a list of which bidders support which ID schemes.
While the Unified ID approach is open to other cookie vendors, the only one currently supporting Prebid.js is The Trade Desk. Prebid.org welcomes other ID vendors - create a PR or email email@example.com.
When paired with the
CookieConsent module, privacy rules are enforced:
In addition, individual users may opt-out of receiving cookies and HTML5 local storage by setting these values:
_pbjs_id_optoutcookie or HTML5 local storage
_pubcid_optoutcookie or HTML5 local storage (for backwards compatibility with the PubCommonID module.
You can set up Unified ID in one of these ways:
1) Publisher has a partner ID with The Trade Desk, and is using the default endpoint for Unified ID.
Bug: The default URL did not support HTTPS in Prebid.js 2.10-2.14. So instead of using the ‘partner’ parameter, it’s best to supply the Trade Desk URL.
2) Publisher supports UnifiedID with a vendor other than Trade Desk and HTML5 local storage.
3) Publisher has integrated with UnifiedID on their own and wants to pass the UnifiedID directly through to Prebid.js
4) Publisher supports PubCommonID and first party domain cookie storage
5) Publisher supports both UnifiedID and PubCommonID and first party domain cookie storage
By including this module, the following options become available in
all of them under the
usersync object as attributes of the
of sub-objects. See the examples above for specific use cases.
|Param under usersync.userIds||Scope||Type||Description||Example|
|params||Required for UnifiedId||Object||Details for UnifiedId.|
|params.partner||Either this or url required for UnifiedId||String||This is the Trade Desk partner ID value obtained from registering with The Trade Desk or working with a Prebid.js managed services provider. Note that the default URL is HTTP-only in Prebid.js 2.10-2.14. If your site is HTTPS, supply the override as shown in example 1 above.||
|params.url||Either this or partner required for UnifiedId||String||If specified, overrides the default Trade Desk URL.||“https://unifiedid.org/somepath?args”|
||Object||The publisher must specify some kind of local storage in which to store the results of the call to get the user ID. This can be either cookie or HTML5 storage.|
|storage.type||Required||String||Must be either
|storage.name||Required||String||The name of the cookie or html5 local storage where the user ID will be stored.||
|storage.expires||Optional||Integer||How long (in days) the user ID information will be stored. Default is 30 for UnifiedId and 1825 for PubCommonID||
|value||Optional||Object||Used only if the page has a separate mechanism for storing the Unified ID. The value is an object containing the values to be sent to the adapters. In this scenario, no URL is called and nothing is added to local storage||
For bidders that want to support one or more of these ID systems here are the specific details.
|ID System Name||ID System Host||Prebid.js Attr||Prebid Server Attr||Notes|
|PubCommon ID||n/a||bidRequest.userId.pubcid||user.ext.tpid.source=”pubcid”||PubCommon is unique to each publisher domain.|
|Unified ID||Trade Desk||bidRequest.userId.tdid||user.ext.tpid.source=”tdid”|
Bidders that want to support the User ID module in Prebid.js, need to update their bidder adapter to read the indicated bidRequest attributes.
Bidders that want to support the User ID module in Prebid Server, need to update their server-side bid adapter to read the indicated OpenRTB attributes. For example:
If you’re an ID provider that wants to get on the list: