更新受众群体数据和刷新广告

了解如何通过为 Protected Audience API 兴趣群体配置更新网址来更新受众群体数据。请阅读开发者指南,了解 Protected Audience API 的完整生命周期;另请参阅 Protected Audience API 说明文档,深入了解浏览器如何记录兴趣群体的提案。

不是开发者?请参阅 Protected Audience API 概览

Protected Audience API 兴趣群体

Protected Audience API 兴趣群体代表具有共同兴趣的一群人,相当于再营销名单。每个 Protected Audience API 兴趣群体都有一个所有者

兴趣群体所有者在 Protected Audience API 广告竞价中充当买方。兴趣群体成员资格信息由浏览器存储在用户设备上,不会分享给浏览器供应商或任何其他方。

API 功能

用法示例

以下示例来自有关如何定义受众群体数据的指南,展示了如何创建兴趣群体并要求浏览器加入该群体。

const interestGroup = {
  owner: 'https://dsp.example',
  name: 'custom-bikes',
  biddingLogicUrl: ...,
  biddingWasmHelperUrl: ...,
  updateUrl: ...,
  trustedBiddingSignalsUrl: ...,
  trustedBiddingSignalsKeys: ['key1', 'key2'],
  userBiddingSignals: {...},
  ads: [bikeAd1, bikeAd2, bikeAd3],
  adComponents: [customBike1, customBike2, bikePedal, bikeFrame1, bikeFrame2],
};

navigator.joinAdInterestGroup(interestGroup, 7 * kSecsPerDay);

updateUrl 提供了一个网址,该网址会返回 JSON 来更新兴趣组属性。此值必须与 owner 具有相同的来源。

更新属性

updateUrl 指定一个 Web 服务器,该服务器返回定义兴趣组属性的 JSON,这些属性与传递给 joinAdInterestGroup() 的兴趣组对象相对应。

这样一来,群组的所有者就可以定期更新兴趣群组的属性。在当前实现中,可以更改以下属性:

  • biddingLogicUrl
  • biddingWasmHelperUrl
  • trustedBiddingSignalsUrl
  • trustedBiddingSignalsKeys
  • ads
  • priority

JSON 中未指定的任何字段都不会被覆盖,只有 JSON 中指定的字段会被更新,而调用 navigator.joinAdInterestGroup() 会覆盖任何现有的兴趣群体。

更新是尽力而为的,在以下情况下可能会失败:

  • 网络请求超时时间(目前为 30 秒)。
  • 其他网络故障。
  • JSON 解析失败。

更新频率限制为每天最多一次。

如果更新花费的连续时间过长,可以取消更新,但这不会对已取消(剩余)的更新施加任何速率限制。如果更新因网络错误而失败,系统会在一小时后重试;如果更新因断网而失败,系统会在重新联网后立即重试。

手动更新

可以使用 navigator.updateAdInterestGroups() 手动触发对当前框架的源站所拥有的兴趣群组的更新。

速率限制可防止更新过于频繁:在速率限制周期(目前为一天)过去之前,重复调用 navigator.updateAdInterestGroups() 不会执行任何操作。

如果针对同一兴趣组 ownername 再次调用 navigator.joinAdInterestGroup(),则速率限制会重置。

自动更新

在竞价结束后,系统会自动更新为竞价加载的所有兴趣群体,但会受到与手动更新相同的速率限制。

对于参与竞价的每个至少拥有一个兴趣组的所有者,就好像是从来源与该所有者匹配的 iframe 调用 navigator.updateAdInterestGroups() 一样。

所有 Protected Audience API 参考

以下是 API 参考指南:

Protected Audience API 说明信息还详细介绍了功能支持和限制条件。