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 廣告放送流程:
- 出價方與其廣告客戶合作,為每個廣告主維護興趣群組。廣告客戶通常會在網頁中加入出價方代碼,以便將瀏覽器加入興趣群組。
- 使用者造訪廣告客戶的網頁。網頁可能包含出價方的代碼。
- 出價方的代碼會叫用 Protected Audience API
joinAdInterestGroup()
。這個呼叫會要求瀏覽器將使用者新增至興趣群組。 - 使用者造訪發布商網頁。使用者的瀏覽器請求 Google 的發布商廣告代碼。
- Google 的發布商廣告代碼會向 Google 伺服器提出內容相關廣告請求。
- Google 會將內容相關出價要求傳送給參與的出價方。詳情請參閱「出價要求變更」一節。
- 出價方會傳回含有
interest_group_bidding
欄位的BidResponse
。如果出價方未指定interest_group_bidding
,Google 就不會在競價設定中將出價工具的來源加到interestGroupBuyers
。出價回應也可以包含interest_group_bidding.per_buyer_signals
。在瀏覽器競價期間,系統會將per_buyer_signals
傳遞至出價方的出價函式。詳情請參閱出價回應變更一節。 - Google 執行伺服器端競價,並將出價回應傳回瀏覽器。伺服器端競價會考量傳統的伺服器端出價。出價回應可包含內容相關勝出出價 (如有) 的相關資訊。
- 出價回應包含瀏覽器內競價的競價設定。其中包括每個參與買方的比對內容信號 (透過
interest_group_bidding.per_buyer_signals
傳送)、內容比對勝出者資訊,以及出價資格設定。 - Google 的發布商代碼會叫用 Protected Audience API
runAdAuction()
,以便啟動裝置端興趣群組競價。Google 只包含先前在競價設定中將interest_group_bidding
傳回interestGroupBuyers
的買方。 - Google 會將每個符合資格的出價方的
per_buyer_signals
傳遞至 Protected Audience 競價設定。 - 如果指定的出價方的興趣群組指定
trustedBiddingSignalsUrl
,瀏覽器就會向各個群組的trustedBiddingSignalsUrl
發出要求,擷取各個群組的即時信號。詳情請參閱 Protected Audience API 規格。 - 對於每個選擇加入且有資格參與瀏覽器內競價的興趣群組,瀏覽器會叫用出價方的
generateBid()
。這個步驟會計算出價並選取廣告素材。generateBid()
可存取出價方提供的per_buyer_signals
,以及指定興趣群組的受信任出價信號。 - 瀏覽器會叫用賣方 (這裡是指 Google 的)
scoreAd()
,為興趣群組廣告競價中的每個出價指派排名。系統會根據發布商保護措施、廣告政策和其他限制,為出價排名及篩選。 - 瀏覽器以符合資格的興趣群組出價進行競價。排名最高的內容比對出價會參與瀏覽器內競價。
- 競價之後,如果有興趣群組勝出者,瀏覽器會叫用賣方的
reportResult()
和出價方的reportWin()
,向各方通知瀏覽器內競價的勝出者。 - 如果興趣群組廣告勝出,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.width
和 Adslot.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 可能造成的影響。
協助 Chrome 執行第三方 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
傳播買方情境顯示信號
算繪期間,興趣群組廣告素材可能會透過內容比對出價回應傳送這些信號,並使用巨集展開功能在顯示網址請求中接收這些信號,藉此在算繪期間使用有限的比對內容信號。舉例來說,顯示信號可用來自訂廣告素材的外觀和風格,改善特定廣告版位或發布商頁面中的效能。
您可以在內容比對出價回應中,加入序列化為網址安全字串的買方顯示信號,Google 會建構 ${RENDER_DATA_buyer.origin.example[_OPTIONAL_SUFFIX]}
巨集,取代得標興趣群組顯示網址。
視通訊協定而定,您可以在出價回應中使用下列欄位指定算繪信號:
- Google 即時出價:
BidResponse.interest_group_bidding.interest_group_buyer.rendering_signals
- OpenRTB:
BidResponse.ext.igbid.igbuyer.rsig
系統最多可在出價回應中加入 3 組具有不同巨集後置字串的轉譯信號,以區分不同的信號。舉例來說,後置字串可用來比對特定信號組合 (僅適用於廣告素材),以及顯示網址中對應的巨集,進而縮減資料移轉大小。
如果信號不具安全網址、不是專屬巨集尾碼,或提供的信號組合超過 3 組,興趣群組買方就無法參與 Protected Audience 競價。
指定瀏覽器內出價上限
在 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_support
和 BidRequest.dsa.publisher_rendering_support
(適用於 Google Authorized Buyers 通訊協定,BidRequest.regs.dsa.required
和 BidRequest.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 的供應商。
將 如果與插入的 IAB GVL ID 相關聯的 IAB GVL 供應商並未徵得使用者同意,含有 ${GDPR_CONSENT_XXXX} 巨集應在 renderUrl 內只會出現一次。 |
${ADDL_CONSENT}
|
這會展開成與要求相關聯的額外同意聲明 (AC) 字串。 |
${AD_WIDTH}, ${AD_HEIGHT)
|
這些巨集會插入廣告版位的寬度和高度。 |
${RENDER_DATA_buyer.origin.example[_OPTIONAL_SUFFIX]}
|
巨集包含出價回應中指定的轉譯時間買家信號。
將 |
曝光次數計算方式
與即時出價合作夥伴一起在 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 RTB 和 OpenRTB 擴充功能的通訊協定說明文件。
出價意見回饋通知
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。
產品層級 TURTLEDOVE
在 Protected Audience API 測試期間,Google RTB 合作夥伴可以使用以多個片段組成的廣告或產品層級 TURTLEDOVE (PLTD)。如果您打算測試 PLTD,可能需要額外的資源和設定,請在整合期間告知客戶經理。
新手上路
以下說明如何測試 Protected Audience API:
步驟
- 如要加入 Protected Audience API 實驗,請填寫要求表單。
- 提交要求表單後,請與您的客戶經理聯繫,或透過 Authorized Buyer 說明中心提交支援單。
- 帳戶設定完成後,Google 和合作夥伴均可按照測試階段中的步驟驗證整合。
廣告素材審查
如要在 Protected Audience API 競價中使用產品層級廣告 (由多個項目組成的廣告) 出價,請遵守以下規定:
- 在元件廣告容器 (又稱為頂層
renderUrl
) 中加入&pltd=True
查詢參數,以便在廣告素材審核期間區分頂層renderUrls
。renderUrl
- 當 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 競價、確保廣告可顯示,並記錄曝光:
- 請使用 Chrome 101 以上版本。
- 使用
chrome://flags/#privacy-sandbox-ads-apis
和chrome://flags/#enable-fenced-frames
啟用 Privacy Sandbox API 和 Fenced Frame。詳情請參閱「測試 Privacy Sandbox」。 - 使用即時出價 API 將廣告素材送審。
- 使用出價方提供的廣告客戶頁面,將瀏覽器新增至出價方擁有的興趣群組。
使用 Google 提供的測試發布商頁面,觸發 Protected Audience 競價:
https://fledge-testing.uc.r.appspot.com/?nid=allow_all
瀏覽器內興趣群組的出價必須夠高才能贏得競價,因為出價可能會與傳統的伺服器端出價競爭。Google 也提供每位合作夥伴專屬的測試發布商頁面,只有指定合作夥伴可以參與競價。在合作夥伴的特定頁面上,更穩定地贏得瀏覽器競價。
驗證以下內容:
- 放送預期勝出的廣告。
- 競價結果會在伺服器端傳送,也就是說勝出的出價方收到來自
reportWin()
的連線偵測 (ping)。 - 測試發布商頁面主控台會使用下列資訊,記錄每個出價的偵錯訊息:
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 將為這個階段啟用帳戶。
其他功能
下列功能是核心通訊協定的擴充功能。
平行處理
平行處理是一種最佳化作業,可同時發出內容相關廣告請求與傳送至 trustedBiddingSignalsUrl
中指定的買方信任伺服器的要求,藉此縮短端對端競價延遲時間。
平行處理可縮短延遲時間,但會影響興趣群組買家資格和協調實驗支援作業。平行處理功能適用於參與裝置端興趣群組競價的所有出價方。出價方不必採取任何行動,即可參與平行競價,但應該熟悉平行處理功能如何影響裝置端競價的資格。平行競價尚未支援座標實驗的實驗組 ID。
放送流程摘要
以下是平行競價流程的摘要:
裝置端興趣群組買方資格
如果是平行競價,在傳回內容相關廣告回應「之前」,navigator.runAdAuction
的呼叫會發生。為了啟動買方受信任的伺服器呼叫,navigator.runAdAuction
規定 interestGroupBuyers
參數必須以值的形式傳遞,其餘競價參數則接受在內容相關廣告回應之後解析的 JavaScript Pro。由於 interestGroupBuyers
是在內容相關廣告回應之前傳遞,因此內容相關廣告回應 (包括出價回應) 無法用來選擇哪些買方參與該要求的平行競價。Google 的發布商代碼會在使用者瀏覽器中快取,而是在相同網域執行先前 navigator.runAdAuction
的 interestGroupBuyers
參數。
平行處理幾個重要考量事項:
您可透過與非平行競價相同的方式,在 RTB 出價回應中指定買方信任伺服器要求中不需要的競價信號 (例如
perBuyerSignals
)。解決這些信號的承諾後,裝置端競價的其餘步驟將以與非平行競價流程相同的方式完成。平行處理功能需要快取興趣群組買家清單,因此 Google 不一定會執行平行競價,因為平行處理快取可能空白或已過期。如果快取為空白或已過期,Google 會執行標準的非平行 Protected Audience API 競價,並透過買家意圖參與非平行競價,建立興趣群組買家快取。
如果在目前的發布商網域上為至少一個買方快取了任何出價方,Google 就會執行平行競價,如出價要求所示:
- Google 即時出價通訊協定:
BidRequest.adslot.interest_group_auction.parallelized
- OpenRTB:
BidRequest.imp.ext.interest_group_auction.parallelized
- Google 即時出價通訊協定:
凡是指定出價方的註冊興趣群組買家來源,都會有對應的
ParallelAuctionBuyer
項目:- Google 即時出價通訊協定:
BidRequest.adslot.interest_group_auction.parallel_auction_buyer
- OpenRTB:
BidRequest.imp.ext.interest_group_auction.pbuyer
- Google 即時出價通訊協定:
如果執行平行競價,但快取中沒有特定買家來源,就無法將該買方新增至目前的裝置端競價。如果要求包含的
parallelized=True
缺少指定興趣群組買家來源的ParallelAuctionBuyer
項目,表示這項條件。不過,如果出價方在出價回應中加入有效且符合資格的InterestGroupBuyer
,會將對應的興趣群組買家來源加進快取,且這些來源未來都將符合向相同瀏覽器和網域發出的平行處理要求。您可以在下列欄位中指出參加興趣群組競價的意願:- Google 即時出價通訊協定:
BidResponse.adslot.interest_group_bidding.interest_group_buyers
- OpenRTB:
BidResponse.ext.igbid.igbuyer
- Google 即時出價通訊協定:
快取買方來源 (包含在平行競價的
interestGroupBuyers
參數中),因為出價方未指示參與出價回應的意圖可能會收到買方信任伺服器呼叫,但不會參與平行競價。