WICG / turtledove

TURTLEDOVE
https://wicg.github.io/turtledove/
Other
538 stars 237 forks source link

Extending auctionConfig interest_group_buyers attribute #174

Open eroncastro opened 3 years ago

eroncastro commented 3 years ago

When running an on-device auction, it is possible to decide which buyers may participate.

const myAuctionConfig = {
  'seller': 'www.example-ssp.com',
  'decision_logic_url': ...,
  'trusted_scoring_signals_url': ...,
  'interest_group_buyers': ['www.example-dsp.com', 'buyer2.com', ...],
  'additional_bids': [other_source_ad1, other_source_ad2, ...],
  'auction_signals': {...},
  'seller_signals': {...},
  'per_buyer_signals': {'www.example-dsp.com': {...},
                        'www.another-buyer.com': {...},
                        ...},
};
const auctionResultPromise = navigator.runAdAuction(myAuctionConfig);

Since an Interest Group is uniquely identified by its group owner and name, wouldn't it make sense that the interest_group_buyers property could allow the auction runner to specify both when configuring the auction? Otherwise, this filtering would only be possible when score_ad function is executed, taking into account browser_signals.

Maybe something like this:

const interestGroupBuyers = [
  {'owner': 'www.example-dsp.com', 'name': 'love shoes'},
  //...
];
const myAuctionConfig = {
  'seller': 'www.example-ssp.com',
  'decision_logic_url': ...,
  'trusted_scoring_signals_url': ...,
  'interest_group_buyers': interestGroupBuyers,
  'additional_bids': [other_source_ad1, other_source_ad2, ...],
  'auction_signals': {...},
  'seller_signals': {...},
  'per_buyer_signals': {'www.example-dsp.com': {...},
                        'www.another-buyer.com': {...},
                        ...},
};
const auctionResultPromise = navigator.runAdAuction(myAuctionConfig);

Thanks!

brusshamilton commented 3 years ago

That change seems feasible, but I'm curious what sorts of use cases you imagine for this. It seems if the seller page already knows exactly which interest groups to consider then it would be more of a context-based ad than remarketing.

eroncastro commented 3 years ago

@brusshamilton

Considering the pages where the auction will occur, the party executing the auction already knows which groups should be participating, based on contextual information. That could reduce the latency on the client-side, making the auction faster, and extend FLEDGE usage beyond remarketing, closer to Prebid, for example.

brusshamilton commented 3 years ago

I can see how that could optimize the auction. There are some small privacy risks associated with allowing a site to limit the interest groups allowed in the auction, but we could probably get around that by not allowing interest groups that are not k-anonymous to be selected by name.

That being said, this seems more like a potential optimization. I'm inclined to wait until we have real world data to show the extra complexity is necessary.