Protected Audience API (舊稱 FLEDGE)

Chrome 在 Privacy Sandbox 中推出了 Protected Audience API,這項瀏覽器內 API 可讓廣告主和廣告技術公司顯示按照興趣分組的廣告,不必使用第三方 Cookie,同時防止使用者跨網站追蹤。

Chrome 正在針對 Protected Audience API 進行來源試用。Authorized Buyers 有資格參與 Ad Manager 發布商廣告空間的 Protected Audience API 測試。出價方可以測試 Protected Audience API,藉此達成下列目標:

  • 反覆查看並瞭解 Protected Audience API 流程的功效。
  • 在公開論壇 (例如 GitHub) 中針對潛在的 API 改善功能提供意見回饋。
  • 準備透過 API 支援個人化廣告,而不必依賴第三方 Cookie。

有興趣測試的 Authorized Buyers 請參閱新手上路一節瞭解詳情。

放送流程摘要

以下摘要說明 Authorized Buyers 合作夥伴的 Protected Audience 廣告放送流程:

流程圖

  1. 出價方與其廣告客戶合作,為每個廣告主維護興趣群組。廣告客戶通常會在網頁中加入出價方代碼,以便將瀏覽器加入興趣群組。
  2. 使用者造訪廣告客戶的網頁。網頁可能包含出價方的代碼。
  3. 出價方的代碼會叫用 Protected Audience API joinAdInterestGroup()。這個呼叫會要求瀏覽器將使用者新增至興趣群組。
  4. 使用者造訪發布商網頁。使用者的瀏覽器請求 Google 的發布商廣告代碼。
  5. Google 的發布商廣告代碼會向 Google 伺服器提出內容相關廣告請求。
  6. Google 會將內容相關出價要求傳送給參與的出價方。詳情請參閱「出價要求變更」一節。
  7. 出價方會傳回含有 interest_group_bidding 欄位的 BidResponse。如果出價方未指定 interest_group_bidding,Google 就不會在競價設定中將出價工具的來源加到 interestGroupBuyers。出價回應也可以包含 interest_group_bidding.per_buyer_signals。在瀏覽器競價期間,系統會將 per_buyer_signals 傳遞至出價方的出價函式。詳情請參閱出價回應變更一節。
  8. Google 執行伺服器端競價,並將出價回應傳回瀏覽器。伺服器端競價會考量傳統的伺服器端出價。出價回應可包含內容相關勝出出價 (如有) 的相關資訊。
  9. 出價回應包含瀏覽器內競價的競價設定。其中包括每個參與買方的比對內容信號 (透過 interest_group_bidding.per_buyer_signals 傳送)、內容比對勝出者資訊,以及出價資格設定。
  10. Google 的發布商代碼會叫用 Protected Audience API runAdAuction(),以便啟動裝置端興趣群組競價。Google 只包含先前在競價設定中將 interest_group_bidding 傳回 interestGroupBuyers 的買方。
  11. Google 會將每個符合資格的出價方的 per_buyer_signals 傳遞至 Protected Audience 競價設定。
  12. 如果指定的出價方的興趣群組指定 trustedBiddingSignalsUrl,瀏覽器就會向各個群組的 trustedBiddingSignalsUrl 發出要求,擷取各個群組的即時信號。詳情請參閱 Protected Audience API 規格
  13. 對於每個選擇加入且有資格參與瀏覽器內競價的興趣群組,瀏覽器會叫用出價方的 generateBid()。這個步驟會計算出價並選取廣告素材。generateBid() 可存取出價方提供的 per_buyer_signals,以及指定興趣群組的受信任出價信號。
  14. 瀏覽器會叫用賣方 (這裡是指 Google 的) scoreAd(),為興趣群組廣告競價中的每個出價指派排名。系統會根據發布商保護措施、廣告政策和其他限制,為出價排名及篩選。
  15. 瀏覽器以符合資格的興趣群組出價進行競價。排名最高的內容比對出價會參與瀏覽器內競價。
  16. 競價之後,如果有興趣群組勝出者,瀏覽器會叫用賣方的 reportResult() 和出價方的 reportWin(),向各方通知瀏覽器內競價的勝出者。
  17. 如果興趣群組廣告勝出,Google 的發布商代碼會在 iframe 中顯示廣告。

放送流程詳細資料

廣告放送前

廣告素材審核

廣告素材必須通過 Google 審查及核准,才能透過瀏覽器中的 Protected Audience 競價放送。您可以透過即時出價 API自動掃描廣告素材,將廣告素材送審。Protected Audience 瀏覽器內興趣群組廣告競價的廣告素材必須包含 renderUrls 以供審查。

renderUrls 的規定:

  • 透過 API 提交的 renderUrl,應與興趣群組廣告競價中使用的 renderUrl 相符。
  • 每個 renderUrl 只能代表一個廣告客戶或廣告活動。無法使用指定的 renderUrl 代表多個廣告主顯示廣告。每個 renderUrl 都必須對應至單一廣告素材。
  • renderUrl 在上次出價廣告出價後的 7 天內,必須可供 Google 的離線廣告素材審核系統存取及擷取。
Real-time Bidding API

出價方可以使用 即時出價 API 上傳廣告素材,以便進行興趣群組出價。

自動掃描廣告素材

出價方可以為不是透過即時出價 API 上傳的廣告素材設定自動廣告素材掃描功能。

如果您設定自動廣告素材掃描功能,Google 會在瀏覽器競價中找出廣告素材並自動進行掃描,讓這些廣告素材符合日後的競價資格。

以下說明如何開啟廣告素材自動掃描功能:

  • 將興趣群組廣告素材的所有 renderUrl 來源新增至 Authorized Buyer 帳戶。

  • 將下列自訂 HTTP 標頭新增至廣告素材的 HTTP 回應:

    Authorized-Buyers-Creative-ID

    string

    買方專屬廣告素材 ID。廣告素材 ID 的長度上限為 128 個位元組。

    Authorized-Buyers-Click-Through-URLs

    string

    依據 RFC2396 編碼的廣告素材宣告到達網頁網址組合。

示例:

HTTP/1.1 200 OK
Date: Mon, 8 Jan 2022 12:28:53 GMT
Server: Apache/2.2.14 (Win32)
Last-Modified: Mon, 8 Jan 2022 12:01:53 GMT
Content-Length: 88
Content-Type: text/html
Connection: Closed
Authorized-Buyers-Creative-ID:123456
Authorized-Buyers-Click-Through-URLs:https://www.advertiser.com/clickUrl1,https://www.advertiser.com/clickUrl12

<html>
<body>
<h1>Hello, World!</h1>
</body>
</html>
廣告素材效期

廣告素材已核准 15 天。如果透過 Real-time Bidding API 提交廣告素材,你必須在 15 天後重新提交廣告素材。如果您使用自動廣告素材掃描,掃描程序會自動重新掃描。

買方報表 ID

您可以使用買方提供的維度 (例如廣告活動 ID 或廣告主 ID) 細分報表指標 (例如曝光)。如要新增興趣群組支出維度,請在將使用者的裝置加入興趣群組時,為廣告指定 buyerAndSellerReportingId。詳情請參閱 Protected Audience 說明文件

以下範例說明如何將 buyerAndSellerReportingId 新增至興趣群組設定:

const myGroup = {
  ...
  'ads': [
    {
      ...
      'buyerAndSellerReportingId':
        '{"google_signals": {"buyer_reporting_id": "12345"}}',
      ...
    }
  ]
}
joinAdInterestGroup(myGroup);

buyer_reporting_id 會在 Authorized Buyers 報表工具中列為買方報表 ID 維度的新維度。

伺服器端競價

出價要求變更

以下是實驗中支援的通訊協定的早期版本:

指出支援興趣群組競價

出價要求新增了「auction_environment」欄位。

  • Google 即時出價通訊協定:BidRequest.adslot.auction_environment
  • OpenRTB:BidRequest.imp.ext.auction_environment

您可以利用這個欄位,區分曝光商機 (支援瀏覽器內興趣群組競價) 和僅支援傳統伺服器端廣告交易平台競價的曝光商機。auction_environment 列舉可採用下列值:

  • SERVER_SIDE_AUCTION (OpenRTB JSON:0):傳統伺服器端競價
  • ON_DEVICE_INTEREST_GROUP_AUCTION (OpenRTB JSON:1):支援 Protected Audience 的請求,在這類要求中,系統會在廣告交易平台的伺服器和興趣群組出價上執行內容競價,並在瀏覽器中執行最終競價。
指出 Protected Audience 廣告版位大小

出價要求包含下列欄位,為您提供 Protected Audience 廣告版位大小:

  • Google 即時出價通訊協定:
    • BidRequest.adslot.interest_group_auction.width
    • BidRequest.adslot.interest_group_auction.height
  • OpenRTB:
    • BidRequest.imp.ext.interest_group_auction.width
    • BidRequest.imp.ext.interest_group_auction.height

這些欄位代表 Protected Audience 競價的廣告版位大小 (以像素為單位)。

此大小可能與內容相關要求的大小 (Adslot.widthAdslot.height 或在 OpenRTB 中:BidRequest.imp.banner.format) 不同。

內容比對要求可能有多種大小。裝置端競價勝出的廣告只會供應單一固定的版位大小。

指出 Protected Audience 廣告顯示能力

Protected Audience 廣告不一定會顯示,視目前的整合階段而定 (請參閱非算繪實驗)。出價要求的 render_interest_group_ads 欄位會指出勝出的 Protected Audience 廣告。

  • Google RTB 通訊協定:BidRequest.adslot.interest_group_auction.render_interest_group_ads
  • OpenRTB:BidRequest.imp.ext.interest_group_auction.render_interest_group_ads
盡量避免仰賴使用者 ID

Protected Audience API 測試範圍內的內容比對出價要求可在瀏覽器可用時,繼續攜帶傳統 Cookie 型 ID,例如 google_user_id (OpenRTB 中的 BidRequest.user.id) 和 hosted_match_data (OpenRTB 中的 BidRequest.user.buyerid) 欄位。出價要求中包含這類 ID 將繼續受到任何現有的隱私權政策規範。建議您不要在測試期間使用 Cookie 型 ID 來指定目標或出價,以便在第三方 Cookie 無法使用時,為有效採購做好萬全準備。

Google 也可能會進行小規模實驗,在 Protected Audience API 測試範圍內的出價要求中遮蓋 Cookie 型 ID。這是為了評估淘汰第三方 Cookie 可能造成的影響。

為因應 2024 年的第三方 Cookie 淘汰 (3PCD) 異動,Chrome 現已提供 Chrome 協助測試

網站和供應商可以使用 Chrome 輔助測試,在 3PCD 下測試自己的系統。在測試中,系統會將 Chrome 瀏覽器指派給 3PCD 實驗群組,模式 A 或模式 B。每個瀏覽器都會獲派一個對應的標籤,並對應至特定的 3PCD 實驗群組,您可以透過瀏覽器內建的 Chrome API 存取該實驗群組。

Google 會在即時出價出價要求中,從 Chrome API 傳遞未經修改的標籤。由於個別標籤的流量片段不大,Google 不一定會在有隱私限制的結構定義中加入標籤。

以下是可供您查看標籤的欄位:

  • Google RTB 通訊協定:BidRequest.device.cookie_deprecation_label
  • OpenRTB:BidRequest.device.ext.cdep

出價回應變更

指出參與興趣群組競價

請在內容比對出價回應中傳回 InterestGroupBidding 物件,明確指出您打算參與瀏覽器中的競價:

  • Google 即時出價通訊協定:BidResponse.interest_group_bidding
  • OpenRTB:BidResponse.ext.igbid

您必須提供內容相關出價回應。系統不必在回應中加入內容相關出價。InterestGroupBidding 物件應包含興趣群組擁有者的 origin,且應與出價方為其帳戶所設定的其中一個來源相符。當 Google 發布商廣告代碼呼叫 runAdAuction() 時,系統會將 origin 新增至競價設定的 interestGroupBuyers 中。

傳播買家比對內容信號 (每個買家信號)

您可以在內容比對出價回應中加入買方的信號,Google 會透過 perBuyerSignals 引數,將買方的信號以 JSON 物件的形式套用到其裝置端出價函式。視通訊協定而定,您可以在出價回應中加入下列欄位:

  • Google 即時出價:BidResponse.interest_group_bidding.per_buyer_signals
  • OpenRTB:BidResponse.ext.igbid.igbuyer.buyerdata
指定瀏覽器內出價上限

Protected Audience 提案中,出價計算和最終競價預計會在裝置端執行。這可能會導致潛在的濫用媒介影響最終競價結果的完整性,例如得標出價。

Google 對 RTB 合作夥伴的 Protected Audience API 測試期間支援的因應措施,您可以在每個內容相關出價回應中指定「預期最高出價值」。預期最高出價是指出價函式預期傳回的最高出價。如果瀏覽器內競價回報的勝出出價超過這個金額,系統就不會將得標出價計為收費事件。此方法可能會有變動。

在出價回應中,您可以透過下列欄位指定預期的最高出價值:

  • Google RTB 通訊協定: BidResponse.interest_group_bidding.interest_group_buyers.max_bid_cpm_micros (以微千次曝光出價表示)
  • OpenRTB:BidResponse.igbid.igbuyer.maxbid(以千次曝光出價貨幣單位表示)
將曝光歸因於多個帳戶

出價方必須使用下列欄位選取帳單 ID,以便將興趣群組出價的曝光歸因:

  • Google RTB 通訊協定:BidResponse.interest_group_bidding.interest_group_buyers.billing_id
  • OpenRTB:BidResponse.igbid.igbuyer.billing_id

所選帳單 ID 必須是出價要求中符合資格的帳單 ID:

  • Google RTB 通訊協定:BidRequest.adslot.matching_ad_data.billing_id
  • OpenRTB:BidRequest.imp.ext.billing_id

如未提供興趣群組出價曝光功勞歸因的帳單 ID,出價方就不會參與 Protected Audience 競價。

子帳戶最多可擁有兩個帳單 ID。買方可以將一組帳單 ID 用於情境支出,另一個則用於興趣群組支出。如果想為子帳戶設定兩個帳單 ID,請與您的客戶經理聯絡。

每個帳單 ID 都可以設定每日預算。請與您的客戶經理聯絡,以便為子帳戶帳單 ID 設定每日預算。

只要子帳戶擁有可用預算,且符合對曝光出價的資格,系統就會在出價要求中,在支出歸因選項中顯示帳單 ID。如要修改興趣群組帳單 ID 的預算,請與您的客戶經理聯絡。

在瀏覽器內競價期間

產生瀏覽器內出價

使用 generateBid() 產生瀏覽器內出價。

Google 提供以下參數:

  • auctionSignals:空白
  • perBuyerSignals:與出價工具在內容相關回應中提供的信號相同 JavaScript 物件

系統會傳回以下參數:

  • ad:Google 會忽略這個欄位。
  • bid:參與競價的數字出價。必須是千次曝光出價單位,而非以微量單位表示。
  • render:在出價贏得競價時顯示廣告素材的網址。Google 必須審查並核准這個網址,否則將從競價中篩除。
  • allowComponentAuction:必須為 true。Google 目前支援測試多重賣方競價。

範例如下:

function generateBid(...) {
  ...
  return {'ad': 'example',
          'bid': ad.metadata.bid,
          'render': ad.renderUrl,
          'allowComponentAuction': true};
}

如需 generateBid() 函式的說明,請參閱 Protected Audience 規格的「裝置端出價」一節。

出價貨幣

瀏覽器內競價出價會以所選出價貨幣的千次曝光出價為單位。

出價貨幣必須同時在內容相關出價回應和 generateBid 的傳回值中指定,且必須是有效的 ISO 4217 Alpha 代碼,例如「USD」、「EUR」或「JPY」。

在 OpenRTB 中,使用 Google 出價回應擴充功能的 InterestGroupBuyer 物件中的新 cur 欄位。

範例如下:

ext {
  igbid {
    impid: "1"
    igbuyer {
      origin: "https://examplebuyerorigin.com"
      cur: "EUR"
    }
  }
}

在 Google RTB 通訊協定中,出價回應的 InterestGroupBuyer 訊息中使用新的 currency 欄位。

範例如下:

interest_group_bidding {
  adslot_id: 1
  interest_group_buyer {
    origin: "https://examplebuyerorigin.com"
    currency: "EUR"
  }
}

出價方的 generateBid 函式傳回出價時,必須使用與內容相關出價回應中指定的貨幣相同。在 generateBid 的傳回值中填入新的 bidCurrency 屬性:

function generateBid(...) {
  ...
  return {'ad': ad,
          'bid': bid,
          'bidCurrency': 'EUR',
          ...};
}

如果內容相關出價回應中的貨幣與 generateBid 傳回的貨幣不同,或是其中任何一個貨幣傳回無效的貨幣,系統會在競價前篩除出價。

廣告品質檢查

在 RTB 合作夥伴的 Protected Audience API 測試期間,對於瀏覽器內興趣群組的出價,廣告素材政策和發布商控制項的強制執行作業可能會更加嚴格。

《數位服務法》支援

根據《數位服務法》第 26 條,發布商可能會要求買方顯示廣告內資訊公開揭露事項。當發布商啟用「要求買方在我的網站或應用程式中,只在我的網站或應用程式中顯示動態搜尋廣告資訊公開資訊」控制項時,興趣群組買方可在收到的出價要求中加註下列欄位,以決定需要向買方公開資訊的商機:BidRequest.dsa.dsa_supportBidRequest.dsa.publisher_rendering_support (適用於 Google Authorized Buyers 通訊協定,BidRequest.regs.dsa.requiredBidRequest.dsa.pubrender 適用於 OpenRTB 通訊協定)。

如果出價方希望參與 Protected Audience API 競價,在出價要求中收到透過 Protected Audience API 放送的廣告必須顯示動態搜尋廣告透明度的信號時,應評估他們是否能正確顯示必要資訊,然後為 Google Authorized Buyers 通訊協定或 BidResponse.ext.igbid.igbuyer.dsaadrender 的 OpenRTB 通訊協定設定 BidResponse.interest_group_bidding.interest_group_buyers.dsa_buyer_render 來指定相關資訊。否則,買方就不會納入 Protected Audience API 競價。

如要進一步瞭解《數位服務法》廣告資訊公開,請參閱說明中心文章:支援數位服務法

出價篩選

Google 會在裝置端競價期間強制執行發布商控制項廣告政策

瀏覽器內競價後

向買方回報競價結果:reportWin()

Google 不會填入下列引數:

  • auctionSignals
  • sellerSignals

使用 reportWin() 向買方回報競價結果。

詳情請參閱 Protected Audience API 說明的「算繪和廣告事件的買方報表」一節。

巨集

參照 Protected Audience API 廣告素材的 renderUrl 可以包含一或多個稱為巨集的預留位置。興趣群組競價結束、轉譯前,巨集會替換為對應的值。裝置端競價中使用的 renderUrl 可能包含下列巨集:

${GDPR} 如果不適用 GDPR,則會展開為 0;如果適用 GDPR,則會展開為 1。請參閱說明文件
${GDPR_CONSENT_XXXX} 這會展開成與請求相關聯的資訊公開和同意聲明 (TC) 字串。如果資訊公開和同意聲明 (TC) 字串為空白或無效,這個巨集就不會展開。

使用這個巨集,將資訊公開和同意聲明 (TC) 字串透過網址傳遞給已註冊 IAB GVL 的供應商。 將 XXXX 換成已註冊 IAB GVL 的供應商 IAB GVL ID。如果資訊公開和同意聲明字串為空白或無效,這個巨集就不會展開。

如果與插入的 IAB GVL ID 相關聯的 IAB GVL 供應商並未徵得使用者同意,含有 ${GDPR_CONSENT_XXXX} 巨集的廣告素材就可能遭到封鎖。

${GDPR_CONSENT_XXXX} 巨集應在 renderUrl 內只會出現一次。
${ADDL_CONSENT} 這會展開成與要求相關聯的額外同意聲明 (AC) 字串
${AD_WIDTH}, ${AD_HEIGHT) 這些巨集會插入廣告版位的寬度和高度。

曝光次數計算方式

與即時出價合作夥伴一起在 Protected Audience API 測試期間,Google 會在瀏覽器呼叫 reportResult() 函式,接著在呼叫 sendReportTo() 時擷取 Google 的報表網址時計算曝光。

由於 Google 使用在 Protected Audience 瀏覽器內競價計算曝光次數的事件,與即時出價買方合作夥伴用來計算曝光次數的事件不同,因此曝光次數可能會有所不同。

Google 測試 Protected Audience API 的目標之一,是找出並減少這些差異。

可計費曝光的歸因

系統會根據為出價方設定的興趣群組擁有者來源的對應關係,將 Protected Audience 瀏覽器競價中出價工具的所有出價,歸因至單一出價方帳戶。系統不支援將支出分配給出價方的不同子帳戶帳戶。

每日預算上限

在 Protected Audience API 測試期間,每個帳戶都有帳戶層級的 Protected Audience 支出每日預算上限。每日預算上限會限制瀏覽器內競價環境中的風險。一旦達到每日預算上限,帳戶就無法再收到符合 Protected Audience 資格的出價要求。

帳戶達到 Protected Audience 上限後,就可以繼續參與伺服器端內容相關競價。舉例來說,如果出價方帳戶達到 Protected Audience 上限,可能會收到 auction_environment = SERVER_SIDE_AUCTION (OpenRTB:0) 的出價要求,即使出價要求符合參與 Protected Audience 競價的資格也一樣。

即時回饋和最低出價,即可得標

如果出價方選擇接收即時意見回饋,將可收到興趣群組買家的意見回饋,要求加入裝置端 Protected Audience 競價。無論興趣群組買家在 Protected Audience 競價中出價多少,每個出價方指定的出價回應指定的興趣群組買方,都會收到一個意見回饋物件。興趣群組買家意見回饋物件會提供下列資訊:

  • 意見回饋物件的意見回饋類型為 INTEREST_GROUP_BUYER_FEEDBACK
  • 興趣群組買家的來源。
  • 要在整體競價中贏得興趣群組買方的最低出價。
  • 在整體競價中,為了贏過排名最高的伺服器端出價,而贏得興趣群組買家的最低出價。
  • 興趣群組買方的狀態碼。可能的狀態碼是在 interest-group-buyer-status-codes.txt 中定義。

如要瞭解特定欄位名稱,請參閱 Authorized Buyers RTBOpenRTB 擴充功能的通訊協定說明文件。

出價意見回饋通知

Chrome 為 Protected Audience API 提供暫時性偵錯 API,可讓 Ad Manager 傳送即時伺服器對伺服器偵錯通知,其中包含 Protected Audience 出價的意見回饋。這則通知除了提供下方所述的出價的其他相關資訊,還會說明在 Protected Audience 瀏覽器內競價中篩除出價的原因。

出價方可以聯絡客戶經理設定靜態網址,用來傳送 Protected Audience 偵錯出價意見回饋通知。系統將從 Google 伺服器擷取這個靜態網址,並在 Protected Audience 競價完成後替換所選巨集。以下是支援的巨集:

  • %%GOOGLE_QUERY_ID%%:這個巨集會替換為透過 Protected Audience 啟用內容相關出價要求傳送的 Google 查詢 ID (在 Authorized Buyer 通訊協定中的 BidRequest.google_query_id,以及 OpenRTB 通訊協定中的 BidRequest.ext.google_query_id)。
  • %%INTEREST_GROUP_OWNER%%:興趣群組的擁有者來源。
  • %%BID_CPM%%:買方在 generateBid() 函式中指定的千次曝光出價 (以千次曝光出價為單位)。
  • %%RENDER_URL%%:廣告素材的顯示網址。
  • %%STATUS%%:出價在 scoreAd()內遭拒時的狀態碼。值為廣告素材狀態碼

以下是出價方可能會提供客戶經理的靜態網址範例:

https://dsp.example/debug?google_query_id=%%GOOGLE_QUERY_ID%%&ig_owner=%%INTEREST_GROUP_OWNER%%&render_url=%%RENDER_URL%%&bid=%%BID_CPM%%&status=%%STATUS%%

出價意見回饋通知是暫時性功能,依附於 Chrome 的臨時 ForDebuggingOnly API。

點擊事件

出價方可以使用 Fenced Frame Reporting API 將 Protected Audience 廣告的點擊事件回報給 Google。出價方應使用 click 事件類型通知 Google 點擊事件。以下將舉例說明:

window.fence.reportEvent({
    'eventType': 'click',
    // Google does not require bidders to send data to Google in 'eventData'.
    // However, 'eventData' must be a non-null value, such as an empty string.
    'eventData': '',
    'destinations': ['direct-seller']
});

產品層級 TURTLEDOVE

在 Protected Audience API 測試期間,Google RTB 合作夥伴可以使用以多個片段組成的廣告產品層級 TURTLEDOVE (PLTD)。如果您打算測試 PLTD,可能需要額外的資源和設定,請在整合期間告知客戶經理。

新手上路

以下說明如何測試 Protected Audience API:

操作步驟

  1. 如要加入 Protected Audience API 實驗,請填寫要求表單
  2. 提交要求表單後,請與您的客戶經理聯繫,或透過 Authorized Buyer 說明中心提交支援單。
  3. 帳戶設定完成後,Google 和合作夥伴均可按照測試階段中的步驟驗證整合。

廣告素材審查

如要在 Protected Audience API 競價中使用產品層級廣告 (由多個項目組成的廣告) 出價,請遵守以下規定:

  • 在元件廣告容器 (又稱為頂層 renderUrl) 中加入 &pltd=True 查詢參數,以便在廣告素材審核期間區分頂層 renderUrlsrenderUrl
  • 當 Google 擷取元件廣告的容器以供廣告素材審核時,並顯示代表廣告素材。如要瞭解何時應傳回代表性廣告顯示,請參閱 Google 廣告素材審核系統所設定的 validation=True 查詢參數。

整合作業檢查清單

  • 設定出價要求端點,以便在內容比對出價回應中填入 Protected Audience API 相關欄位,例如 interest_group_bidding
  • 在廣告客戶的網頁上導入標記,將使用者的瀏覽器加入興趣群組。
  • 實作 generateBid()reportWin()
  • 選取興趣群組擁有者來源,然後將來源新增至 Authorized Buyers 帳戶。
    • 興趣群組擁有者來源應與代管 generateBid() 函式的來源相符。
    • 請聯繫客戶經理或透過 Authorized Buyers 說明中心提交支援單,以完成這個步驟。
  • 針對與 Protected Audience API 測試相關的廣告空間設定預先指定。
  • 透過 Creative API 將廣告素材送審及核准。
  • (選用) 設定受信任的出價信號端點。
  • (選用) 設定測試廣告客戶頁面,讓 Google 工程師將自己的瀏覽器新增至興趣群組買家來源擁有的興趣群組。這樣一來,我們就能手動觸發 Protected Audience 競價。
  • (選用) 啟用帳戶的即時意見回饋,以便接收興趣群組買家的意見回饋,要求加入 Protected Audience 競價。
  • (選用) 請聯絡您的客戶經理設定靜態網址,以便接收伺服器對伺服器通知,以便針對裝置端 Protected Audience 競價的出價狀態提供 Protected Audience 出價意見回饋,協助對非預期的問題進行偵錯。詳情請參閱出價意見回饋通知

測試階段

第 1 階段:手動測試

以下說明如何手動觸發 Protected Audience 競價、確保廣告可顯示,並記錄曝光:

  1. 請使用 Chrome 101 以上版本。
  2. 使用 chrome://flags/#privacy-sandbox-ads-apischrome://flags/#enable-fenced-frames 啟用 Privacy Sandbox API 和 Fenced Frame。詳情請參閱「測試 Privacy Sandbox」。
  3. 使用即時出價 API 將廣告素材送審。
  4. 使用出價方提供的廣告客戶頁面,將瀏覽器新增至出價方擁有的興趣群組。
  5. 使用 Google 提供的測試發布商頁面,觸發 Protected Audience 競價:

    https://fledge-testing.uc.r.appspot.com/?nid=allow_all

    瀏覽器內興趣群組的出價必須夠高才能贏得競價,因為出價可能會與傳統的伺服器端出價競爭。Google 也提供每位合作夥伴專屬的測試發布商頁面,只有指定合作夥伴可以參與競價。在合作夥伴的特定頁面上,更穩定地贏得瀏覽器競價。

  6. 驗證以下內容:

    1. 放送預期勝出的廣告。
    2. 競價結果會在伺服器端傳送,也就是說勝出的出價方收到來自 reportWin() 的連線偵測 (ping)。
    3. 測試發布商頁面主控台會使用下列資訊,記錄每個出價的偵錯訊息:
      • renderUrl:出價的顯示網址。
      • interestGroupOwner:出價的興趣群組擁有者。
      • accepted:如果出價已接受,這個欄位就是 true;如果出價遭 scoreAd() 拒絕,則此欄位為 false
      • externalBidStatus:出價在 scoreAd() 內遭拒時的狀態碼。值為廣告素材狀態碼

第 2 階段:(選用) 非轉譯實驗

Google 與合作夥伴手動驗證合作夥伴能夠參加 Protected Audience 競價後,Google 就會讓合作夥伴進行下一階段的測試。

Google 會分配少量即時流量來執行 Protected Audience 競價。然後,Google 與合作夥伴不再需要手動觸發 Protected Audience 競價。無法顯示 Protected Audience 競價的結果。這可讓我們大規模測試整合作業。

準備就緒後,請與您的客戶經理聯絡,或透過 Authorized Buyer 說明中心提交支援單。Google 將為這個階段啟用帳戶。

第 3 階段:轉譯實驗

Google 和合作夥伴驗證過 Protected Audience 競價且無須轉譯後,即可讓合作夥伴顯示 Protected Audience 勝出廣告。Google 有足夠的流量可以進行 Protected Audience 競價,並會顯示勝出的興趣群組廣告。參與的出價工具內出價會與傳統出價競爭。

準備就緒後,請與您的客戶經理聯絡,或透過 Authorized Buyer 說明中心提交支援單。Google 將為這個階段啟用帳戶。