forked from prebid/Prebid.js
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
ID5 UserId module - integrate with TrueLink Id (prebid#11802)
* ID5 User Id module - integrate with TrueLinkId * ID5 User Id module - eids documentation * ID5 User Id module - changed the documentation, so it doesn't use multiplication Some partners are setting refreshInSeconds as string with value '8*3600', taken from the configuration. By using just a number we can still parse it (but we don't want to parse mathematical operations)
- Loading branch information
1 parent
ddc6edd
commit f634053
Showing
3 changed files
with
177 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -37,7 +37,7 @@ pbjs.setConfig({ | |
type: 'html5', // "html5" is the required storage type | ||
name: 'id5id', // "id5id" is the required storage name | ||
expires: 90, // storage lasts for 90 days | ||
refreshInSeconds: 8*3600 // refresh ID every 8 hours to ensure it's fresh | ||
refreshInSeconds: 7200 // refresh ID every 2 hours to ensure it's fresh | ||
} | ||
}], | ||
auctionDelay: 50 // 50ms maximum auction delay, applies to all userId modules | ||
|
@@ -61,7 +61,7 @@ pbjs.setConfig({ | |
| storage.type | Required | String | This is where the results of the user ID will be stored. ID5 **requires** `"html5"`. | `"html5"` | | ||
| storage.name | Required | String | The name of the local storage where the user ID will be stored. ID5 **requires** `"id5id"`. | `"id5id"` | | ||
| storage.expires | Optional | Integer | How long (in days) the user ID information will be stored. ID5 recommends `90`. | `90` | | ||
| storage.refreshInSeconds | Optional | Integer | How many seconds until the ID5 ID will be refreshed. ID5 strongly recommends 8 hours between refreshes | `8*3600` | | ||
| storage.refreshInSeconds | Optional | Integer | How many seconds until the ID5 ID will be refreshed. ID5 strongly recommends 2 hours between refreshes | `7200` | | ||
|
||
**ATTENTION:** As of Prebid.js v4.14.0, ID5 requires `storage.type` to be `"html5"` and `storage.name` to be `"id5id"`. Using other values will display a warning today, but in an upcoming release, it will prevent the ID5 module from loading. This change is to ensure the ID5 module in Prebid.js interoperates properly with the [ID5 API](https://github.com/id5io/id5-api.js) and to reduce the size of publishers' first-party cookies that are sent to their web servers. If you have any questions, please reach out to us at [[email protected]](mailto:[email protected]). | ||
|
||
|
@@ -73,3 +73,68 @@ To turn on A/B Testing, simply edit the configuration (see above table) to enabl | |
|
||
### A Note on Using Multiple Wrappers | ||
If you or your monetization partners are deploying multiple Prebid wrappers on your websites, you should make sure you add the ID5 ID User ID module to *every* wrapper. Only the bidders configured in the Prebid wrapper where the ID5 ID User ID module is installed and configured will be able to pick up the ID5 ID. Bidders from other Prebid instances will not be able to pick up the ID5 ID. | ||
|
||
### Provided eids | ||
The module provides following eids: | ||
|
||
``` | ||
[ | ||
{ | ||
source: 'id5-sync.com', | ||
uids: [ | ||
{ | ||
id: 'some-random-id-value', | ||
atype: 1, | ||
ext: { | ||
linkType: 2, | ||
abTestingControlGroup: false | ||
} | ||
} | ||
] | ||
}, | ||
{ | ||
source: 'true-link-id5-sync.com', | ||
uids: [ | ||
{ | ||
id: 'some-publisher-true-link-id', | ||
atype: 1 | ||
} | ||
] | ||
}, | ||
{ | ||
source: 'uidapi.com', | ||
uids: [ | ||
{ | ||
id: 'some-uid2', | ||
atype: 3, | ||
ext: { | ||
provider: 'id5-sync.com' | ||
} | ||
} | ||
] | ||
} | ||
] | ||
``` | ||
|
||
The id from `id5-sync.com` should be always present (though the id provided will be '0' in case of no consent or optout) | ||
|
||
The id from `true-link-id5-sync.com` will be available if the page is integrated with TrueLink (if you are an ID5 partner you can learn more at https://wiki.id5.io/en/identitycloud/retrieve-id5-ids/true-link-integration) | ||
|
||
The id from `uidapi.com` will be available if the partner that is used in ID5 user module has the EUID2 integration enabled (it has to be enabled on the ID5 side) | ||
|
||
|
||
### Providing TrueLinkId as a Google PPID | ||
|
||
TrueLinkId can be provided as a PPID - to use, it the `true-link-id5-sync.com` needs to be provided as a ppid source in prebid userSync configuration: | ||
|
||
```javascript | ||
pbjs.setConfig({ | ||
userSync: { | ||
ppid: 'true-link-id5-sync.com', | ||
userIds: [], //userIds modules should be configured here | ||
} | ||
}); | ||
``` | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters