當 Google 向您的應用程式傳送出價要求時,即時出價互動就會開始。本指南說明如何編寫應用程式程式碼,以處理出價要求。
剖析要求
Google 會傳送以 OpenRTB JSON 或 Protobuf 格式序列化的出價要求,並附加為 HTTP POST 要求的酬載。接收的格式取決於端點 的設定。如需範例,請參閱「出價要求範例 」。
您必須剖析這項要求,才能接收序列化的 BidRequest。如果使用 Protobuf 格式,請務必從參考資料 頁面下載 openrtb.proto 和 openrtb-adx.proto,並使用這些檔案產生程式庫,用於剖析 BidRequest 訊息。舉例來說,下列 C++ 程式碼會剖析字串中的 POST 酬載,藉此剖析要求:
string post_payload = /* the payload from the POST request */ ;
BidRequest bid_request ;
if ( bid_request . ParseFromString ( post_payload )) {
// Process the request .
}
取得 BidRequest 後,您就可以將其做為物件,擷取及解讀所需欄位。舉例來說,在 C++ 中,疊代 OpenRTB `BidRequest` 中的交易可能如下所示:
for ( const BidRequest :: Imp :: Pmp :: Deal & deal : pmp . deals ()) {
DoSomething ( deal . id (), deal . wseat ());
}
帳單 ID
當發布商的廣告空間符合您的一或多個
預先指定設定 時,您就會收到出價要求。BidRequest.imp.ext.billing_id
會填入所有符合資格買方的帳單 ID,以及相關的預先指定目標設定。此外,如為交易 廣告空間,您可以使用 BidRequest.imp.pmp.deal.ext.billing_id 找出與相關買家相關聯的帳單 ID。出價時,只能指定出價要求中買方的帳單 ID。
如果出價要求中包含多個帳單 ID,您必須使用 BidResponse.seatbid.bid.ext.billing_id 欄位,指定要將出價歸因於哪個買家的帳單 ID。
imp {
ext {
// The billing IDs of all of your matching pretargeting configs and eligible child seats are
// stored in a flat list here.
billing_id: 123
billing_id: 456
billing_id: 789
}
pmp {
// All eligible deals are stored in a single flat list.
deal {
id: 1000
ext {
// The specific billing IDs eligible to bid on this deal are indicated here.
billing_id: 789
}
...
}
deal {
id: 2000
ext {
billing_id: 123
billing_id: 456
}
...
}
}
...
}
...
判斷遭封鎖的類別
出價時,內含的廣告素材不得有發布商封鎖的偵測類別。否則出價會從競價中篩除。
如要查看曝光的封鎖類別,請檢查 BidRequest.bcat 欄位,其中會填入帳戶設定的分類 類別。
以下範例顯示根據設定的廣告類別分類,封鎖的類別:
IAB 內容分類 1.0 版
// Bid request
{
// Indicates the blocked categories using IAB Content 1.0 Taxonomy.
"bcat" : [
"IAB9-9" , // Cigars
"IAB8-18" // Wine
]
"imp" : {
...
}
}
Google 廣告類別分類
// Bid request
{
// Indicates the blocked categories using Google Ad Category Taxonomy.
"bcat" : [
"10138" , // Cigar and tobacco collecting
"10080" , // Tobacco
"11649" , // Wine
"10674" , // Wine collecting
"13008" // Wine clubs
]
"imp" : {
...
}
}
判斷內容類別
出價要求可以包含內容比對類別欄位,說明顯示曝光的網站或應用程式。這些欄位同樣使用廣告類別分類,但代表的是曝光情境,而非廣告素材限制。這些欄位可能不會使用與 BidRequest.bcat 欄位相同的分類。Google 或發布商可提供這些內容相關類別。使用內容比對類別,可能有助於改善曝光評估、內容比對指定目標和品牌安全。
Google 偵測到的內容比對類別
Google 會在下列欄位填入偵測到的網站、應用程式或網頁 IAB 內容類別:
欄位
說明
BidRequest.site.cat
描述網站的內容類別 ID 陣列。
BidRequest.site.pagecat
描述網站目前網頁或檢視畫面的內容類別 ID 陣列。
BidRequest.app.cat
描述應用程式的內容類別 ID 陣列。
BidRequest.app.pagecat
內容類別 ID 陣列,說明應用程式的目前網頁或檢視畫面。
如要瞭解特定出價要求中這些欄位使用的確切分類,請參閱 BidRequest.site.cattax 或 BidRequest.app.cattax 欄位。由於發布商偏好設定或法規考量,情境類別欄位不一定會填入資料。詳情請參閱「Google Ad Manager 中的 OpenRTB 內容類別 」。
發布商提供的信號
除了 Google 偵測到的內容比對類別外,出價要求也可能包含發布商提供的信號,這些信號也會描述曝光的內容。與 Google 偵測到的內容相關類別不同,只有在發布商提供時,系統才會填入這些信號。這些信號會透過 BidRequest.site.content 和 BidRequest.app.content 物件傳送,例如 content.data.segment 和 content.genre。content.data.segment
項目的分類會記錄在 content.data.ext.segtax 中。詳情請參閱「運用發布商提供的信號 (PPS) 進行即時出價 (RTB) 」。
字典檔案
出價要求會使用字典檔案中定義的 ID,這些檔案可在參考資料 頁面取得。
出價方網址巨集
您也可以選擇使用巨集,將 BidRequest 的部分資訊插入出價端點網址。如果您使用一或多個巨集設定端點網址,系統會在出價要求中提供相關資訊時展開巨集。舉例來說,如果您想根據 BidRequest 中的資訊執行負載平衡,這項功能就非常實用。如需新巨集的支援,請與客戶經理聯絡。
巨集 說明
%%GOOGLE_USER_ID%%
替換為在 BidRequest.user.id 中找到的 Google 使用者 ID。舉例來說,出價方網址 http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%% 會在要求時替換為 http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl。
如果 Google 使用者 ID 不明,系統會替換成空白字串,結果類似於
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
改用 1 表示出價要求來自行動裝置,否則使用 0。這是根據 BidRequest.device.devicetype 的值而定,其中行動裝置以 HIGHEND_PHONE (4) 或 Tablet (5) 表示。
%%HAS_VIDEO%%
改用 1 表示出價要求包含影片廣告空間,否則使用 0。這取決於出價要求中是否填入 BidRequest.imp.video。
%%IS_CTV%%
改用 1 表示出價要求來自連網電視裝置,否則使用 0。這項指標是根據 BidRequest.device.devicetype 的值計算而來。如果是 Protobuf,連網電視裝置為 CONNECTED_TV、CONNECTED_DEVICE 或 SET_TOP_BOX,對應 JSON 的整數值 3、6 或 7。
%%HOSTED_MATCH_DATA%%
替換為根據 BidRequest.user.buyeruid 產生的值。
%%MOBILE_IS_APP%%
改用 1 表示出價要求是針對行動應用程式廣告空間,否則使用 0。這取決於是否填入 BidRequest.app。
從交易網址找出行動應用程式 ID
行動應用程式交易會回報類似下列的網址:
mbappgewtimrzgyytanjyg4888888 .com
使用 base-32 解碼器解碼粗體字串部分 (gewtimrzgyytanjyg4888888 )。
您可以使用線上解碼器 ,但必須將字母大寫,並將尾端的 8 替換為 = 值。
因此,解碼這個值:
GEWTIMRZGYYTANJYG4======
結果:
1 - 429610587
字串
429610587 是 iOS 應用程式「iFunny」
iFunny 的應用程式 ID。
讓我們再看一例。遭檢舉的網址為:
mbappgewtgmjug4ytmmrtgm888888 .com
解碼這個值:
GEWTGMJUG4YTMMRTGM======
結果:
1 - 314716233
結果
314716233 是 iOS 應用程式
TextNow 的應用程式 ID。
從交易網址中找出行動應用程式名稱
以下是取得應用程式名稱的範例。遭檢舉的網址如下:
mbappMFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q888 .com
解碼這個值:
MFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q===
會產生以下結果:
air.com.hypah.io.slither
結果等同於 Android 應用程式
slither.io 。
公開出價欄位
傳送給參與公開出價的廣告交易平台和聯播網出價方的出價要求,與參與標準即時出價的授權買方類似。公開出價客戶會收到少量額外欄位,部分現有欄位可能有其他用途。其中包括:
OpenRTB
詳細資料
BidRequest.imp.ext.dfp_ad_unit_code
包含發布商的 Ad Manager 聯播網代碼,後面接著廣告單元階層,並以正斜線分隔。
舉例來說,這會顯示為類似以下的格式:/1234/cruises/mars。
BidRequest.user.data.segment
發布商傳送給廣告交易平台出價方的重複鍵/值組合。
當 BidRequest.user.data.name 設為 “Publisher Passed” 時,您可以判斷這些值是發布商傳送的鍵/值組合。
注意: 這個欄位目前只會傳送給 Beta 版封測參與者。
聲明允許的供應商
提供研究、再行銷和廣告放送等服務的技術供應商,可能會在買賣雙方的互動中扮演重要角色。只有經 Google 審查、可參與 Authorized Buyers 互動的供應商,才能使用這項功能。
如要瞭解 BidRequest 並建立 BidResponse,您必須瞭解宣告技術供應商的兩種不同可能性:
部分供應商不需宣告,這些供應商列於 Ad Manager 認證外部供應商 。
其他供應商必須在 BidRequest 中宣告,才能參與:
在 BidRequest 中,「BidRequest.imp.ext.allowed_vendor_type」欄位會指定賣家允許的供應商。將在 allowed_vendor_type 中傳送的供應商會列在 vendors.txt 字典檔中。
出價要求範例
下列範例代表 Protobuf 和 JSON 要求的人類可讀範例。
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
api : MRAID_1
api : MRAID_2
format {
w : 320
h : 50
}
format {
w : 300
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 241
wmax : 360
hmin : 42
hmax : 56
}
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "25.2.0"
tagid : "1087180971"
bidfloor : 4.0
bidfloorcur : "JPY"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0006611673161387444
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.0
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 47329549763
billing_id : 93434328916
publisher_settings_list_id : 5038409325655482128
publisher_settings_list_id : 8244945310049778846
allowed_vendor_type : 0
allowed_vendor_type : 776
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
billable_event_rate_bid_adjustment {
bid_adjustment : 0.9657459259033203
creative_type : HTML_SNIPPET
}
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "2.23.1"
bundle : "com.google.testapp"
publisher {
id : "pub-3006071972218254"
[ com . google . doubleclick . publisher ] {
country : "CY"
}
}
content {
url : "https://www.google.com"
userrating : "4.6"
language : "it"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "ITA"
region : "IT-BA"
zip : "70128"
type : IP
utcoffset : 120
accuracy : 1869
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9219050
}
}
ipv6 : "2a01:827:39ae::"
language : "it"
make : "Xiaomi"
model : "220233L2G"
os : "android"
osv : "11"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
w : 360
h : 725
pxratio : 2.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "11"
}
mobile : true
model : "220233L2G"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : false
chargelevel : 0.9200000166893005
charging : false
diskspace : 12300
audioout : AUDIO_SPEAKER
scrollposx : 0
scrollposy : 0
}
}
user {
id : "29950OI6i422S2857R0MT3n5756"
buyeruid : "4Z41N9YA3024279s51RFb73dtG997z59"
customdata : "fs37o0bb54N2775957ivPEJvA6BTk3X5xzN26h2ZT0fI5T3I"
consent : "OMITTED"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 3230
consented_providers : 2605
additional_consent : "OMITTED"
}
consent : "OMITTED"
session {
duration : 660
depth : 270
requestssinceappopen : 618
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 350
cur : "AUD"
cur : "JPY"
bcat : "3"
bcat : "4"
regs {
[ com . google . doubleclick . regs ] {
gdpr : true
}
}
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-a-v261210000.261210000.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 320 ,
"h" : 50
},
{
"w" : 300 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 241 ,
"wmax" : 360 ,
"hmin" : 42 ,
"hmax" : 56
}
}
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "25.2.0" ,
"tagid" : "1087180971" ,
"bidfloor" : 4.0 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0006611673161387444 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.0 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"47329549763" ,
"93434328916"
],
"publisher_settings_list_id" : [
"5038409325655482128" ,
"8244945310049778846"
],
"allowed_vendor_type" : [
0 ,
776
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"billable_event_rate_bid_adjustment" : [
{
"bid_adjustment" : 0.9657459 ,
"creative_type" : 1
}
],
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "2.23.1" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-3006071972218254" ,
"ext" : {
"country" : "CY"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.6" ,
"language" : "it"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "ITA" ,
"region" : "IT-BA" ,
"zip" : "70128" ,
"type" : 2 ,
"utcoffset" : 120 ,
"accuracy" : 1869 ,
"ext" : {
"geo_criteria_id" : 9219050
}
},
"ipv6" : "2a01:827:39ae::" ,
"language" : "it" ,
"make" : "Xiaomi" ,
"model" : "220233L2G" ,
"os" : "android" ,
"osv" : "11" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"w" : 360 ,
"h" : 725 ,
"pxratio" : 2.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"11"
]
},
"mobile" : 1 ,
"model" : "220233L2G" ,
"source" : 3
},
"ext" : {
"metereddata" : 0 ,
"chargelevel" : 0.92 ,
"charging" : 0 ,
"diskspace" : 12300 ,
"audioout" : 1 ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"id" : "29950OI6i422S2857R0MT3n5756" ,
"buyeruid" : "4Z41N9YA3024279s51RFb73dtG997z59" ,
"customdata" : "fs37o0bb54N2775957ivPEJvA6BTk3X5xzN26h2ZT0fI5T3I" ,
"consent" : "OMITTED" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"3230" ,
"2605"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"session" : {
"duration" : 660 ,
"depth" : 270 ,
"requestssinceappopen" : 618 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 350 ,
"cur" : [
"AUD" ,
"JPY"
],
"bcat" : [
"3" ,
"4"
],
"regs" : {
"ext" : {
"gdpr" : 1
}
},
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-a-v261210000.261210000.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
如要將出價要求轉換為二進位格式 (就像從實際要求的 POST 酬載中取得),您可以執行下列操作 (在 C++ 中)。不過,請注意,這不適用於 OpenRTB JSON。
string text_format_example = /* example from above */ ;
BidRequest bid_request ;
if ( TextFormat :: ParseFromString ( text_format_example , &bid_request )) {
string post_payload ;
if ( bid_request . SerializeToString ( &post_payload )) {
// post_payload is a binary serialization of the protocol buffer
}
}
即時回饋
Authorized Buyers,以及使用公開出價的廣告交易平台和聯播網,都能取得即時回饋。
系統會根據您先前一或多次出價的結果,在 BidRequest.ext.bid_feedback 中填入即時回饋,可用於查看出價是否贏得競價,或贏得競價所需的最低出價等詳細資料。如要啟用即時意見回饋,請與客戶經理聯絡。
除了出價回應意見回饋中傳送的預設欄位外,您也可以使用 BidResponse.seatbid.bid.ext.event_notification_token 欄位,在出價回應中傳送自訂資料。event_notification_token 是只有出價方知道的任意資料,可能有助於偵錯,例如:代表新策略的新指定 ID 或出價 ID,或只有出價方知道的廣告素材相關中繼資料。詳情請參閱 OpenRTB 擴充功能通訊協定緩衝區檔案 。
Authorized Buyers 向出價方傳送出價要求時,出價方會回覆 BidResponse。如果出價方已啟用即時回饋,Authorized Buyers 會在後續的出價要求中,透過 BidFeedback 訊息傳送回應意見回饋:
message BidFeedback {
// The unique id from BidRequest . id .
optional string request_id = 1 ;
// The status code for the ad . See creative - status - codes . txt in the
// technical documentation for a list of ids .
optional int32 creative_status_code = 2 ;
// Deprecated . This field is not populated and will be removed after March ,
// 2025. If the bid won the auction , this is the price paid in your account
// currency . If the bid participated in the auction but was out - bid , this
// is the CPM that should have been exceeded in order to win . This is not
// set if the bid was filtered prior to the auction , if the publisher or
// winning bidder has opted out of price feedback or if your account has
// opted out of sharing winning prices with other bidders . For first - price
// auctions , minimum_bid_to_win is populated instead of this field .
optional double price = 3 [ deprecated = true ];
// The minimum bid value necessary to have won the auction , in your account
// currency . If your bid won the auction , this is the second highest bid
// that was not filtered ( including the floor price ) . If your bid didn 't win
// the auction , this is the winning candidate 's bid. This field will only be
// populated if your bid participated in a first - price auction , and will not
// be populated if your bid was filtered prior to the auction .
optional double minimum_bid_to_win = 6 ;
// Billable event rate multiplier that was applied to this bid during
// ranking . The adjustment reflects the likelihood that your bid would
// generate a billable event ( namely , the ad renders successfully ) if it won
// the auction , relative to the probability that other bids generate a
// billable event if they won the auction . This adjustment can be larger or
// smaller than 1. This affects the final ranking in the auction only ; in
// particular , this multiplier does not affect the payment or whether the
// bid clears any floor price .
optional float billable_event_rate_bid_adjustment = 13 [ default = 1 ];
// When a publisher uses an RTB auction and waterfall - based SDK mediation on
// the same query , the winner of the real - time auction must also compete in
// a mediation waterfall ( which is ordered by price ) to win the impression .
// If the bid participated in the auction and there was no waterfall , the
// value of this field is 0. If the bid participated in the auction and
// there was a waterfall , the value of this field is a price representing a
// sample bid from the eligible mediation networks that were higher than the
// auction winner , weighted by expected fill rate . This field can be used
// in conjunction with minimum_bid_to_win to train bidding models . The CPM
// is in your account currency .
optional double sampled_mediation_cpm_ahead_of_auction_winner = 8 ;
message EventNotificationToken {
// The contents of the token .
optional string payload = 1 ;
}
// The token included in the corresponding bid .
optional EventNotificationToken event_notification_token = 4 ;
// The creative ID included in the corresponding bid .
optional string buyer_creative_id = 5 ;
}
在這則訊息中,您應檢查的第一個欄位是 bid_feedback.creative_status_code;您可以在
creative-status-codes.txt 中找到程式碼意義。請注意,如果贏得競價,您可以選擇不提供價格意見。詳情請參閱「如何選擇不採用 」。
即時回饋包含出價要求 ID 和下列其中一項:
範例
以下是支援通訊協定中顯示的即時回饋範例:
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
api : MRAID_1
api : MRAID_2
format {
w : 320
h : 50
}
format {
w : 300
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 273
wmax : 408
hmin : 48
hmax : 64
}
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "25.2.0"
tagid : "2012072613"
bidfloor : 139.0
bidfloorcur : "JPY"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0003280164091847837
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.0
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 86462726689
billing_id : 16379689419
publisher_settings_list_id : 8683644760809433282
publisher_settings_list_id : 2559598489488381446
allowed_vendor_type : 0
allowed_vendor_type : 4697
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "1.50.0"
bundle : "com.google.testapp"
publisher {
id : "pub-3006071972218254"
[ com . google . doubleclick . publisher ] {
country : "CY"
}
}
content {
url : "https://www.google.com"
userrating : "4.5"
language : "es"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "USA"
region : "TX"
metro : "635"
city : "Austin"
zip : "78701"
type : IP
utcoffset : - 300
accuracy : 1249
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9028276
}
}
ipv6 : "2600:100c:b065:b869:f05d:476e:f8c9:88e"
carrier : "70092"
language : "es"
make : "Google"
model : "Pixel 10 Pro"
os : "android"
osv : "16"
connectiontype : CELL_4G
devicetype : HIGHEND_PHONE
ifa : "e12095da-00d2-4d49-b4f1-afc512507414"
w : 412
h : 919
pxratio : 2.625
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "16"
}
mobile : true
bitness : "64"
model : "Pixel 10 Pro"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : true
chargelevel : 0.6800000071525574
charging : false
diskspace : 58000
audioout : AUDIO_SILENT
ifa_type : "aaid"
scrollposx : 0
scrollposy : 0
}
}
user {
[ com . google . doubleclick . user ] {
session {
duration : 353
depth : 270
requestssinceappopen : 7115
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 1200
cur : "AUD"
cur : "JPY"
bcat : "3"
bcat : "4"
regs {
gpp : "OMITTED"
gpp_sid : USPV1
}
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-a-v263500999.261210000.1"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
bid_feedback {
request_id : "30kO34Dw772N4To1Wl2309"
creative_status_code : 80
event_notification_token {
payload : "token"
}
buyer_creative_id : "test_creative_id_950219"
minimum_bid_to_win : 1.13
}
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
ip : IP_FULL
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 320 ,
"h" : 50
},
{
"w" : 300 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 273 ,
"wmax" : 408 ,
"hmin" : 48 ,
"hmax" : 64
}
}
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "25.2.0" ,
"tagid" : "2012072613" ,
"bidfloor" : 139.0 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0003280164091847837 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.0 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"86462726689" ,
"16379689419"
],
"publisher_settings_list_id" : [
"8683644760809433282" ,
"2559598489488381446"
],
"allowed_vendor_type" : [
0 ,
4697
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "1.50.0" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-3006071972218254" ,
"ext" : {
"country" : "CY"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.5" ,
"language" : "es"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "USA" ,
"region" : "TX" ,
"metro" : "635" ,
"city" : "Austin" ,
"zip" : "78701" ,
"type" : 2 ,
"utcoffset" : - 300 ,
"accuracy" : 1249 ,
"ext" : {
"geo_criteria_id" : 9028276
}
},
"ipv6" : "2600:100c:b065:b869:f05d:476e:f8c9:88e" ,
"carrier" : "70092" ,
"language" : "es" ,
"make" : "Google" ,
"model" : "Pixel 10 Pro" ,
"os" : "android" ,
"osv" : "16" ,
"connectiontype" : 6 ,
"devicetype" : 4 ,
"ifa" : "e12095da-00d2-4d49-b4f1-afc512507414" ,
"w" : 412 ,
"h" : 919 ,
"pxratio" : 2.625 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"16"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "Pixel 10 Pro" ,
"source" : 3
},
"ext" : {
"metereddata" : 1 ,
"chargelevel" : 0.68 ,
"charging" : 0 ,
"diskspace" : 58000 ,
"audioout" : 3 ,
"ifa_type" : "aaid" ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"ext" : {
"session" : {
"duration" : 353 ,
"depth" : 270 ,
"requestssinceappopen" : 7115 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 1200 ,
"cur" : [
"AUD" ,
"JPY"
],
"bcat" : [
"3" ,
"4"
],
"regs" : {
"gpp" : "OMITTED" ,
"gpp_sid" : [
6
]
},
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-a-v263500999.261210000.1"
}
},
"cattax" : 500 ,
"ext" : {
"bid_feedback" : [
{
"request_id" : "30kO34Dw772N4To1Wl2309" ,
"creative_status_code" : 80 ,
"event_notification_token" : {
"payload" : "token"
},
"buyer_creative_id" : "test_creative_id_950219" ,
"minimum_bid_to_win" : 1.13
}
],
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"ip" : 1 ,
"allow_user_data_collection" : 1
}
}
}
建構最高價得標競價的出價模型
在最高價得標競價中出價後,如果出價未從競價中篩除,您會收到即時回饋,包括 minimum_bid_to_win 和 sampled_mediation_cpm_ahead_of_auction_winner 欄位。您可以根據這些信號調整出價邏輯,瞭解出價應提高或降低多少,才能贏得曝光。
minimum_bid_to_win:贏得即時出價競價所需的最低出價。如果您贏得競價,這就是您在贏得競價的情況下,可以提交的最低出價。如果您在競價中落敗,這會是勝出的出價。
sampled_mediation_cpm_ahead_of_auction_winner:如果中介服務鏈 中有其他聯播網,這個欄位的值會是符合資格的中介服務聯播網中,出價高於競價贏家的樣本出價,並依預期供應率加權。如果中介服務鏈中的任何聯播網都不會填滿,或發布商未使用 SDK 中介服務,則這項值會設為 0。
運作方式
如要說明用於判斷 minimum_bid_to_win 和 sampled_mediation_cpm_ahead_of_auction_winner 可能值的計算方式,我們首先需要定義下列項目:
以下是中介服務鏈中的千次曝光出價,依遞減順序排列:
\[C_1, C_2, …, C_n\]
以下代表中介服務鏈中千次曝光出價的相應填寫率:\[f_1, f_2, …, f_n\]
以下函式會根據指定供應率,判斷中介服務鏈元素 \(i\)的預期千次曝光出價和機率:\(X_i = \{C_i\) (機率為 \(f_i\)); \(0\) (機率為 \(1 - f_i\}\))
最終勝出的中介服務鏈會是:
\[\{C_1, C_2, …, C_K, W\}\]
其中 \(W\) 為勝出出價,而 \(C_K > W >= C_{K+1}\)
預留價格或底線以 \(F\)表示。
次高出價則以 \(R\)表示。
競價勝出者的計算方式
欄位
計算方式
minimum_bid_to_win
\(max\{F, R, X_{K+1}, …, X_n\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(\{C_i\) 機率 \(\prod_{j=1}^{i-1}(1-f_j) \cdot f_i \div \prod_{j=1}^{K}(1-f_j)\}\)
如需 \(1 <= i <= K\)。
競價失敗者的計算方式
欄位
計算方式
minimum_bid_to_win
\(max\{F, W\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(max\{X_1, …, X_K\}\)
假設發布商同時使用即時出價和 SDK 中介服務鏈,如下所示:
SDK 中介服務鏈
預期千次曝光出價
供應率
網路 1
\(C_1 = $3.00\)
\(f_1 = 5\%\)
網路 2
\(C_2 = $2.00\)
\(f_2 = 45\%\)
網路 3
\(C_3 = $0.50\)
\(f_3 = 80\%\)
網路 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
假設 RTB 競價結果如下:
RTB 競價
千次曝光出價
競價贏家 (W)
$1.00
競價亞軍 (R)
$0.05 美元
預留價格 / 底價 (F)
$0
贏得競價的出價
以下範例說明如何計算得標出價的 minimum_bid_to_win 和 sampled_mediation_cpm_ahead_of_auction_winner 值和機率。
minimum_bid_to_win
機率
\(max(F, R, C_3) = $0.50\)
\(f_3 = 80\%\)
\(max(F, R, C_4) = $0.10\)
\((1-f_3) \cdot f_4 = 17\%\)
\(max(F, R, 0) = $0.05\)
\((1-f_3) \cdot (1-f_4) = 3\%\)
sampled_mediation_cpm_ ahead_of_auction_winner
機率
\(C_1 = $3.00\)
\(f_1 \div (1-(1-f_1) \cdot (1-f_2)) =~ 10.5\%\)
\(C_2 = $2.00\)
\(((1-f_1) \cdot f_2) \div (1-(1-f_1) \cdot (1-f_2)) =~ 89.5\%\)
注意: 如果競價勝出者放送廣告並收到帳單通知 (例如透過 BidResponse.seatbid[].bid[].burl 中指定的端點),競價勝出者可以推斷,取樣的中介服務千次曝光出價最終都沒有供應廣告,並可將這種情況發生的頻率納入模型。
競價失敗的出價
以下範例說明如何計算競價失敗時 minimum_bid_to_win 和 sampled_mediation_cpm_ahead_of_auction_winner 的值和機率。
minimum_bid_to_win
機率
\(max(F, W) = $1.00\)
\(100\%\)
sampled_mediation_cpm_ ahead_of_auction_winner
機率
\(C_1 = $3.00\)
\(f_1 = 5\%\)
\(C_2 = $2.00\)
\((1-f_1) \cdot f_2 =~ 42.8\%\)
\(0\)
\((1-f_1) \cdot (1-f_2) =~ 52.2\%\)
注意: sampled_mediation_cpm_ahead_of_auction_winner 值為 0 表示即時出價競價勝出。在上述範例中,預期競價贏家有 52.2% 的機率不會被競爭中介服務聯播網的出價超越。
分割出價
分割出價是指將單一複雜的 BidRequest 處理成多個出價要求,並傳送至應用程式。出價要求扁平化後,您可以根據 BidRequest.ext.google_query_id 欄位中的相同值,判斷哪些出價要求屬於原始要求。
分割出價功能預設為啟用,但如果您想停用,可以與客戶經理聯絡。
部分廣告商機可接受多種格式。採用分割出價時,系統會以不同的出價要求傳送每種格式,其中符合資格的帳單 ID 等屬性會與要求中指定的格式相關。
包含下列格式的出價要求,會分割成不同的出價要求:
以下範例顯示簡化的 OpenRTB JSON 出價要求 (未經過廣告格式分割),以及一組等效的分割要求:
預先扁平化
顯示範例
{
"id": "V5ar1wXqKP58nbsyJ6549D",
"imp": [
{
"id": "1",
"video": {
"linearity": 1,
"w": 300,
"h": 250,
"pos": 1,
"skip": 1,
"playbackmethod": [
6
],
"placement": 3,
"mimes": [
"video/mp4"
],
"protocols": [
2,
3
]
},
"banner": {
"format": [
{
"w": 300,
"h": 250
}
],
"w": 300,
"h": 250,
"pos": 1
},
"ext": {
"billing_id": [
47039494050,
52030317241
]
}
}
],
"ext": {
"google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
}
}
扁平化後
顯示範例
Request 1
{
"id": "B3xr1yZqRL48nbsyJ6367N",
"imp": [
{
"id": "1",
"video": {
"linearity": 1,
"w": 300,
"h": 250,
"pos": 1,
"skip": 1,
"playbackmethod": [
6
],
"placement": 3,
"mimes": [
"video/mp4"
],
"protocols": [
2,
3
]
}
"ext": {
"billing_id": [
47039494050
]
}
],
"ext": {
"google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
}
}
Request 2
{
"id": "M1dY8qHyNK74bMsjF393Gf",
"imp": [
{
"id": "1",
"banner": {
"format": [
{
"w": 300,
"h": 250
}
],
"w": 300,
"h": 250,
"pos": 1
},
"ext": {
"billing_id": [
52030317241
]
}
}
],
"ext": {
"google_query_id": "ANy-zdp266-244itJsom3dmXb7SvW1IPg6478g639g0867v1126w630F3M7lAp640H666744"
}
}
交易
除了公開競價外,特定出價方的廣告商機也可能適用於各種交易類型。使用交易分割出價功能時,系統會為公開競價傳送一項出價要求,並為每種固定價格交易傳送一項出價要求。在實際操作中,競價和固定價格優惠交易類型的廣告限制可能不同。舉例來說,如果某個影片廣告商機同時適用於公開競價和固定價格優惠交易,出價方會收到不同的出價要求,其中廣告長度上限和是否允許可略過廣告等限制可能不同。因此,將扁平化套用至廣告商機,可讓您更輕鬆地辨別公開競價和固定價格優惠的廣告限制。
注意: 私下競價和競價套裝組合的限制與公開競價相同,且會繼續納入公開競價出價要求。
可略過性與影片長度
OpenRTB 規格沒有個別欄位,可指定可略過和不可略過廣告的影片長度上限。Google 的實作方式會使用分割出價功能,透過現有的 BidRequest.video.maxduration 和 BidRequest.video.skip 欄位區分這些項目。
以下範例說明當不可略過廣告的時間長度上限為 15,且可略過廣告的時間長度上限為 60 時,影片廣告空間如何簡化。
範例
max_ad_duration
skip (true 或 false)
未經展開的原始要求
15
true
扁平化請求 #1:不可略過
15
false
扁平化請求 #2:可略過
60
true
只有在符合下列條件時,系統才會以非正規方式分割可略過的影片長度出價要求:
這項要求允許影片。
可略過和不可略過的影片都可使用,兩者的時間長度上限不同。
這項要求符合私下競價或公開競價的資格。
如要停用這類簡化功能,請與客戶技術顧問聯絡。如果停用,且發布商允許根據可略過性,設定不同長度上限的可略過和不可略過影片廣告,則 skip 會設為 true,maxduration 則會設為可略過和不可略過廣告限制中較短的時間長度。
影片廣告連播
如果影片廣告連播有多個廣告商機,出價要求會扁平化,因此每個出價要求都代表該廣告連播中的個別廣告商機。這樣一來,您就能對特定廣告連播中的多個廣告機會出價。
Open Measurement
Open Measurement 可讓您指定第三方供應商,為在行動應用程式環境中放送的廣告,提供獨立評估和驗證服務。
如要判斷發布商是否支援出價要求中的 Open Measurement,請檢查廣告商機是否排除發布商可排除的廣告素材屬性 中的 OmsdkType:
OMSDK 1.0 屬性。這會顯示在「橫幅」 或「影片」 的 battr 屬性下方,視格式而定。
如要進一步瞭解如何解讀含有 Open Measurement 信號的出價要求,請參閱 Open Measurement SDK 說明中心文章。
出價要求範例
以下各節顯示不同廣告類型的出價請求範例。
注意: Protobuf 範例包含類似序列化出價要求的下載連結。不保證兩者完全相同。
應用程式橫幅廣告
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
api : MRAID_1
api : MRAID_2
format {
w : 320
h : 50
}
format {
w : 300
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 214
wmax : 320
hmin : 38
hmax : 50
}
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "25.4.0"
tagid : "1170683138"
bidfloor : 0.2
bidfloorcur : "TWD"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0022246940061450005
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.0
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 21036061270
billing_id : 11500270523
publisher_settings_list_id : 6478851576480579402
publisher_settings_list_id : 2452646143102133774
allowed_vendor_type : 0
allowed_vendor_type : 828
ampad : AMP_AD_NOT_ALLOWED
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "16.73"
bundle : "com.google.testapp"
publisher {
id : "pub-3006071972218254"
[ com . google . doubleclick . publisher ] {
country : "JP"
}
}
content {
url : "https://www.google.com"
userrating : "4.5"
language : "ja"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "JPN"
region : "JP-23"
city : "Nagoya"
type : IP
utcoffset : 540
accuracy : 2361
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9197961
}
}
ipv6 : "2402:6b00:be5a::"
language : "ja"
make : "Google"
model : "Pixel 7a"
os : "android"
osv : "17"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
ifa : "105e2839-a340-41b9-94e3-84f6860b185b"
w : 320
h : 712
pxratio : 3.375
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "17"
}
mobile : true
bitness : "64"
model : "Pixel 7a"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : false
chargelevel : 0.7300000190734863
charging : false
diskspace : 27800
audioout : AUDIO_SILENT
ifa_type : "aaid"
scrollposx : 0
scrollposy : 0
}
}
user {
id : "784c390xCf3sdR7n87V64t25vQc"
[ com . google . doubleclick . user ] {
session {
duration : 496
depth : 16
requestssinceappopen : 17
priorclicks : 0
}
idage : 86400
}
}
at : FIRST_PRICE
tmax : 1300
cur : "USD"
cur : "TWD"
bcat : "3"
bcat : "4"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-a-v262180000.262180000.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 320 ,
"h" : 50
},
{
"w" : 300 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 214 ,
"wmax" : 320 ,
"hmin" : 38 ,
"hmax" : 50
}
}
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "25.4.0" ,
"tagid" : "1170683138" ,
"bidfloor" : 0.2 ,
"bidfloorcur" : "TWD" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0022246940061450005 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.0 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"21036061270" ,
"11500270523"
],
"publisher_settings_list_id" : [
"6478851576480579402" ,
"2452646143102133774"
],
"allowed_vendor_type" : [
0 ,
828
],
"ampad" : 2 ,
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "16.73" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-3006071972218254" ,
"ext" : {
"country" : "JP"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.5" ,
"language" : "ja"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "JPN" ,
"region" : "JP-23" ,
"city" : "Nagoya" ,
"type" : 2 ,
"utcoffset" : 540 ,
"accuracy" : 2361 ,
"ext" : {
"geo_criteria_id" : 9197961
}
},
"ipv6" : "2402:6b00:be5a::" ,
"language" : "ja" ,
"make" : "Google" ,
"model" : "Pixel 7a" ,
"os" : "android" ,
"osv" : "17" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"ifa" : "105e2839-a340-41b9-94e3-84f6860b185b" ,
"w" : 320 ,
"h" : 712 ,
"pxratio" : 3.375 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"17"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "Pixel 7a" ,
"source" : 3
},
"ext" : {
"metereddata" : 0 ,
"chargelevel" : 0.73 ,
"charging" : 0 ,
"diskspace" : 27800 ,
"audioout" : 3 ,
"ifa_type" : "aaid" ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"id" : "784c390xCf3sdR7n87V64t25vQc" ,
"ext" : {
"session" : {
"duration" : 496 ,
"depth" : 16 ,
"requestssinceappopen" : 17 ,
"priorclicks" : 0
},
"idage" : 86400
}
},
"at" : 1 ,
"tmax" : 1300 ,
"cur" : [
"USD" ,
"TWD"
],
"bcat" : [
"3" ,
"4"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-a-v262180000.262180000.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
應用程式插頁式廣告
OpenRTB Protobuf
顯示範例
序列化要求
id : "wKS8UeItaMI5RAYw9Pahl0"
imp {
id : "1"
banner {
w : 412
h : 774
pos : AD_POSITION_FULLSCREEN
api : MRAID_1
api : MRAID_2
format {
w : 412
h : 774
}
format {
w : 360
h : 604
}
}
displaymanager : "GoogleMobileAds-iOS"
displaymanagerver : "11.13.0"
instl : true
tagid : "4105056997"
bidfloor : 0.01
bidfloorcur : "USD"
secure : true
exp : 14400
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.3207642734050751
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.012501807883381844
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 83032532617
publisher_settings_list_id : 2887317894027751671
publisher_settings_list_id : 8269939443573722896
allowed_vendor_type : 0
allowed_vendor_type : 238
ampad : AMP_AD_NOT_ALLOWED
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
is_app_open_ad : true
jsver : "test-sdk_123456789"
}
}
app {
ver : "1.0.14"
bundle : "com.google.testapp"
publisher {
id : "pub-2301631347146208"
[ com . google . doubleclick . publisher ] {
country : "AE"
}
}
content {
url : "https://www.google.com"
language : "en"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
ip : "102.78.236.0"
geo {
lat : 0.0
lon : 0.0
country : "MAR"
region : "MA-11"
city : "Marrakech"
zip : "40000"
type : IP
utcoffset : 0
accuracy : 3263
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9197207
}
}
carrier : "72009"
language : "fr"
make : "Apple"
model : "iPhone14,3"
os : "iOS"
osv : "26.6.1"
connectiontype : CELL_3G
devicetype : HIGHEND_PHONE
ifa : "df23895d-6a56-41e9-bb8c-f19163328c19"
hwv : "iPhone14,3"
w : 428
h : 926
pxratio : 3.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "605"
version : "1"
}
platform {
brand : "iPhone"
version : "26"
version : "6"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
atts : 3
audioout : AUDIO_SILENT
ifa_type : "idfa"
scrollposx : 0
scrollposy : 0
}
}
user {
id : "kxz2KP24nII51245YrV2AFtsQ72"
[ com . google . doubleclick . user ] {
session {
duration : 137
depth : 17
requestssinceappopen : 17
priorclicks : 0
}
idage : 12960000
}
}
at : FIRST_PRICE
tmax : 2000
cur : "USD"
bcat : "32"
bcat : "33"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-i-v11.13.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zc08FK-h142dS00t819143TE021SS56r617vV09n09J3OaP354s93vIU300bzJ7e5cG2"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "wKS8UeItaMI5RAYw9Pahl0" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 412 ,
"h" : 774 ,
"pos" : 7 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 412 ,
"h" : 774
},
{
"w" : 360 ,
"h" : 604
}
]
},
"displaymanager" : "GoogleMobileAds-iOS" ,
"displaymanagerver" : "11.13.0" ,
"instl" : 1 ,
"tagid" : "4105056997" ,
"bidfloor" : 0.01 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 14400 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.3207642734050751 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.012501807883381844 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"83032532617"
],
"publisher_settings_list_id" : [
"2887317894027751671" ,
"8269939443573722896"
],
"allowed_vendor_type" : [
0 ,
238
],
"ampad" : 2 ,
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"is_app_open_ad" : 1 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"ver" : "1.0.14" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-2301631347146208" ,
"ext" : {
"country" : "AE"
}
},
"content" : {
"url" : "https://www.google.com" ,
"language" : "en"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "102.78.236.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "MAR" ,
"region" : "MA-11" ,
"city" : "Marrakech" ,
"zip" : "40000" ,
"type" : 2 ,
"utcoffset" : 0 ,
"accuracy" : 3263 ,
"ext" : {
"geo_criteria_id" : 9197207
}
},
"carrier" : "72009" ,
"language" : "fr" ,
"make" : "Apple" ,
"model" : "iPhone14,3" ,
"os" : "iOS" ,
"osv" : "26.6.1" ,
"connectiontype" : 5 ,
"devicetype" : 4 ,
"ifa" : "df23895d-6a56-41e9-bb8c-f19163328c19" ,
"hwv" : "iPhone14,3" ,
"w" : 428 ,
"h" : 926 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"26" ,
"6"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"atts" : 3 ,
"audioout" : 3 ,
"ifa_type" : "idfa" ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"id" : "kxz2KP24nII51245YrV2AFtsQ72" ,
"ext" : {
"session" : {
"duration" : 137 ,
"depth" : 17 ,
"requestssinceappopen" : 17 ,
"priorclicks" : 0
},
"idage" : 12960000
}
},
"at" : 1 ,
"tmax" : 2000 ,
"cur" : [
"USD"
],
"bcat" : [
"32" ,
"33"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-i-v11.13.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zc08FK-h142dS00t819143TE021SS56r617vV09n09J3OaP354s93vIU300bzJ7e5cG2" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
應用程式插頁式影片廣告
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
video {
mimes : "video/mp4"
linearity : LINEAR
maxduration : 45
w : 427
h : 875
startdelay : 0
playbackmethod : CLICK_TO_PLAY
pos : AD_POSITION_FULLSCREEN
companionad {
w : 427
h : 875
mimes : "text/css"
mimes : "image/png"
format {
w : 427
h : 875
}
vcm : true
}
api : MRAID_1
api : MRAID_2
companiontype : STATIC
companiontype : HTML
protocols : VAST_2_0
protocols : VAST_3_0
skip : false
placement : FLOATING_PLACEMENT
playbackend : COMPLETION_OR_USER
maxseq : 2
poddur : 40
plcmt : PLCMT_INTERSTITIAL
[ com . google . doubleclick . video ] {
inferredplcmt : PLCMT_INTERSTITIAL
}
}
displaymanager : "NextGenGoogleMobileAds-Android"
displaymanagerver : "1.1.1"
instl : true
tagid : "9072476229"
bidfloor : 0.01
bidfloorcur : "USD"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.14426924288272858
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.42162033915519714
vendor : "EXCHANGE"
}
rwdd : true
[ com . google . doubleclick . imp ] {
billing_id : 61170857882
publisher_settings_list_id : 3465533324312870629
publisher_settings_list_id : 7019420503499415173
allowed_vendor_type : 0
allowed_vendor_type : 237
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
jsver : "test-sdk_123456789"
highengagement : true
}
}
app {
name : "Test App"
ver : "272"
bundle : "com.google.testapp"
publisher {
id : "pub-3006071972218254"
[ com . google . doubleclick . publisher ] {
country : "BD"
}
}
content {
url : "https://www.google.com"
userrating : "3.7"
language : "en"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "IND"
type : IP
utcoffset : 330
accuracy : 7811
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9197649
}
}
ipv6 : "2409:408c:2892::"
carrier : "70227"
language : "en"
make : "Vivo"
model : "V2125"
os : "android"
osv : "12"
connectiontype : CELL_4G
devicetype : HIGHEND_PHONE
ifa : "a64564f8-330a-4152-9715-86c6873569bf"
w : 427
h : 875
pxratio : 1.688
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "12"
}
mobile : true
bitness : "64"
model : "V2125"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : true
chargelevel : 0.4099999964237213
charging : false
diskspace : 4000
audioout : AUDIO_SPEAKER
ifa_type : "aaid"
scrollposx : 0
scrollposy : 0
}
}
user {
id : "743cB1sI4151248Ecs68w1qj5o8"
[ com . google . doubleclick . user ] {
session {
duration : 780
depth : 133
requestssinceappopen : 133
priorclicks : 0
}
idage : 38880000
}
}
at : FIRST_PRICE
tmax : 300
cur : "USD"
bcat : "3"
bcat : "4"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-a-v1.1.1"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"video" : {
"mimes" : [
"video/mp4"
],
"linearity" : 1 ,
"maxduration" : 45 ,
"w" : 427 ,
"h" : 875 ,
"startdelay" : 0 ,
"playbackmethod" : [
3
],
"pos" : 7 ,
"companionad" : [
{
"w" : 427 ,
"h" : 875 ,
"mimes" : [
"text/css" ,
"image/png"
],
"format" : [
{
"w" : 427 ,
"h" : 875
}
],
"vcm" : 1
}
],
"api" : [
3 ,
5
],
"companiontype" : [
1 ,
2
],
"protocols" : [
2 ,
3
],
"skip" : 0 ,
"placement" : 5 ,
"playbackend" : 1 ,
"maxseq" : 2 ,
"poddur" : 40 ,
"plcmt" : 3 ,
"ext" : {
"inferredplcmt" : 3
}
},
"displaymanager" : "NextGenGoogleMobileAds-Android" ,
"displaymanagerver" : "1.1.1" ,
"instl" : 1 ,
"tagid" : "9072476229" ,
"bidfloor" : 0.01 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.14426924288272858 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.42162033915519714 ,
"vendor" : "EXCHANGE"
}
],
"rwdd" : 1 ,
"ext" : {
"billing_id" : [
"61170857882"
],
"publisher_settings_list_id" : [
"3465533324312870629" ,
"7019420503499415173"
],
"allowed_vendor_type" : [
0 ,
237
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"jsver" : "test-sdk_123456789" ,
"highengagement" : 1
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "272" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-3006071972218254" ,
"ext" : {
"country" : "BD"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "3.7" ,
"language" : "en"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "IND" ,
"type" : 2 ,
"utcoffset" : 330 ,
"accuracy" : 7811 ,
"ext" : {
"geo_criteria_id" : 9197649
}
},
"ipv6" : "2409:408c:2892::" ,
"carrier" : "70227" ,
"language" : "en" ,
"make" : "Vivo" ,
"model" : "V2125" ,
"os" : "android" ,
"osv" : "12" ,
"connectiontype" : 6 ,
"devicetype" : 4 ,
"ifa" : "a64564f8-330a-4152-9715-86c6873569bf" ,
"w" : 427 ,
"h" : 875 ,
"pxratio" : 1.688 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"12"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "V2125" ,
"source" : 3
},
"ext" : {
"metereddata" : 1 ,
"chargelevel" : 0.41 ,
"charging" : 0 ,
"diskspace" : 4000 ,
"audioout" : 1 ,
"ifa_type" : "aaid" ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"id" : "743cB1sI4151248Ecs68w1qj5o8" ,
"ext" : {
"session" : {
"duration" : 780 ,
"depth" : 133 ,
"requestssinceappopen" : 133 ,
"priorclicks" : 0
},
"idage" : 38880000
}
},
"at" : 1 ,
"tmax" : 300 ,
"cur" : [
"USD"
],
"bcat" : [
"3" ,
"4"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-a-v1.1.1"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
應用程式原生
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
displaymanager : "GoogleMobileAds-iOS"
displaymanagerver : "13.9.0"
tagid : "4721765816"
bidfloor : 0.69
bidfloorcur : "USD"
secure : true
native {
ver : "1.2"
api : MRAID_1
api : MRAID_2
request_native {
ver : "1.2"
assets {
id : 1
required : true
title {
len : 50
}
}
assets {
id : 2
required : true
data {
type : DESC
len : 150
}
}
assets {
id : 3
data {
type : CTATEXT
len : 15
}
}
assets {
id : 4
required : true
img {
type : MAIN
wmin : 1200
hmin : 627
}
}
assets {
id : 5
required : true
img {
type : ICON
wmin : 100
hmin : 100
}
}
assets {
id : 6
data {
type : RATING
len : 5
}
}
assets {
id : 7
data {
type : PRICE
len : 15
}
}
eventtrackers {
event : IMPRESSION
methods : IMG
}
eventtrackers {
event : OMID
methods : JS
}
privacy : true
}
}
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0010945964604616165
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.014000949449837208
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 94483515670
publisher_settings_list_id : 3092446200668875547
publisher_settings_list_id : 5367266321274470711
allowed_vendor_type : 0
allowed_vendor_type : 331
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
skadn {
sourceapp : "com.google.testapp"
skadnetids : "7dRyc70v"
versions : "2.0"
versions : "2.1"
fidelities : STOREKIT_RENDERED_ADS
fidelities : VIEW_THROUGH_ADS
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "15.3.6"
bundle : "com.google.testapp"
publisher {
id : "pub-3006071972218254"
[ com . google . doubleclick . publisher ] {
country : "JP"
}
}
content {
url : "https://www.google.com"
language : "ja"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "JPN"
region : "JP-17"
city : "Komatsu"
type : IP
utcoffset : 540
accuracy : 10872
[ com . google . doubleclick . geo ] {
geo_criteria_id : 1009371
}
}
ipv6 : "2400:2653:f263::"
language : "ja"
make : "Apple"
model : "iPhone18,3"
os : "iOS"
osv : "26.5.2"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
hwv : "iPhone18,3"
w : 402
h : 874
pxratio : 3.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "605"
version : "1"
}
platform {
brand : "iPhone"
version : "26"
version : "5"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
atts : 2
audioout : AUDIO_SPEAKER
ifv : "792c0b4e-9c08-4a29-8ac4-c0134dd4df27"
scrollposx : 0
scrollposy : 0
}
}
user {
[ com . google . doubleclick . user ] {
session {
duration : 7
depth : 36
requestssinceappopen : 36
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 300
cur : "USD"
bcat : "32"
bcat : "33"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google"
omidpv : "afma-sdk-i-v13.9.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"displaymanager" : "GoogleMobileAds-iOS" ,
"displaymanagerver" : "13.9.0" ,
"tagid" : "4721765816" ,
"bidfloor" : 0.69 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"native" : {
"ver" : "1.2" ,
"api" : [
3 ,
5
],
"request" : "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":50}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":150}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":5,\"required\":1,\"img\":{\"type\":1,\"wmin\":100,\"hmin\":100}},{\"id\":6,\"data\":{\"type\":3,\"len\":5}},{\"id\":7,\"data\":{\"type\":6,\"len\":15}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]},{\"event\":555,\"methods\":[2]}],\"privacy\":1}"
},
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0010945964604616165 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.014000949449837208 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"94483515670"
],
"publisher_settings_list_id" : [
"3092446200668875547" ,
"5367266321274470711"
],
"allowed_vendor_type" : [
0 ,
331
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"skadn" : {
"sourceapp" : "com.google.testapp" ,
"skadnetids" : [
"7dRyc70v"
],
"versions" : [
"2.0" ,
"2.1"
],
"fidelities" : [
1 ,
0
]
},
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "15.3.6" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-3006071972218254" ,
"ext" : {
"country" : "JP"
}
},
"content" : {
"url" : "https://www.google.com" ,
"language" : "ja"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "JPN" ,
"region" : "JP-17" ,
"city" : "Komatsu" ,
"type" : 2 ,
"utcoffset" : 540 ,
"accuracy" : 10872 ,
"ext" : {
"geo_criteria_id" : 1009371
}
},
"ipv6" : "2400:2653:f263::" ,
"language" : "ja" ,
"make" : "Apple" ,
"model" : "iPhone18,3" ,
"os" : "iOS" ,
"osv" : "26.5.2" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"hwv" : "iPhone18,3" ,
"w" : 402 ,
"h" : 874 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"26" ,
"5"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"atts" : 2 ,
"audioout" : 1 ,
"ifv" : "792c0b4e-9c08-4a29-8ac4-c0134dd4df27" ,
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"ext" : {
"session" : {
"duration" : 7 ,
"depth" : 36 ,
"requestssinceappopen" : 36 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 300 ,
"cur" : [
"USD"
],
"bcat" : [
"32" ,
"33"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-i-v13.9.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 4 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
網路影片
OpenRTB Protobuf
顯示範例
序列化要求
id : "xljbvz426ttL3x4FOE2GHI"
imp {
id : "1"
video {
mimes : "video/mp4"
linearity : LINEAR
w : 300
h : 300
battr : VIDEO_IN_BANNER_USER_INITIATED
battr : VIDEO_IN_BANNER_AUTO_PLAY
playbackmethod : ENTER_SOUND_OFF
pos : BELOW_THE_FOLD
api : OMID_1
protocols : VAST_2_0
protocols : VAST_3_0
skip : true
skipafter : 5
placement : IN_ARTICLE_PLACEMENT
playbackend : LEAVING_OR_USER
plcmt : PLCMT_NO_CONTENT_STANDALONE
[ com . google . doubleclick . video ] {
inferredplcmt : PLCMT_NO_CONTENT_STANDALONE
}
}
displaymanager : "GOOGLE"
tagid : "1052440414"
bidfloor : 0.02
bidfloorcur : "USD"
secure : true
exp : 3600
metric {
type : "click_through_rate"
value : 0.0008394007454626262
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.16
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 61339160186
billing_id : 19485139317
publisher_settings_list_id : 4926395220064122332
publisher_settings_list_id : 2170079197629701072
allowed_vendor_type : 0
ampad : AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
buyer_generated_request_data {
data : "Test Data"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
allowed_restricted_category : 33
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
gpid : "/7481295/example.com/homepage/image_top"
adlocx : 16
adlocy : 3844
iframeorigin : IFRAME_ORIGIN_CROSS_DOMAIN
}
}
site {
cat : "IAB1-4"
cat : "IAB11"
pagecat : "IAB1-4"
page : "https://www.google.com"
publisher {
id : "pub-1111111111111111"
[ com . google . doubleclick . publisher ] {
country : "US"
}
}
content {
language : "en"
}
mobile : true
cattax : IAB_CONTENT_1_0
[ com . google . doubleclick . site ] {
amp : DIALECT_HTML
page_visibility : VISIBILITY_STATE_VISIBLE
}
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "USA"
region : "TX"
metro : "641"
zip : "78213"
type : IP
utcoffset : - 300
accuracy : 2497
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9028054
}
}
ipv6 : "2600:1700:8e70:a606:997b:b74b:e386:d606"
language : "en"
make : "Samsung"
model : "sm-s901u"
os : "android"
osv : "16"
devicetype : HIGHEND_PHONE
w : 360
h : 780
pxratio : 3.0
sua {
browsers {
brand : "Not:A-Brand"
version : "8"
version : "0"
}
browsers {
brand : "Chromium"
version : "156"
version : "0"
}
platform {
brand : "Android"
version : "16"
version : "0"
}
mobile : true
model : "SM-S901U"
source : CLIENT_HINTS_HIGH_ENTROPY
}
[ com . google . doubleclick . device ] {
chargelevel : 0.4000000059604645
charging : false
memory : 8192
scrollposx : 0
scrollposy : 856
}
}
user {
buyeruid : "868R674mhtSh1Q0820Se707969bigg7W"
customdata : "262F37r207u0H1dgJM3ok893UU0Bv87a50n6N2mNm0353wRr"
[ com . google . doubleclick . user ] {
eids {
source : "OMITTED_SOURCE"
uids {
id : "OMITTED_ID"
}
}
}
}
at : FIRST_PRICE
tmax : 500
cur : "USD"
bcat : "4"
bcat : "5"
regs {
gpp : "OMITTED"
gpp_sid : USPV1
gpp_sid : USNAT
}
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
bid_feedback {
request_id : "l72n4cr8T4yhC7i3gkl6O2"
creative_status_code : 80
event_notification_token {
payload : "token"
}
buyer_creative_id : "test_creative_id_578959"
minimum_bid_to_win : 3.58
}
google_query_id : "ANy-z88L87-64Z116olgj51Z973322723c7h971w813985fd8o3iw2N13ZVX453i2900b23H"
fcap_scope : FREQUENCY_CAPPING_SCOPE_NONE
privacy_treatments {
ip : IP_FULL
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "xljbvz426ttL3x4FOE2GHI" ,
"imp" : [
{
"id" : "1" ,
"video" : {
"mimes" : [
"video/mp4"
],
"linearity" : 1 ,
"w" : 300 ,
"h" : 300 ,
"battr" : [
7 ,
6
],
"playbackmethod" : [
6
],
"pos" : 3 ,
"api" : [
7
],
"protocols" : [
2 ,
3
],
"skip" : 1 ,
"skipafter" : 5 ,
"placement" : 3 ,
"playbackend" : 2 ,
"plcmt" : 4 ,
"ext" : {
"inferredplcmt" : 4
}
},
"displaymanager" : "GOOGLE" ,
"tagid" : "1052440414" ,
"bidfloor" : 0.02 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 3600 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0008394007454626262 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.16 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"61339160186" ,
"19485139317"
],
"publisher_settings_list_id" : [
"4926395220064122332" ,
"2170079197629701072"
],
"allowed_vendor_type" : [
0
],
"ampad" : 3 ,
"buyer_generated_request_data" : [
{
"data" : "Test Data"
}
],
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"allowed_restricted_category" : [
33
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"gpid" : "/7481295/example.com/homepage/image_top" ,
"adlocx" : 16 ,
"adlocy" : 3844 ,
"iframeorigin" : 2
}
}
],
"site" : {
"cat" : [
"IAB1-4" ,
"IAB11"
],
"pagecat" : [
"IAB1-4"
],
"page" : "https://www.google.com" ,
"publisher" : {
"id" : "pub-1111111111111111" ,
"ext" : {
"country" : "US"
}
},
"content" : {
"language" : "en"
},
"mobile" : 1 ,
"cattax" : 1 ,
"ext" : {
"amp" : 0 ,
"page_visibility" : 1
}
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "USA" ,
"region" : "TX" ,
"metro" : "641" ,
"zip" : "78213" ,
"type" : 2 ,
"utcoffset" : - 300 ,
"accuracy" : 2497 ,
"ext" : {
"geo_criteria_id" : 9028054
}
},
"ipv6" : "2600:1700:8e70:a606:997b:b74b:e386:d606" ,
"language" : "en" ,
"make" : "Samsung" ,
"model" : "sm-s901u" ,
"os" : "android" ,
"osv" : "16" ,
"devicetype" : 4 ,
"w" : 360 ,
"h" : 780 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Not:A-Brand" ,
"version" : [
"8" ,
"0"
]
},
{
"brand" : "Chromium" ,
"version" : [
"156" ,
"0"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"16" ,
"0"
]
},
"mobile" : 1 ,
"model" : "SM-S901U" ,
"source" : 2
},
"ext" : {
"chargelevel" : 0.4 ,
"charging" : 0 ,
"memory" : 8192 ,
"scrollposx" : 0 ,
"scrollposy" : 856
}
},
"user" : {
"buyeruid" : "868R674mhtSh1Q0820Se707969bigg7W" ,
"customdata" : "262F37r207u0H1dgJM3ok893UU0Bv87a50n6N2mNm0353wRr" ,
"ext" : {
"eids" : [
{
"source" : "OMITTED_SOURCE" ,
"uids" : [
{
"id" : "OMITTED_ID"
}
]
}
]
}
},
"at" : 1 ,
"tmax" : 500 ,
"cur" : [
"USD"
],
"bcat" : [
"4" ,
"5"
],
"regs" : {
"gpp" : "OMITTED" ,
"gpp_sid" : [
6 ,
7
]
},
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
},
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
},
"cattax" : 500 ,
"ext" : {
"bid_feedback" : [
{
"request_id" : "l72n4cr8T4yhC7i3gkl6O2" ,
"creative_status_code" : 80 ,
"event_notification_token" : {
"payload" : "token"
},
"buyer_creative_id" : "test_creative_id_578959" ,
"minimum_bid_to_win" : 3.58
}
],
"google_query_id" : "ANy-z88L87-64Z116olgj51Z973322723c7h971w813985fd8o3iw2N13ZVX453i2900b23H" ,
"fcap_scope" : 1 ,
"privacy_treatments" : {
"ip" : 1 ,
"allow_user_data_collection" : 1
}
}
}
廣告交易平台出價的行動版網站橫幅廣告
OpenRTB Protobuf
顯示範例
序列化要求
id : "a7gs668pOD71593174WD18"
imp {
id : "1"
banner {
w : 970
h : 90
pos : ABOVE_THE_FOLD
format {
w : 970
h : 90
}
format {
w : 950
h : 90
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 728
wmax : 970
hmin : 90
hmax : 90
}
}
}
tagid : "3889241961"
bidfloor : 0.01
bidfloorcur : "USD"
secure : true
exp : 3600
metric {
type : "click_through_rate"
value : 0.0011694123968482018
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.06
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 79775275767
publisher_settings_list_id : 8825410584249136395
publisher_settings_list_id : 4368309502124126995
allowed_vendor_type : 0
dfp_ad_unit_code : "/9908766/google/test"
ampad : AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
open_bidding {
is_open_bidding : true
}
allowed_restricted_category : 32
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
adlocx : 283
adlocy : 1109
iframeorigin : IFRAME_ORIGIN_CROSS_DOMAIN
}
}
site {
cat : "IAB1-1"
cat : "IAB12"
pagecat : "IAB11"
pagecat : "IAB12"
page : "https://www.google.com"
publisher {
id : "pub-1111111111111111"
[ com . google . doubleclick . publisher ] {
country : "BG"
}
}
content {
language : "tr"
}
cattax : IAB_CONTENT_1_0
[ com . google . doubleclick . site ] {
amp : DIALECT_HTML
page_visibility : VISIBILITY_STATE_HIDDEN
ntype : NAVIGATION_TYPE_RELOAD
}
}
device {
ua : "OMITTED"
ip : "212.174.9.0"
geo {
lat : 0.0
lon : 0.0
country : "TUR"
region : "TR-34"
city : "Istanbul"
zip : "34149"
type : IP
utcoffset : 180
accuracy : 1973
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9073387
}
}
language : "tr"
os : "Windows"
devicetype : PERSONAL_COMPUTER
w : 1536
h : 864
pxratio : 1.25
sua {
browsers {
brand : "Google Chrome"
version : "155"
version : "0"
}
browsers {
brand : "Chromium"
version : "155"
version : "0"
}
platform {
brand : "Windows"
version : "10"
version : "0"
}
mobile : false
architecture : "x86"
bitness : "64"
source : CLIENT_HINTS_HIGH_ENTROPY
}
[ com . google . doubleclick . device ] {
memory : 8192
scrollposx : 0
scrollposy : 500
}
}
user {
id : "0i00L70sOg40C0338Oy67QTn970"
buyeruid : "7419Fp33ZjKqfO762L6A1260sE283I22"
customdata : "dk9A1326Z0gHs1816L4p6b8tb46zS520b3T34Q1j1uKF26k5"
[ com . google . doubleclick . user ] {
idage : 7776000
}
}
at : FIRST_PRICE
tmax : 350
cur : "USD"
bcat : "IAB7-39"
bcat : "IAB7-44"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
}
cattax : IAB_CONTENT_1_0
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537"
fcap_scope : FREQUENCY_CAPPING_SCOPE_BROWSER
}
OpenRTB JSON
顯示範例
{
"id" : "a7gs668pOD71593174WD18" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 970 ,
"h" : 90 ,
"pos" : 1 ,
"format" : [
{
"w" : 970 ,
"h" : 90
},
{
"w" : 950 ,
"h" : 90
}
],
"ext" : {
"flexslot" : {
"wmin" : 728 ,
"wmax" : 970 ,
"hmin" : 90 ,
"hmax" : 90
}
}
},
"tagid" : "3889241961" ,
"bidfloor" : 0.01 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 3600 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0011694123968482018 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.06 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"79775275767"
],
"publisher_settings_list_id" : [
"8825410584249136395" ,
"4368309502124126995"
],
"allowed_vendor_type" : [
0
],
"dfp_ad_unit_code" : "/9908766/google/test" ,
"ampad" : 3 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"open_bidding" : {
"is_open_bidding" : 1
},
"allowed_restricted_category" : [
32
],
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"adlocx" : 283 ,
"adlocy" : 1109 ,
"iframeorigin" : 2
}
}
],
"site" : {
"cat" : [
"IAB1-1" ,
"IAB12"
],
"pagecat" : [
"IAB11" ,
"IAB12"
],
"page" : "https://www.google.com" ,
"publisher" : {
"id" : "pub-1111111111111111" ,
"ext" : {
"country" : "BG"
}
},
"content" : {
"language" : "tr"
},
"cattax" : 1 ,
"ext" : {
"amp" : 0 ,
"page_visibility" : 2 ,
"ntype" : 2
}
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "212.174.9.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "TUR" ,
"region" : "TR-34" ,
"city" : "Istanbul" ,
"zip" : "34149" ,
"type" : 2 ,
"utcoffset" : 180 ,
"accuracy" : 1973 ,
"ext" : {
"geo_criteria_id" : 9073387
}
},
"language" : "tr" ,
"os" : "Windows" ,
"devicetype" : 2 ,
"w" : 1536 ,
"h" : 864 ,
"pxratio" : 1.25 ,
"sua" : {
"browsers" : [
{
"brand" : "Google Chrome" ,
"version" : [
"155" ,
"0"
]
},
{
"brand" : "Chromium" ,
"version" : [
"155" ,
"0"
]
}
],
"platform" : {
"brand" : "Windows" ,
"version" : [
"10" ,
"0"
]
},
"mobile" : 0 ,
"architecture" : "x86" ,
"bitness" : "64" ,
"source" : 2
},
"ext" : {
"memory" : 8192 ,
"scrollposx" : 0 ,
"scrollposy" : 500
}
},
"user" : {
"id" : "0i00L70sOg40C0338Oy67QTn970" ,
"buyeruid" : "7419Fp33ZjKqfO762L6A1260sE283I22" ,
"customdata" : "dk9A1326Z0gHs1816L4p6b8tb46zS520b3T34Q1j1uKF26k5" ,
"ext" : {
"idage" : 7776000
}
},
"at" : 1 ,
"tmax" : 350 ,
"cur" : [
"USD"
],
"bcat" : [
"IAB7-39" ,
"IAB7-44"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
},
"cattax" : 1 ,
"ext" : {
"google_query_id" : "ANy-zL23dM-K888C926iz54pL02I4wa4sXX04N9233701g8h787afvX78G815DcjFi573537" ,
"fcap_scope" : 2
}
}
OpenRTB Protobuf
顯示範例
序列化要求
id : "S2qA4hJS1n221Vw73up012"
imp {
id : "1"
video {
mimes : "video/mp4"
linearity : LINEAR
w : 300
h : 600
battr : VIDEO_IN_BANNER_AUTO_PLAY
battr : VIDEO_IN_BANNER_USER_INITIATED
playbackmethod : ENTER_SOUND_OFF
pos : ABOVE_THE_FOLD
api : OMID_1
protocols : VAST_2_0
protocols : VAST_3_0
skip : true
skipafter : 5
placement : IN_ARTICLE_PLACEMENT
playbackend : LEAVING_OR_USER
plcmt : PLCMT_NO_CONTENT_STANDALONE
[ com . google . doubleclick . video ] {
inferredplcmt : PLCMT_NO_CONTENT_STANDALONE
embeddedoffsite : true
}
}
displaymanager : "GOOGLE"
tagid : "7858457472"
bidfloor : 1.0
bidfloorcur : "JPY"
secure : true
native {
ver : "1.2"
battr : VIDEO_IN_BANNER_USER_INITIATED
battr : VIDEO_IN_BANNER_AUTO_PLAY
request_native {
ver : "1.2"
assets {
id : 1
required : true
title {
len : 50
}
}
assets {
id : 2
data {
type : CTATEXT
len : 15
}
}
assets {
id : 3
required : true
data {
type : SPONSORED
len : 25
}
}
assets {
id : 4
required : true
img {
type : MAIN
wmin : 1200
hmin : 627
}
}
assets {
id : 5
img {
type : ICON
}
}
eventtrackers {
event : IMPRESSION
methods : IMG
}
privacy : true
[ com . google . doubleclick . native_ext ] {
style_height : 250
style_width : 300
pos : ABOVE_THE_FOLD
}
}
}
exp : 3600
metric {
type : "click_through_rate"
value : 0.0001810694084269926
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.89
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 89729918050
billing_id : 53896910998
publisher_settings_list_id : 6828753821632622411
publisher_settings_list_id : 9406265749274240546
allowed_vendor_type : 0
ampad : AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
buyer_generated_request_data {
data : "Test Data"
}
buyer_generated_request_data {
data : "Test Data"
}
allowed_restricted_category : 32
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
adlocx : 45
adlocy : 352
iframeorigin : IFRAME_ORIGIN_SAME_DOMAIN
}
}
site {
pagecat : "IAB5"
pagecat : "IAB5-1"
page : "https://www.google.com"
publisher {
id : "pub-1111111111111111"
[ com . google . doubleclick . publisher ] {
country : "JP"
}
}
content {
language : "ja"
}
mobile : true
cattax : IAB_CONTENT_1_0
[ com . google . doubleclick . site ] {
amp : DIALECT_HTML
page_visibility : VISIBILITY_STATE_VISIBLE
}
}
device {
ua : "OMITTED"
ip : "122.152.77.121"
geo {
lat : 0.0
lon : 0.0
country : "JPN"
region : "JP-44"
city : "Oita"
type : IP
utcoffset : 540
accuracy : 12627
[ com . google . doubleclick . geo ] {
geo_criteria_id : 1009769
}
}
language : "ja"
make : "Apple"
model : "iphone"
os : "iOS"
osv : "18.7"
devicetype : HIGHEND_PHONE
w : 390
h : 844
pxratio : 3.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "605"
version : "1"
}
platform {
brand : "iPhone"
version : "18"
version : "7"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
scrollposx : 0
scrollposy : 0
}
}
user {
eids {
source : "doubleclick.net"
uids {
id : "OMITTED_1P_WEB_ID"
[ com . google . doubleclick . uids ] {
stype : "sco"
}
}
}
[ com . google . doubleclick . user ] {
eids {
source : "OMITTED_SOURCE"
uids {
id : "OMITTED_ID"
}
}
eids {
source : "OMITTED_SOURCE"
uids {
id : "OMITTED_ID"
}
}
}
}
at : FIRST_PRICE
tmax : 350
cur : "JPY"
cur : "USD"
bcat : "3"
bcat : "4"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-z07rzd-08kr3H9d1ctxT230uFK1H736A292Mr9P723t3R3v3tm00N97hW5qy405ww4T8"
fcap_scope : FREQUENCY_CAPPING_SCOPE_NONE
privacy_treatments {
ip : IP_FULL
allow_user_data_collection : true
}
}
OpenRTB JSON
顯示範例
{
"id" : "S2qA4hJS1n221Vw73up012" ,
"imp" : [
{
"id" : "1" ,
"video" : {
"mimes" : [
"video/mp4"
],
"linearity" : 1 ,
"w" : 300 ,
"h" : 600 ,
"battr" : [
6 ,
7
],
"playbackmethod" : [
6
],
"pos" : 1 ,
"api" : [
7
],
"protocols" : [
2 ,
3
],
"skip" : 1 ,
"skipafter" : 5 ,
"placement" : 3 ,
"playbackend" : 2 ,
"plcmt" : 4 ,
"ext" : {
"inferredplcmt" : 4 ,
"embeddedoffsite" : 1
}
},
"displaymanager" : "GOOGLE" ,
"tagid" : "7858457472" ,
"bidfloor" : 1.0 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"native" : {
"ver" : "1.2" ,
"battr" : [
7 ,
6
],
"request" : "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":50}},{\"id\":2,\"data\":{\"type\":12,\"len\":15}},{\"id\":3,\"required\":1,\"data\":{\"type\":1,\"len\":25}},{\"id\":4,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":5,\"img\":{\"type\":1}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]}],\"privacy\":1,\"ext\":{\"style_height\":250,\"style_width\":300,\"pos\":1}}"
},
"exp" : 3600 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0001810694084269926 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.89 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"89729918050" ,
"53896910998"
],
"publisher_settings_list_id" : [
"6828753821632622411" ,
"9406265749274240546"
],
"allowed_vendor_type" : [
0
],
"ampad" : 3 ,
"buyer_generated_request_data" : [
{
"data" : "Test Data"
},
{
"data" : "Test Data"
}
],
"allowed_restricted_category" : [
32
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"adlocx" : 45 ,
"adlocy" : 352 ,
"iframeorigin" : 1
}
}
],
"site" : {
"pagecat" : [
"IAB5" ,
"IAB5-1"
],
"page" : "https://www.google.com" ,
"publisher" : {
"id" : "pub-1111111111111111" ,
"ext" : {
"country" : "JP"
}
},
"content" : {
"language" : "ja"
},
"mobile" : 1 ,
"cattax" : 1 ,
"ext" : {
"amp" : 0 ,
"page_visibility" : 1
}
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "122.152.77.121" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "JPN" ,
"region" : "JP-44" ,
"city" : "Oita" ,
"type" : 2 ,
"utcoffset" : 540 ,
"accuracy" : 12627 ,
"ext" : {
"geo_criteria_id" : 1009769
}
},
"language" : "ja" ,
"make" : "Apple" ,
"model" : "iphone" ,
"os" : "iOS" ,
"osv" : "18.7" ,
"devicetype" : 4 ,
"w" : 390 ,
"h" : 844 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"18" ,
"7"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"scrollposx" : 0 ,
"scrollposy" : 0
}
},
"user" : {
"eids" : [
{
"source" : "doubleclick.net" ,
"uids" : [
{
"id" : "OMITTED_1P_WEB_ID" ,
"ext" : {
"stype" : "sco"
}
}
]
}
],
"ext" : {
"eids" : [
{
"source" : "OMITTED_SOURCE" ,
"uids" : [
{
"id" : "OMITTED_ID"
}
]
},
{
"source" : "OMITTED_SOURCE" ,
"uids" : [
{
"id" : "OMITTED_ID"
}
]
}
]
}
},
"at" : 1 ,
"tmax" : 350 ,
"cur" : [
"JPY" ,
"USD"
],
"bcat" : [
"3" ,
"4"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
},
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-z07rzd-08kr3H9d1ctxT230uFK1H736A292Mr9P723t3R3v3tm00N97hW5qy405ww4T8" ,
"fcap_scope" : 1 ,
"privacy_treatments" : {
"ip" : 1 ,
"allow_user_data_collection" : 1
}
}
}