Skip to content

Commit

Permalink
ID5 UserId - updated id5.md with eids information (prebid#5440)
Browse files Browse the repository at this point in the history
* ID5 UserId - updated id5.md with eids information

* ID5 UserId - fixed id5.md lint

* ID5 UserId - added docs for provider param

* Update dev-docs/modules/userid-submodules/id5.md

Use javascript instead of json for proper formatting

---------

Co-authored-by: Muki Seiler <[email protected]>
  • Loading branch information
2 people authored and linzhucheng committed Jul 5, 2024
1 parent 3fe6cb8 commit 15ab69e
Showing 1 changed file with 64 additions and 2 deletions.
66 changes: 64 additions & 2 deletions dev-docs/modules/userid-submodules/id5.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,10 @@ The following configuration parameters are available:
| params.abTesting.enabled | Optional | Boolean | Set this to `true` to turn on this feature | `true` or `false` |
| params.abTesting.controlGroupPct | Optional | Number | Must be a number between `0.0` and `1.0` (inclusive) and is used to determine the percentage of requests that fall into the control group (and thus not exposing the ID5 ID). For example, a value of `0.20` will result in 20% of requests without an ID5 ID and 80% with an ID. | `0.1` |
| params.disableExtensions | Optional | Boolean | Set this to `true` to force turn off extensions call. Default `false` | `true` or `false` |
| params.provider | Optional | String | An identifier provided by ID5 to technology partners who manage API deployments on behalf of their clients. Reach out to ID5 if you have questions about this parameter. | `"providerName"` |

{: .alert.alert-info :}
**NOTE:** The ID5 ID that is delivered to Prebid will be encrypted by ID5 with a rotating key to avoid unauthorized usage and to enforce privacy requirements. Therefore, we strongly recommend setting `storage.refreshInSeconds` to `8` hours (`8*3600` seconds) or less to ensure all demand partners receive an ID that has been encrypted with the latest key, has up-to-date privacy signals, and allows them to transact against it.
**NOTE:** The ID5 ID that is delivered to Prebid will be encrypted by ID5 with a rotating key to avoid unauthorized usage and to enforce privacy requirements. Therefore, we strongly recommend setting `storage.refreshInSeconds` to `2` hours (`7200` seconds) or less to ensure all demand partners receive an ID that has been encrypted with the latest key, has up-to-date privacy signals, and allows them to transact against it.

### A Note on A/B Testing

Expand Down Expand Up @@ -70,7 +71,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
Expand All @@ -80,3 +81,64 @@ pbjs.setConfig({

{: .alert.alert-warning :}
**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. For the same reasons it is very important as of Prebid.js v8.33.0 to provide the `externalModuleUrl` parameter and set it to the latest available module version at `https://cdn.id5-sync.com/api/1.0/id5PrebidModule.js`. If you have any questions, please reach out to us at [[email protected]](mailto:[email protected]).

### Provided eids
The module provides following eids:

```javascript
[
{
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 [ID5 wiki](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
}
});
```

0 comments on commit 15ab69e

Please sign in to comment.