Skip to content

Commit

Permalink
update id5 userid docs with new links, updated object structure
Browse files Browse the repository at this point in the history
  • Loading branch information
smenzer committed Sep 17, 2020
1 parent 80fa2e9 commit 12ba25f
Showing 1 changed file with 32 additions and 28 deletions.
60 changes: 32 additions & 28 deletions dev-docs/modules/userId.md
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ of sub-objects. The table below has the options that are common across ID system

### BritePool

BritePool ID, provided by [BritePool](https://britepool.com) is a Universal Identity resolution which does not depend on 3rd party cookies.
BritePool ID, provided by [BritePool](https://britepool.com) is a Universal Identity resolution which does not depend on 3rd party cookies.

Add it to your Prebid.js package with:

Expand All @@ -92,7 +92,7 @@ gulp build --modules=britepoolIdSystem

#### BritePool Registration

Please reach out to [[email protected]](mailto:[email protected]) and request your `api_key`.
Please reach out to [[email protected]](mailto:[email protected]) and request your `api_key`.

The BritePool privacy policy is at [https://britepool.com/services-privacy-notice/](https://britepool.com/services-privacy-notice/).

Expand Down Expand Up @@ -167,7 +167,7 @@ pbjs.setConfig({

### ID5 Universal ID

The ID5 Universal ID is a shared, neutral identifier that publishers and ad tech platforms can use to recognise users even in environments where 3rd party cookies are not available. The ID5 Universal ID is designed to respect users' privacy choices and publishers’ preferences throughout the advertising value chain. For more information about the ID5 Universal ID and detailed integration docs, please visit [our documentation](https://console.id5.io/docs/public/prebid). We also recommend that you sign up for our [release notes](https://id5.io/universal-id/release-notes) to stay up-to-date with any changes to the implementation of the ID5 Universal ID in Prebid.
The ID5 Universal ID is a shared, neutral identifier that publishers and ad tech platforms can use to recognise users even in environments where 3rd party cookies are not available. The ID5 Universal ID is designed to respect users' privacy choices and publishers’ preferences throughout the advertising value chain. For more information about the ID5 Universal ID and detailed integration docs, please visit [our documentation](https://wiki.id5.io/x/BIAZ). We also recommend that you sign up for our [release notes](https://id5.io/universal-id/release-notes) to stay up-to-date with any changes to the implementation of the ID5 Universal ID in Prebid.

#### ID5 Universal ID Registration

Expand All @@ -190,7 +190,7 @@ The following configuration parameters are available:
| name | Required | String | The name of this module: `"id5Id"` | `"id5Id"` |
| params | Required | Object | Details for the ID5 Universal ID. | |
| params.partner | Required | Number | This is the ID5 Partner Number obtained from registering with ID5. | `173` |
| params.pd | Optional | String | Publisher-supplied data used for linking ID5 IDs across domains. See [our documentation](https://console.id5.io/docs/public/prebid) for details on generating the string. Omit the parameter or leave as an empty string if no data to supply | `"MT1iNTBjY..."` |
| params.pd | Optional | String | Publisher-supplied data used for linking ID5 IDs across domains. See [our documentation](https://wiki.id5.io/x/BIAZ) for details on generating the string. Omit the parameter or leave as an empty string if no data to supply | `"MT1iNTBjY..."` |

{: .alert.alert-info :}
**NOTE:** The ID5 Universal 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) 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.
Expand Down Expand Up @@ -227,7 +227,11 @@ pbjs.setConfig({
userSync: {
userIds: [{
name: "id5Id",
value: { "id5id": "ID5-8ekgswyBTQqnkEKy0ErmeQ1GN5wV4pSmA-RE4eRedA" }
value: {
id5id: {
uid: "ID5-8ekgswyBTQqnkEKy0ErmeQ1GN5wV4pSmA-RE4eRedA"
}
}
}]
}
});
Expand Down Expand Up @@ -397,11 +401,11 @@ You are not required to register with LiveIntent to start using the LiveIntent I
1. Providing buyers a stable identifier, which can solve cross-browser and cross-channel frequency capping challenges.
2. Leveraging your first-party audiences to increase the value of your inventory.

When adding LiveIntent’s ID to your Prebid.js package, you disclose or make available Personal Information to LiveIntent. This information made available to LiveIntent is used to (i) connect with and reference data that already exists in LiveIntent’s graph (the “LiveIntent Graph”), and (ii) authenticate and validate data in aggregate to improve the performance of the services LiveIntent provides. By activating LiveIntent’s module, you hereby confirm that with regard to all individuals to whom Personal Information relates, you have, at or before the point of collecting Personal Information or making Personal Information available to LiveIntent, provided any legally required notices, obtained any legally required consents, and provided individuals with an opportunity to opt-out of the sharing of Personal Information, if such an opt-out is required under applicable laws, such that LiveIntent can provide service to you as described here and in LiveIntent’s privacy policies for the services which can be found at [https://www.liveintent.com/services-privacy-policy/](https://www.liveintent.com/services-privacy-policy/)
When adding LiveIntent’s ID to your Prebid.js package, you disclose or make available Personal Information to LiveIntent. This information made available to LiveIntent is used to (i) connect with and reference data that already exists in LiveIntent’s graph (the “LiveIntent Graph”), and (ii) authenticate and validate data in aggregate to improve the performance of the services LiveIntent provides. By activating LiveIntent’s module, you hereby confirm that with regard to all individuals to whom Personal Information relates, you have, at or before the point of collecting Personal Information or making Personal Information available to LiveIntent, provided any legally required notices, obtained any legally required consents, and provided individuals with an opportunity to opt-out of the sharing of Personal Information, if such an opt-out is required under applicable laws, such that LiveIntent can provide service to you as described here and in LiveIntent’s privacy policies for the services which can be found at [https://www.liveintent.com/services-privacy-policy/](https://www.liveintent.com/services-privacy-policy/)

#### How does LiveIntent ID work

The LiveIntent ID sub-module resolves the identity of audiences by connecting impression opportunities to a stable identifier (nonID). In order to provide resolution one or more first-party cookies are used to create a stable identifier.
The LiveIntent ID sub-module resolves the identity of audiences by connecting impression opportunities to a stable identifier (nonID). In order to provide resolution one or more first-party cookies are used to create a stable identifier.

How does LiveIntent ID sub-module decide, which first-party cookies to use:
1. By default LiveIntent ID sub-module generates its own first-party identifier on the publisher’s domain. Publishers have the option to disable the cookie generation when configuring the LiveIntent ID sub-module.
Expand Down Expand Up @@ -449,11 +453,11 @@ pbjs.setConfig({
params: {
publisherId: "9896876"
},
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
}]
}
})
Expand All @@ -469,11 +473,11 @@ pbjs.setConfig({
publisherId: "9896876",
identifiersToResolve: ["my-own-cookie"]
},
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
}]
}
})
Expand All @@ -498,11 +502,11 @@ pbjs.setConfig({
appId: "a-0012"
}
},
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
storage: {
type: “cookie”,
name: “pbjs_li_nonid”, //create a cookie with this name
expires: 1 // cookie is stored for 1 day
}
}]
}
})
Expand Down Expand Up @@ -671,17 +675,17 @@ pbjs.setConfig({

### Shared ID User ID Submodule

Shared ID User ID Module generates a UUID that can be utilized to improve user matching.This module enables timely synchronization which handles sharedId.org optout. This module does not require any registration.
Shared ID User ID Module generates a UUID that can be utilized to improve user matching.This module enables timely synchronization which handles sharedId.org optout. This module does not require any registration.

#### Building Prebid with Shared Id Support
Your Prebid build must include the modules for both **userId** and **sharedId** submodule.
Your Prebid build must include the modules for both **userId** and **sharedId** submodule.
Add it to your Prebid.js package with:

ex: $ gulp build --modules=userId,sharedIdSystem

#### Prebid Params

Individual params may be set for the Shared ID User ID Submodule.
Individual params may be set for the Shared ID User ID Submodule.
```
pbjs.setConfig({
usersync: {
Expand Down Expand Up @@ -827,7 +831,7 @@ Bidders that want to support the User ID module in Prebid.js, need to update the
| --- | --- | --- | --- | --- | --- |
| BritePool ID | BritePool | bidRequest.userId.britepoolid | `"1111"` |
| CriteoID | Criteo | bidRequest.userId.criteoId | `"1111"` |
| ID5 ID | ID5 | bidRequest.userId.id5id | `"1111"` |
| ID5 ID | ID5 | bidRequest.userId.id5id | `{ uid: "1111", ext: { linkType: 2 } }` |
| IdentityLink | Trade Desk | bidRequest.userId.idl_env | `"1111"` |
| LiveIntent ID | Live Intent | bidRequest.userId.lipb.lipbid | `"1111"` |
| IntentIQ ID | IntentIQ | bidRequest.userId.intentiqid | `"1111"` |
Expand Down Expand Up @@ -944,7 +948,7 @@ pbjs.getUserIds() // returns object like bidRequest.userId. e.g. {"pubcid":"1111

You can use `getUserIdsAsEids()` to get the user IDs stored by Prebid User ID module in ORTB Eids format. Refer [eids.md](https://github.com/prebid/Prebid.js/blob/master/modules/userId/eids.md) for output format.
```
pbjs.getUserIdsAsEids() // returns userIds in ORTB Eids format. e.g.
pbjs.getUserIdsAsEids() // returns userIds in ORTB Eids format. e.g.
[
{
source: 'pubcid.org',
Expand All @@ -965,7 +969,7 @@ pbjs.getUserIdsAsEids() // returns userIds in ORTB Eids format. e.g.
}]
}
]
```
```

## Passing UserIds to Google Ad Manager for targeting

Expand Down

0 comments on commit 12ba25f

Please sign in to comment.