Global Privacy Platform API v1.1 Is Ready For Implementation

We are excited to announce the release of the Global Privacy Platform (GPP) API v1.1. Driven by feedback from industry stakeholders, this latest API version–GPP API v1.1–incorporates key updates to streamline the usage of the GPP. IAB Tech Lab worked closely with members of the Global Privacy Working Group to deliver the items in this release.

A Quick Refresher on the API

The GPP API provides a standardized means for parties, such as the hosting publisher or an advertising vendor, to access these preferences managed by the CMP. Using the GPP API, scripts may obtain the GPP String payload and the information it contains, which is ready to use without having to understand how to “unpack” the payload format. This makes it easy to make immediate data processing decisions based on the returned information.The API promotes interoperability for accessing privacy signals that support different regulations.

What’s New This Release?

The version 1.1 release includes five key updates to the API:

  1. Callback Integration: To improve interactions with the API callbacks have been added to all commands in GPP API v1.1. Previously, only the addEventListener command supported callbacks, but now the ping, hasSection, getSection, and getField commands also include this functionality. This improves the ability for vendors who utilize scripts in iframes to interact with the API. 
  1. Enhanced PingReturn Object: GPP API v1.1 introduces several new fields in the PingReturn object, including sectionList, applicableSections, gppString, and parsedSections. These additions consolidate all the essential data in a single API call. This reduces the number of necessary requests and simplifies calling scripts.
  1. Deprecation of getGPPData Command and GPPData Object: With the evolution of the PingReturn object, the getGPPData command and GPPData object have become obsolete. In the past, the GPPData object contained critical information such as gpp version, encoded GPPString, and applicable sections. However, with the inclusion of sectionList, applicableSections, and gppString in the PingReturn object, all the necessary data is readily available. This eliminates the need for the getGPPData command and allows vendors to streamline their implementation.
  1. Updated Status Codes: To provide clarity on the readiness of the GPP string, the new version of the API introduces a new event called signalStatus. This event, included within the pingReturn object, indicates whether the GPP string is “ready” or “not ready” for reading. Ultimately, this clarifies when a GPP string is ready to be used.
  1. Improved getSection Command: To accommodate the presence of subsections within many sections, the getSection command has undergone an update. In GPP API v1.1, it returns an array of objects instead of a parsed object representation. This update provides clarity on how data from a sub-section may be retrieved and also eliminates  the need for multiple API calls to retrieve complete section data. 

What’s Next For The Global Privacy Working Group?

The javascript and java code libraries will be updated in the coming weeks to reflect these changes. Additionally, IAB Tech Lab is planning to host a webinar to walkthrough the updates of this release. Attend the session to stay up to date with the evolving standards and make the most of the GPP API v1.1.


ABOUT THE AUTHOR

Jared Moscow
Director of Product, Privacy & Addressability
IAB Tech Lab