← Back to release summary

Private Aggregation API: filtering IDs

Category
Miscellaneous
Type
New or changed feature
Status
Enabled by default (Chrome 128)
Intent stage
None

Summary

Modifies the Private Aggregation API to add a 'filtering ID' to the aggregatable reports' encrypted payloads. This ID allows histogram contributions with different filtering IDs to be processed separately on the aggregation service. A list of filtering IDs could be provided in an aggregation query and any contributions not matching a listed ID will be filtered out, not contributing to the result. To support the new feature, we update the report version to "1.0" (from "0.1"). By the time this is launched to Stable, all valid aggregation service releases will support the new report version, avoiding backwards compatibility concerns. (Old releases are deprecated on a regular schedule.)

Motivation

Currently, the Aggregation Service only allows each 'shared ID' to be present in one query. A set of reports with the same shared ID cannot be split for separate queries, even if the resulting batches are disjoint. There have been requests to introduce additional flexibility to this query model. This feature allows for a new filtering ID set when a contribution is made and embedded in the encrypted payload. These IDs allow for these queries to be split further, with the aggregation service filtering contributions based on the provided IDs.

Standards & signals

Explainers: https://github.com/patcg-individual-drafts/private-aggregation-api/blob/main/flexible_filtering.md

View on chromestatus.com