In September 2022, the Global Privacy Platform (GPP) was introduced to establish a technical standard for communicating user preferences throughout the digital supply chain. The GPP is an industry-driven effort created by and for the industry. As with any new initiative, feedback and insights are gathered to identify areas for improvement. The feedback collected from industry stakeholders has resulted in improvements to the CMP API specification, enabling vendors to interact with the API more effectively. The latest API version, GPP API v1.1, is now available for public comment until May 26th, 2023. Comments can be submitted to globalprivacy@dev.iabtechlab.com. Below are the key updates included in this latest version.
What’s Included In This Release?
Inclusion of callbacks and removal of direct return values for all commands
In order to better support vendors with scripts in an iframe, callbacks were added for all commands. The addEventListener command already included the use of callbacks. The ping, hasSection, getSection, and getField commands now include callbacks. Additionally, direct return values have been removed for all commands.
Inclusion of sectionList, applicableSections, and gppString in the PingReturn object
Several fields have been included in the PingReturn object. Including the sectionList, applicableSections, and gppString fields in the PingReturn object provides vendors with all the necessary data in a single call, thereby reducing the number of API calls required and simplifying the complexity of their scripts.
Deprecation of the getGPPData command and GPPData object
The GPPData object is returned by the getGPPData command. It contains crucial information, such as the sections in the gpp string, gpp version, encoded GPPString, applicableSections, and data from the pingReturn object. However, as described above, several fields have been added to the PingReturn object, including sectionList, applicableSections, and gppString. These additions have made all the data available in the GPPData object also accessible in the PingReturn object retrieved by calling the ping or via addEventListener command. Therefore, the GPPData object is no longer necessary, and there is no need to use the getGPPData command.
Updates to status codes
A new event named signalStatus was introduced with potential values of “ready” or “not ready”. This is also included in the pingReturn object to indicate whether the GPP string is ready to be read.
Update to getSection data
The getSection command was originally designed to return a parsed object representation of a section. However, due to the presence of sub-sections within many sections, this has been updated to an array of objects. This format is better suited to the expected data to be returned and eliminates the need for callers of the API to make multiple calls to obtain all the data for a given section.
What’s Next?
IAB Tech Lab will be hosting a webinar to walk through the latest updates to the Global Privacy Platform’s CMP API in the near future. The webinar will offer participants an opportunity to gain a comprehensive understanding of the changes made to the API specification.