@@ -15,6 +15,7 @@ dictionary AuctionAd {
1515
1616 USVString buyerReportingId;
1717 USVString buyerAndSellerReportingId;
18+ sequence<USVString> selectableBuyerAndSellerReportingIds;
1819 sequence<USVString> allowedReportingOrigins;
1920 DOMString adRenderId;
2021};
@@ -47,11 +48,16 @@ dictionary GenerateBidInterestGroup {
4748 record<DOMString, sequence<DOMString>> sizeGroups;
4849};
4950
51+ dictionary ProtectedAudiencePrivateAggregationConfig {
52+ USVString aggregationCoordinatorOrigin;
53+ };
54+
5055dictionary AuctionAdInterestGroup : GenerateBidInterestGroup {
5156 double priority = 0.0;
5257 record<DOMString, double> prioritySignalsOverrides;
5358 required double lifetimeMs;
5459 DOMString additionalBidKey;
60+ ProtectedAudiencePrivateAggregationConfig privateAggregationConfig;
5561};
5662
5763[SecureContext]
@@ -76,6 +82,18 @@ partial interface Navigator {
7682 readonly attribute boolean deprecatedRunAdAuctionEnforcesKAnonymity;
7783};
7884
85+ dictionary AuctionReportBuyersConfig {
86+ required bigint bucket;
87+ required double scale;
88+ };
89+
90+ dictionary AuctionReportBuyerDebugModeConfig {
91+ boolean enabled = false;
92+
93+ // Must only be provided if `enabled` is true.
94+ bigint? debugKey;
95+ };
96+
7997dictionary AuctionRealTimeReportingConfig {
8098 required DOMString type;
8199};
@@ -89,21 +107,27 @@ dictionary AuctionAdConfig {
89107 sequence<USVString> interestGroupBuyers;
90108 Promise<any> auctionSignals;
91109 Promise<any> sellerSignals;
92- Promise<DOMString> directFromSellerSignalsHeaderAdSlot;
93- Promise<record<USVString, USVString>> deprecatedRenderURLReplacements;
110+ Promise<DOMString? > directFromSellerSignalsHeaderAdSlot;
111+ Promise<record<USVString, USVString>? > deprecatedRenderURLReplacements;
94112 unsigned long long sellerTimeout;
95113 unsigned short sellerExperimentGroupId;
96- Promise<record<USVString, any>> perBuyerSignals;
97- Promise<record<USVString, unsigned long long>> perBuyerTimeouts;
98- Promise<record<USVString, unsigned long long>> perBuyerCumulativeTimeouts;
114+ Promise<record<USVString, any>? > perBuyerSignals;
115+ Promise<record<USVString, unsigned long long>? > perBuyerTimeouts;
116+ Promise<record<USVString, unsigned long long>? > perBuyerCumulativeTimeouts;
99117 unsigned long long reportingTimeout;
100118 USVString sellerCurrency;
101- Promise<record<USVString, USVString>> perBuyerCurrencies;
119+ Promise<record<USVString, USVString>? > perBuyerCurrencies;
102120 record<USVString, unsigned short> perBuyerMultiBidLimits;
103121 record<USVString, unsigned short> perBuyerGroupLimits;
104122 record<USVString, unsigned short> perBuyerExperimentGroupIds;
105123 record<USVString, record<USVString, double>> perBuyerPrioritySignals;
124+
125+ sequence<bigint> auctionReportBuyerKeys;
126+ record<DOMString, AuctionReportBuyersConfig> auctionReportBuyers;
127+ AuctionReportBuyerDebugModeConfig auctionReportBuyerDebugModeConfig;
106128 sequence<DOMString> requiredSellerCapabilities;
129+ ProtectedAudiencePrivateAggregationConfig privateAggregationConfig;
130+
107131 record<DOMString, DOMString> requestedSize;
108132 sequence<record<DOMString, DOMString>> allSlotsRequestedSizes;
109133 Promise<undefined> additionalBids;
@@ -144,13 +168,44 @@ dictionary AdAuctionDataBuyerConfig {
144168 unsigned long targetSize;
145169};
146170
171+ dictionary StorageInterestGroup : AuctionAdInterestGroup {
172+ unsigned long long joinCount;
173+ unsigned long long bidCount;
174+ sequence<PreviousWin> prevWinsMs;
175+ USVString joiningOrigin;
176+ long long timeSinceGroupJoinedMs;
177+ long long lifetimeRemainingMs;
178+ long long timeSinceLastUpdateMs;
179+ long long timeUntilNextUpdateMs;
180+ unsigned long long estimatedSize;
181+ };
182+
147183[SecureContext]
148184partial interface Navigator {
149185 Promise<DOMString> createAuctionNonce();
150186};
151187
152188[Exposed=InterestGroupScriptRunnerGlobalScope]
153189interface InterestGroupScriptRunnerGlobalScope {
190+ readonly attribute PrivateAggregation? privateAggregation;
191+ };
192+
193+ dictionary PASignalValue {
194+ required DOMString baseValue;
195+ double scale;
196+ (bigint or long) offset;
197+ };
198+
199+ dictionary PAExtendedHistogramContribution {
200+ required (PASignalValue or bigint) bucket;
201+ required (PASignalValue or long) value;
202+ bigint filteringId = 0;
203+ };
204+
205+ [Exposed=InterestGroupScriptRunnerGlobalScope]
206+ partial interface PrivateAggregation {
207+ undefined contributeToHistogramOnEvent(
208+ DOMString event, PAExtendedHistogramContribution contribution);
154209};
155210
156211[Exposed=InterestGroupBiddingAndScoringScriptRunnerGlobalScope]
@@ -198,6 +253,7 @@ dictionary GenerateBidOutput {
198253 DOMString bidCurrency;
199254 (DOMString or AdRender) render;
200255 any ad;
256+ USVString selectedBuyerAndSellerReportingId;
201257 sequence<(DOMString or AdRender)> adComponents;
202258 double adCost;
203259 unrestricted double modelingSignals;
@@ -294,6 +350,7 @@ dictionary ReportingBrowserSignals {
294350 USVString componentSeller;
295351
296352 USVString buyerAndSellerReportingId;
353+ USVString selectedBuyerAndSellerReportingId;
297354};
298355
299356dictionary ReportResultBrowserSignals : ReportingBrowserSignals {
0 commit comments