Initiate Cookie Sync to ID5

Process Overview


While third-party cookies are still in use, ID5 can synchronize with ad tech vendors to enhance user recognition, improving audience addressability and monetization.

ID5 can provide a pixel that can be added to publisher or advertiser pages or dropped alongside other code, like creatives or additional pixels. It can be deployed by a media owner or any ad tech vendor with access to a publisher's page. The pixel sends a request to ID5 with your UID (optional) to initiate a cookie synchronization with approved platforms. ID5 takes user consent into account when determining whether to initiate a cascade and in choosing which platforms to sync cookies with.

Initiate cookie syncing

  1. When you have access to a user’s browser (via client-side tags, delivering a creative, etc.), drop our pixel on the page
  2. ID5's servers receive the request, store your UID (optional), and determine the best platform to sync with (respecting user privacy choices and your preferences, and optimized by our algorithms)
  3. ID5 redirects the request to this platform who in turn redirects back to ID5 with their UID
  4. ID5 repeats steps (2) and (3) until we have no more platforms to sync with or the number of cascades you have allowed is reached
  5. If you specify a callback URL, ID5 will then call the URL provided

ID5 Cookie Sync Pixel URL with a User ID


URL Path Parameters

Parameter Type Description
id5AccountNum Integer Your ID account number, provided by ID5
numCascadesAllowed Integer Number of additional platform calls allowed on the back of the initial synchronisation call to ID5 (step (4) above). We recommend setting this value to 9.

Querystring Parameters

Parameter Type Description
puid String Your unique ID for the user, encoded as a url parameter
gdpr Integer (optional) Whether or not GDPR applies to this request. Accepted values are 0 or 1.
gdpr_consent String (optional) A valid IAB TCF consent string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no consent string and process accordingly.
gpp String (optional) A valid IAB Global Privacy Platform consent string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no consent string and process accordingly.
gpp_sid String (optional) The GPP section ID(s) (integers) in force for the current transaction. In most cases, this field should have a single section ID. In rare occasions where such a single section ID can not be determined, the field may contain up to 2 values, separated by a comma. More information in GPP documentation
us_privacy String (optional) A valid IAB US Privacy string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no US Privacy string and process accordingly.
callback String (optional) A URL-encoded url that we will return back to at the end of the cascade chain. If you would like to receive the ID5 ID in this callback, include the macro {ID5UID} (properly encoded as %7BID5UID%7D) in your url where you’d like to receive it).
Please speak with your ID5 Account Manager or contact [email protected] to enable this feature

Pixels with a Callback

If you'd like to use the callback feature or retrieve the ID5 ID, please inform your ID5 representative so your account can be configured. When performing a user sync with a callback URL, ID5 will cascade through available partners before redirecting to the URL you provided via a 302 redirect. However, in some cases, ID5 will not redirect and will return a 204 response instead.

Cases when ID5 will issue a 204 instead of calling the callback url:
  1. You did not have a proper legal basis to process user data (ex: in Europe, you provided a consent string but you did not have consent for Purpose 1)
  2. The user has opted out of ID5 (by visiting our Privacy Preferences Center)
  3. We detected that the user is blocking third party cookies

Example Implementations

In all examples below, we use AABBC12345 as the user ID that you would like to send to ID5.

Standard pixel

https://id5-sync.com/s/113/9.gif?puid=AABBC12345&gdpr=1&gdpr_consent=BOEFEAyOEFEAyAHABDENAI4AAAB9vABAASA

Pixel with callback

Callback URL: https://dummyimage.com/600x250&text=HelloWorld

https://id5-sync.com/s/113/9.gif?puid=AABBC12345&gdpr=1&gdpr_consent=BOEFEAyOEFEAyAHABDENAI4AAAB9vABAASA&gpp=DBABMA~BOEFEAyOEFEAyAHABDENAI4AAAB9vABAASA&gpp_sid=2&callback=https%3A%2F%2Fdummyimage.com%2F600x250%26text%3DHelloWorld

Pixel with callback receiving the ID5 ID

Callback URL: https://dummyimage.com/600x250&text=%7BID5UID%7D

https://id5-sync.com/s/113/9.gif?puid=AABBC12345&gdpr=1&gdpr_consent=BOEFEAyOEFEAyAHABDENAI4AAAB9vABAASA&gpp=DBABMA~BOEFEAyOEFEAyAHABDENAI4AAAB9vABAASA&gpp_sid=2&callback=https%3A%2F%2Fdummyimage.com%2F600x250%26text%3D{ID5UID}

Initiate by Cookie Sync Pixel URL without a User ID

If you have access to the page you can simply add a pixel tag with URL:

or add an iframe with URL:

This endpoint will drop an initial pixel and allows the inclusion of additional pixels, configurable in the ID5 console. For more details or assistance with configuring additional pixels, please contact your ID5 Account Manager or reach out to support at [email protected].

URL Path Parameters

Parameter Type Description
id5AccountNum Integer Your ID account number, provided by ID5
numCascadesAllowed Integer Number of additional platform calls allowed on the back of the initial synchronisation call to ID5 (step (4) above). We recommend setting this value to 9.

Querystring Parameters

Parameter Type Description
gdpr Integer (optional) Whether or not GDPR applies to this request. Accepted values are 0 or 1.
gdpr_consent String (optional) A valid IAB TCF consent string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no consent string and process accordingly.
gpp String (optional) A valid IAB Global Privacy Platform consent string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no consent string and process accordingly.
gpp_sid String (optional) The GPP section ID(s) (integers) in force for the current transaction. In most cases, this field should have a single section ID. In rare occasions where such a single section ID can not be determined, the field may contain up to 2 values, separated by a comma. More information in GPP documentation
us_privacy String (optional) A valid IAB US Privacy string. If the string is missing, misconstructed, or otherwise invalid, we will treat the request as if it has no US Privacy string and process accordingly.
callback String (optional) A URL-encoded url that we will return back to at the end of the cascade chain. If you would like to receive the ID5 ID in this callback, include the macro {ID5UID} (properly encoded as %7BID5UID%7D) in your url where you’d like to receive it).
Please speak with your ID5 Account Manager or contact [email protected] to enable this feature

Pixel URL

https://id5-sync.com/i/113/9.gif

Standard Pixel

<img src="https://id5-sync.com/i/113/9.gif" style="display:none;" height="0" width="0" id="id5-pixel"/>

See a working example on the sample page.

Adding a pixel with JavaScript


    function firePixel(url) {
    let img = new Image();
    img.src = url;
    }

    (function () {
    let syncUrl = "https://id5-sync.com/i/113/9.gif"
    if (document.readyState !== 'loading') {
      firePixel(syncUrl);
    } else {
        document.addEventListener('DOMContentLoaded', function () {
        firePixel(syncUrl);
      });
    }
    })();
		

See a more advanced example with GDPR consent collecting on the sample page

Adding a pixel as an iFrame

<iframe src="https://id5-sync.com/iwp/113/9.html"/>

Initiate by ID5-API.JS (Publisher)

If you have integrated our id5-api.js on your page, user syncing will automatically initiate user syncing once the ID5 ID has been provisioned to the page. No additional user sync integration is required. You can configure the maximum number of syncs using the maxCascades property. If you have your own proprietary user ID, you can pass it to the ID5 API via the partnerUserId configuration property. More details can be found here.