Protected Audience API (舊稱 FLEDGE)

Privacy Sandbox 的架構下,Chrome 提出了 Protected Audience API,這是一種瀏覽器內 API,可讓廣告主和廣告技術公司放送興趣群組指定廣告,且無須仰賴第三方 Cookie,同時保護使用者免於遭受跨網站追蹤。

Chrome 正在為 Protected Audience API 執行來源試用。授權買方可在 Ad Manager 發布商廣告空間中,測試 Protected Audience API。出價方可透過測試 Protected Audience API 達成以下目標:

  • 重複執行並瞭解 Protected Audience API 流程的效能。
  • 在公開論壇 (例如 GitHub) 中,針對 API 可能的改善項目提供意見回饋。
  • 在不使用 API 的情況下,準備透過 API 支援個人化廣告 必須仰賴第三方 Cookie

有興趣測試的 Authorized Buyers 請參閱「新手上路」一節的詳細說明。

放送流程摘要

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

流程圖

  1. 出價方會與廣告主合作,為每個廣告主維護興趣群組 廣告客戶。廣告主通常會在廣告主網頁中加入出價方代碼,將瀏覽器加入興趣群組。
  2. 使用者造訪廣告客戶的網頁。網頁可能含有出價方代碼。
  3. 出價方的代碼會叫用 Protected Audience API joinAdInterestGroup()。 這項呼叫會要求瀏覽器將使用者新增至興趣群組。
  4. 使用者造訪發布商網頁。使用者的瀏覽器要求 Google 發布商廣告代碼
  5. Google 發布商廣告代碼會向 Google 伺服器提出內容相關廣告請求。
  6. Google 會向參與的出價方傳送內容出價要求。詳情請參閱 「出價要求變更」一節
  7. 出價方傳回包含 InterestGroupBidding 的出價回應 訊息,以參與興趣群組競價。於 OpenRTB 是透過 BidResponse.ext.igbid 欄位指定;在 已淘汰的 Google RTB 通訊協定 (使用 「BidResponse.interest_group_bidding」欄位中的值。如果出價方並未指定 此資訊,Google 不包括 interestGroupBuyers競價設定 InterestGroupBidding 也可能包含自選的買方專屬信號,這些信號會在瀏覽器內競價期間傳遞至出價方出價函式。在 OpenRTB 中,這會使用 BidResponse.ext.igbid.igbuyer.buyerdata 欄位指定;在已淘汰的 Google RTB 通訊協定中,則會使用 BidResponse.interest_group_bidding.interest_group_buyers.per_buyer_signals 欄位指定。請參閱「出價回應變更」一節, 瞭解詳情
  8. Google 執行伺服器端競價,並傳回出價回應給瀏覽器。伺服器端競價會考量傳統的伺服器端出價。出價回應可能包含關於贏得競標的關鍵字出價資訊 (如果有)。
  9. 出價回應包含瀏覽器內競價的競價設定。這可能包括來自每位參與買家的內容信號 (透過 OpenRTB 的 buyerdata 或已淘汰的 Google RTB 通訊協定的 per_buyer_signals 傳送)、內容勝出者資訊,以及出價資格設定。
  10. Google 的發布商代碼會叫用 Protected Audience API runAdAuction(),以啟動裝置端興趣群組競價。Google 只包含 買方列在 InterestGroupBuyer 中的 InterestGroupBidding
  11. Google 會將每個符合資格的出價方選用買方專屬信號,傳遞給 Protected Audience 競價設定。
  12. 如果某出價方的興趣群組已指定 trustedBiddingSignalsUrl,瀏覽器會向每個群組的 trustedBiddingSignalsUrl:擷取每個群組的即時信號。詳情請見 Protected Audience API 中的詳細資料 spec
  13. 瀏覽器為每個興趣群組叫用出價方的 generateBid() 且符合參與瀏覽器競價的資格。這個步驟會計算出價並選取廣告素材。generateBid() 可以存取: 出價方和受信任出價提供的選用買方信號 指定興趣群組的信號
  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」必須可供 Google 的離線存取及擷取 廣告審核系統,在廣告上次出價後長達 7 天。
Real-time Bidding API

出價方可以使用即時出價 API 來上傳 興趣群組出價

自動掃描廣告素材

出價方可以針對不屬於任何廣告素材的廣告素材,進行自動廣告素材掃描 透過即時出價 API 上傳的廣告空間

如果您設定廣告素材自動掃描功能,Google 就會在 瀏覽器內競價並自動掃描,確保廣告客戶符合競價資格 未來的競價

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

  • 將興趣群組廣告素材的所有 renderUrl 來源新增至授權買方帳戶。

  • 在廣告素材的 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 天。如果您使用即時出價 API 提交廣告素材,就必須在 15 天後重新提交廣告素材。如果您使用自動廣告素材掃描功能,系統會自動重新掃描廣告素材。

買方報表 ID

您可以使用維度細分報表指標 (例如曝光次數) (例如廣告活動編號或廣告客戶編號)。如要新增 興趣群組支出的維度,請指定以下項目的buyerAndSellerReportingId: 向使用者放送您的廣告。如需更多詳細資訊,請參閱 Protected Audience 說明文件

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

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

buyer_reporting_id 會以新的維度形式顯示在授權買方的報表工具中,為買方報表 ID 維度

伺服器端競價

出價要求變更

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

指出是否支援興趣群組競價

出價要求包含新的欄位,可指出是否支援興趣群組競價:

  • OpenRTB:
    • BidRequest.imp.ext.ae
    • BidRequest.imp.ext.igbid
  • Google RTB 通訊協定 (已淘汰):
    • BidRequest.adslot.supported_auction_environment
    • BidRequest.adslot.interest_group_bidding_allowed

您可利用這個欄位區分曝光機會 支援瀏覽器內 Protected Audience 應用程式內興趣群組競價 僅支援傳統的伺服器端廣告交易平台競價。AuctionEnvironment 列舉可包含下列值:

  • SERVER_SIDE_AUCTION (OpenRTB JSON:0):決定 勝出的廣告是在廣告交易平台的伺服器上運作
  • ON_DEVICE_INTEREST_GROUP_AUCTION (OpenRTB JSON:1):含有 Protected Audience 支援,情境相關競價會在 廣告交易平台伺服器、興趣群組出價和最終競價 是在瀏覽器中執行
  • SERVER_SIDE_INTEREST_GROUP_AUCTION (OpenRTB JSON:3):內容比價會在 Ad Exchange 伺服器上執行,而用於決定最終得標廣告的興趣群組出價和評分邏輯,則會在出價和競價伺服器中執行。
表示 Protected Audience 廣告版位大小

出價要求包含下列欄位,可提供 Protected Audience 廣告插播單元大小:

  • OpenRTB:
    • BidRequest.imp.ext.interest_group_auction.width
    • BidRequest.imp.ext.interest_group_auction.height
  • Google RTB 通訊協定 (已淘汰):
    • BidRequest.adslot.interest_group_auction.width
    • BidRequest.adslot.interest_group_auction.height

這些欄位代表用於 Protected Audience 競價的廣告版位大小 單位。

這個大小可能與內容要求中的大小不同,例如 OpenRTB 的 BidRequest.imp.banner.format.wBidRequest.imp.banner.format.h 欄位,或是已淘汰的 Google RTB 通訊協定 BidRequest.adslot.widthBidRequest.adslot.height 欄位。

情境廣告請求可能包含多種大小。裝置端競價勝出的廣告應只填入單一固定版位大小。

指出 Protected Audience 廣告顯示能力

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

  • OpenRTB: BidRequest.imp.ext.interest_group_auction.render_interest_group_ads
  • Google RTB 通訊協定 (已淘汰): BidRequest.adslot.interest_group_auction.render_interest_group_ads
盡量減少仰賴使用者 ID

在 Protected Audience API 測試的情境下,比對內容出價要求可以 仍會繼續提供傳統的 Cookie 型 ID (如有) 瀏覽器 (例如 BidRequest.user.idBidRequest.user.buyerid 欄位) 或 BidRequest.google_user_idBidRequest.hosted_match_data 英寸 已淘汰的 Google RTB 通訊協定。出價要求中是否包含這類 ID 取決於現行隱私權政策。建議您 避免將 Cookie 型 ID 用於指定目標和出價 進行測試,以便在第三方 Cookie 無法使用時,為有效採購做好準備 提供更即時的 IP 位址

Google 也可能會進行小規模實驗,在 Protected Audience API 測試範圍內,從出價要求中刪除 Cookie 相關 ID。這項測試可評估第三方 Cookie 淘汰後的潛在影響。

第三方 Cookie 停用 (3PCD) Chrome 於 2024 年推出 由 Chrome 協助執行的測試

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

Google 會將未修改的標籤從 Chrome API 傳送到即時出價 請求。由於個別標籤的流量規模較小,Google 在限制隱私權的環境中,不一定總是加上該標籤。

以下是查看標籤的欄位:

  • OpenRTB: BidRequest.device.ext.cdep
  • Google RTB 通訊協定 (已淘汰): BidRequest.device.cookie_deprecation_label

出價回應變更

指出興趣群組競價參與情形

您有責任明確指出您是否要 傳回 InterestGroupBidding 物件 內容相關出價回應:

  • OpenRTB:BidResponse.ext.igbid
  • Google RTB 通訊協定 (已淘汰):BidResponse.interest_group_bidding

您必須提供內容相關出價回應。回應不必包含內容相關出價。InterestGroupBidding 物件應包含每個 InterestGroupBuyerorigin,且應與出價方為帳戶設定的起點相符。系統會將origin加入競價 Google 發布商廣告代碼呼叫時的 interestGroupBuyers runAdAuction()

套用買方比對內容信號

您可以在內容相關出價回應中加入買方的信號,Google 會透過 perBuyerSignals 引數,將該信號以 JSON 物件的形式傳播至裝置端出價函式。這個註解可包含在含有 [ 下列欄位會因通訊協定而異:

  • OpenRTB:BidResponse.ext.igbid.igbuyer.buyerdata
  • Google RTB (已淘汰):BidResponse.interest_group_bidding.per_buyer_signals
套用買方比對內容顯示信號

依下列條件,興趣群組廣告素材顯示時可能會使用有限的比對內容信號: 透過內容比對出價回應傳送這些信號 。舉例來說,您可以使用轉譯信號自訂廣告素材的外觀,以改善特定廣告版位或發布商網頁的情境成效。

您可以在 內容相關出價回應,Google 會取代得標者 建構網址群組 ${RENDER_DATA_buyer.origin.example[_OPTIONAL_SUFFIX]} 巨集

出價回應可指定下列屬性 欄位,會因通訊協定而異:

  • OpenRTB:BidResponse.ext.igbid.igbuyer.rsig
  • Google RTB (已淘汰):BidResponse.interest_group_bidding.interest_group_buyer.rendering_signals

可加入最多 3 組不同巨集後置字串的顯示信號 以區別不同的信號舉例來說,您可以使用後置字串比對特定信號組合,這些信號只適用於顯示網址中含有對應巨集的廣告素材,藉此減少資料傳輸量。

興趣群組買方會遭到拒絕 目標對象競價:如果信號不符合網址安全、巨集尾碼重複, 至少提供 3 組信號。

指定瀏覽器內最高出價

Protected Audience 提案中,出價運算和最終競價應在裝置端本機執行。這可能會造成 可能的濫用媒介可能會影響最終競價的完整性 例如得標出價

在 Google 為即時出價合作夥伴進行 Protected Audience API 測試期間,為因應相關問題而提供的緩解措施,您可以在每個內容相關出價回應中指定預期最高出價值。「預估最高出價」是指 出價函式的預期值如果回報的勝出出價來源 瀏覽器內競價超過此金額,系統就不會計算勝出出價 視為可計費事件這項做法可能會有變動。

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

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

出價方必須選取帳單 ID,才能使用下列欄位歸因興趣群組出價的曝光次數:

  • OpenRTB:BidResponse.igbid.igbuyer.billing_id
  • Google RTB 通訊協定 (已淘汰): BidResponse.interest_group_bidding.interest_group_buyers.billing_id

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

  • OpenRTB:BidRequest.imp.ext.billing_id
  • Google RTB 通訊協定 (已淘汰): BidRequest.adslot.matching_ad_data.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 中,於以下位置的 InterestGroupBuyer 物件中使用新的 cur 欄位: Google 的出價回應額外資訊。

範例如下:

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 函式必須傳回與內容相關出價回應中所示相同的出價幣別。填入新的 bidCurrency 屬性 generateBid 的傳回值:

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

如果內容比對出價回應的貨幣與實際貨幣不同 generateBid 所傳回的網址,或者兩者傳回無效的貨幣, 出價就會在競價前篩除

廣告品質檢查

廣告素材政策和發布商控制項的違規處置較嚴格 對即時出價進行 Protected Audience API 測試期間,瀏覽器內興趣群組出價 合作夥伴。

《數位服務法》支援服務

根據《數位服務法》第 26 條規定,發布商可能會要求買方提供 廣告內資訊公開揭露聲明。如果發布商啟用「要求買方在歐洲經濟區的網站或應用程式上,只顯示包含《數位服務法》資訊公開資訊的廣告」控制項,興趣群組買方就能根據出價要求中 BidRequest.regs.dsa.requiredBidRequest.dsa.pubrender 的值 (在已淘汰的 Google RTB 通訊協定中分別為 BidRequest.dsa.dsa_supportBidRequest.dsa.publisher_rendering_support),判斷哪些機會需要顯示買方資訊公開資訊。

想要參與 Protected Audience API 競價的出價者時 收到出價要求中必須顯示《數位服務法》資訊公開的信號 應該評估透過 Protected Audience API 放送的廣告 即可正確顯示所需資訊 BidResponse.ext.igbid.igbuyer.dsaadrender (BidResponse.interest_group_bidding.interest_group_buyers.dsa_buyer_render 英寸 已淘汰的 Google RTB 通訊協定)。否則,系統不會將買方 都會影響到 Protected Audience API 競價的期間

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

出價篩選

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

瀏覽器內競價後

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

Google 不會填入下列引數:

  • auctionSignals
  • sellerSignals

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

請參閱轉譯和廣告買方報表 活動 一節。

巨集

參照 Protected Audience API 廣告素材的 renderUrl 可包括 一個或多個預留位置,稱為「巨集」。興趣群組競價結束後 但在顯示前,巨集會由對應的 輕鬆分配獎金用於裝置端競價的 renderUrl 可能包含下列內容: 巨集:

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

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

包含「${GDPR_CONSENT_XXXX}」巨集的廣告素材可能會變成 封鎖與您 IAB GVL ID 相關聯的 IAB GVL 註冊供應商 未取得使用者同意。

${GDPR_CONSENT_XXXX} 巨集只會在 renderUrl
${ADDL_CONSENT} 這會展開成其他 與請求相關聯的同意聲明 (AC) 字串。
${AD_WIDTH}, ${AD_HEIGHT) 這些巨集會插入廣告版位寬度和高度。
${RENDER_DATA_buyer.origin.example[_OPTIONAL_SUFFIX]}

包含在出價回應中指定的顯示時間買方信號的巨集。

buyer.origin.example 預留位置替換為興趣群組買家的來源,該來源應與出價回應中的 interest_group_buyers.origin 相對應。您可以加入 _OPTIONAL_SUFFIX,最多提供三種不同的算繪信號值。

曝光次數計算

在與 RTB 合作夥伴進行 Protected Audience API 測試期間,當瀏覽器呼叫 reportResult() 函式,並在呼叫 sendReportTo() 時擷取 Google 的報表網址時,Google 就會計算曝光次數。

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

測試 Protected Audience API 的 Google 目標之一是 減少這些差異

可計費曝光的歸因

出價方在 Protected Audience 瀏覽器內競價中花費的所有費用,都會根據為出價方設定的感興趣群組擁有者來源,歸給單一出價方帳戶。將支出歸給不同的 不支援出價方的子買方帳戶。

每日預算上限

在 Protected Audience API 測試期間,每個帳戶都有一個帳戶層級 Protected Audience 支出每日預算上限。每日預算上限會限制風險 能夠設定廣告素材一旦達到每日預算上限,帳戶就不會再收到符合 Protected Audience 資格的出價要求。

帳戶達到 Protected Audience 上限後,仍可繼續參與伺服器端比對內容競價。舉例來說,達到 Protected Audience 上限的出價方帳戶可能會收到含有 auction_environment = SERVER_SIDE_AUCTION (OpenRTB JSON:0) 的出價要求,即使該出價要求符合 Protected Audience 競價的資格。

即時意見回饋和最低出價,以便贏得競價

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

  • 意見回饋物件 INTEREST_GROUP_BUYER_FEEDBACK
  • 興趣群組買家的來源。
  • 興趣群組買方要贏得整體競價的最低出價。
  • 興趣群組買方為了勝過整體競價中伺服器端元件的最高出價,而必須提出的最低出價。
  • 興趣群組買家的狀態碼。可能的狀態碼定義請參閱 interest-group-buyer-status-codes.txt

請參閱 Authorized Buyers 即時出價 以及 OpenRTB 擴充功能 代表特定欄位名稱的預測值

出價意見回饋通知

Chrome 提供暫時偵錯功能 API 適用於 Ad Manager 即時傳送 伺服器對伺服器偵錯通知,內含對 Protected 保護的意見回饋 目標對像出價。除了下方所述的出價相關資訊外,這則通知還會說明出價可能在 Protected Audience 瀏覽器內競價中遭到篩除的原因。

出價方可以與客戶經理聯絡,設定要在 ,用來提供 Protected Audience 偵錯出價意見回饋通知。這個 系統會從 Google 伺服器擷取靜態網址,並替換所選巨集 也會結束 Protected Audience 競價。系統支援下列巨集:

  • %%GOOGLE_QUERY_ID%%:這個巨集會替換為在啟用 Protected Audience 的內容比價要求中傳送的 Google 查詢 ID。在 OpenRTB 通訊協定中,這項資訊會使用 BidRequest.ext.google_query_id 指定,而已淘汰的 Google RTB 通訊協定則會使用 BidRequest.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。

產品層級 TURTLEDOVE

以多種商品組合的廣告產品層級 TURTLEDOVE 在 Protected Audience API 期間,Google RTB 合作夥伴支援 (PLTD) 進行測試。如果您打算測試 PLTD,請在整合期間告知客戶經理,因為這需要額外的資源和設定。

新手上路

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

步驟

  1. 填寫要求表單 加入 Protected Audience API 實驗。
  2. 提交申請表單後,請與您的客戶經理聯絡或檔案 使用 Authorized Buyers 說明 中心
  3. 帳戶設定完成後,Google 和合作夥伴就能驗證 進行整合。

廣告素材審核

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

  • 在元件廣告容器的 renderUrl (也稱為頂層 renderUrl) 中加入 &pltd=True 查詢參數,以便在廣告素材審查期間區分頂層 renderUrls
  • 當元件廣告的容器位於 Google 擷取的廣告編號。為了瞭解 代表廣告顯示代表性廣告,您可以參照 Google 廣告素材審核系統設定的 validation=True 查詢參數。

整合作業檢查清單

  • 設定出價要求端點,在內容相關出價回應中填入 Protected Audience API 相關欄位,例如 interest_group_bidding
  • 在廣告客戶的網頁中導入代碼,將使用者的瀏覽器加入 興趣群組
  • 實作 generateBid()reportWin()
  • 選取興趣群組擁有者來源,並將其新增至授權買方帳戶。
    • 興趣群組擁有者來源應與 generateBid() 函式代管來源相符。
    • 請與您的客戶經理聯絡,或使用已授權的 買方說明中心 請完成這個步驟。
  • 針對與 Protected Audience API 測試相關的廣告空間設定預先指定目標。
  • 透過 [廣告素材] 頁面,將廣告素材送交審核及核准。 API
  • (選用) 設定受信任出價信號端點。
  • (選用) 設定測試廣告主網頁,讓 Google 工程師將瀏覽器加入興趣群組買家來源的興趣群組。這樣一來,我們就能手動觸發目標對象受保護競價。
  • (選用) 啟用帳戶的即時意見回饋功能,取得以下項目的意見回饋: 要求將興趣群組買方加入 Protected Audience 競價。
  • (選用) 請與您的客戶經理聯絡,設定靜態網址以接收伺服器對伺服器通知,該通知會提供 Protected Audience 出價意見回饋,說明裝置端 Protected Audience 競價的出價狀態,以利排解意外問題。詳情請參閱出價回饋通知

測試階段

階段 1:手動測試

以下說明如何手動觸發 Protected Audience 競價、確保廣告能算繪,並記錄曝光次數:

  1. 使用 Chrome 101 以上版本。
  2. 使用以下方式啟用 Privacy Sandbox API 和 Fenced Frame 「chrome://flags/#privacy-sandbox-ads-apis」和 chrome://flags/#enable-fenced-frames。詳情請參閱測試隱私權 沙箱
  3. 使用即時出價功能將廣告素材送審 API
  4. 使用出價方提供的廣告主頁面,將瀏覽器加入出價方自有 興趣群組
  5. 請使用下列 Google 提供的測試發布商頁面,觸發受保護功能 目標對象競價:

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

    瀏覽器內興趣群組的出價必須夠高才能贏得競價,因為 可能會與傳統的伺服器端出價競爭Google 也會為每個合作夥伴提供專屬的測試發布商網頁,只有特定合作夥伴才能參與競價。較容易取得可靠的結果 網站上的瀏覽器內競價。

  6. 請確認下列事項:

    1. 顯示預期勝出的廣告。
    2. 競價結果會傳送至伺服器端,也就是說,得標的出價者會收到 reportWin() 的回應。
    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 競價後 Google 就能讓合作夥伴 目標對象勝出的廣告。但 Google 只會收到少量流量 目標對象競價可以放送,而勝出的興趣群組廣告 轉譯完成的部分。參與出價者的瀏覽器內出價會與傳統出價競爭。

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

其他功能

以下功能為核心通訊協定的擴充功能。

平行處理

並行處理是一種最佳化做法,可同時啟動內容相關廣告請求和 trustedBiddingSignalsUrl 中指定的買方信任伺服器要求,藉此縮短端對端競價延遲時間。

平行處理可以縮短延遲時間,但會影響興趣群組 買方資格和支援 協調實驗。 並行處理功能適用於參與裝置端興趣群組競價的所有出價方。出價方不需要採取行動 參與競價,但應該熟悉 平行處理如何影響裝置端競價的資格。 並行競價中尚不支援協調實驗的實驗群組 ID。

放送流程摘要

以下是並行競價流程的摘要: 流程圖

裝置端興趣群組買家資格條件

如果是平行競價,navigator.runAdAuction 的呼叫會在之前 內容相關廣告回應。為了啟動買方信任的伺服器呼叫,navigator.runAdAuction 要求 interestGroupBuyers 參數必須以值的形式傳遞,而其他競價參數則接受可在內容廣告回應後解析的 JavaScript 承諾。由於 interestGroupBuyers 是在情境廣告回應之前傳遞,因此情境廣告回應 (包括出價回應) 無法用於選擇哪些買方參與指定請求的平行競價。相反地,Google 的發布者代碼會在使用者瀏覽器中快取同一個網域上先前執行的 navigator.runAdAuctioninterestGroupBuyers 參數。

並行處理有幾個重要考量:

  1. 買方信任伺服器請求不需要的競價信號 即時出價回應中可以繼續指定 (例如 perBuyerSignals) 與非平行競價相同 這些信號的 Promise 解析完成後,裝置端競價的剩餘步驟會以與非平行競價流程相同的方式完成。

  2. 由於並行處理功能會依賴興趣群組買家清單快取,因此 Google 不會一律執行並行競價,因為並行處理快取可能為空白或已過期。如果快取空白或已過期,Google 會執行 標準非平行 Protected Audience API 競價,並透過買方意圖來 參與非平行競價,建構興趣群組買家快取。

  3. 如果目前發布商網域有至少一位出價方的快取買方,Google 就會執行並行競價,並在出價要求中顯示:

    • Google RTB 通訊協定:BidRequest.adslot.interest_group_auction.parallelized
    • OpenRTB:BidRequest.imp.ext.interest_group_auction.parallelized
  4. 每個已註冊的興趣群組買家來源 (針對特定出價方) 都會在平行競價中納入對應的 ParallelAuctionBuyer 項目:

    • Google RTB 通訊協定:BidRequest.adslot.interest_group_auction.parallel_auction_buyer
    • OpenRTB:BidRequest.imp.ext.interest_group_auction.pbuyer
  5. 如果執行並行競價,但特定買方來源不在快取中,則無法將該買方新增至目前的裝置端競價。這表示如果請求的 parallelized=True 缺少 指定興趣群組買家來源的 ParallelAuctionBuyer 個項目。 不過,如果出價方在出價回應中加入有效且符合資格的 InterestGroupBuyer,系統會將對應的興趣群組買方來源加入快取,這些來源將可用於日後透過相同瀏覽器和網域提出的並行要求。您可以透過下列欄位,表示有意參與興趣群組競價:

    • Google RTB 通訊協定:BidResponse.adslot.interest_group_bidding.interest_group_buyers
    • OpenRTB:BidResponse.ext.igbid.igbuyer
  6. 快取的買方來源 (包含在平行競價的 interestGroupBuyers 參數中),如果出價方未表示要參與出價回應,可能會收到買方信任的伺服器呼叫,但不會參與平行競價。