Gerçek zamanlı teklif etkileşimi, Google uygulamanıza bir teklif isteği gönderdiğinde başlar. Bu kılavuzda, teklif isteğini işlemek için uygulamanızı nasıl kodlayacağınız açıklanmaktadır.
İsteği ayrıştırma
Google, bir HTTP POST isteğinin yükü olarak OpenRTB JSON veya Protobuf biçimlerinde serileştirilmiş bir teklif isteği gönderir. Alınan biçim, uç noktanızın yapılandırmasına bağlıdır. Örnek için Örnek teklif isteği bölümüne bakın.
Serileştirilmiş BidRequest
'ü almak için bu isteği ayrıştırmanız gerekir. Protobuf biçimini kullanıyorsanız Referans verileri sayfasından openrtb.proto
ve openrtb-adx.proto
dosyalarını indirip BidRequest
iletisini ayrıştırmak için kullanılabilecek bir kitaplık oluşturmak üzere bu dosyaları kullanmanız gerekir. Örneğin, aşağıdaki C++ kodu, bir dizedeki POST yükü verilen bir isteği ayrıştırır:
string post_payload = /* the payload from the POST request */ ;
BidRequest bid_request ;
if ( bid_request . ParseFromString ( post_payload )) {
// Process the request .
}
BidRequest
'yi aldıktan sonra, ihtiyacınız olan alanları ayıklayıp yorumlayarak bir nesne olarak kullanabilirsiniz. Örneğin, C++'ta bir OpenRTB "BidRequest"indeki fırsatlar arasında iterasyon yapmak aşağıdaki gibi görünebilir:
for ( const BidRequest :: Imp :: Pmp :: Deal & deal : pmp . deals ()) {
DoSomething ( deal . id (), deal . wseat ());
}
Faturalandırma kimlikleri
Bir yayıncının reklam envanteri,
ön hedefleme yapılandırmalarınızdan biri veya daha fazlası tarafından hedeflendiğinde teklif isteği alırsınız. BidRequest.imp.ext.billing_id
, uygun tüm alıcıların faturalandırma kimlikleriyle ve alakalı ön hedefleme yapılandırmalarıyla doldurulur. Ayrıca, anlaşma envanteri için BidRequest.imp.pmp.deal.ext.billing_id
kullanarak ilgili alıcıyla ilişkili faturalandırma kimliklerini bulabilirsiniz. Teklif verirken yalnızca teklif isteğine dahil edilen alıcıların faturalandırma kimlikleri belirtilebilir.
Teklif isteğine birden fazla faturalandırma kimliği dahil edilmişse teklifinizi ilişkilendirmek istediğiniz alıcının faturalandırma kimliğini BidResponse.seatbid.bid.ext.billing_id
alanıyla belirtmeniz gerekir.
Sözlük dosyaları
Teklif isteği, sözlük dosyalarında tanımlanan ve referans verileri sayfasında bulunan tanımlayıcıları kullanır.
Teklif veren URL makroları
İsteğe bağlı olarak, BidRequest
içindeki bazı bilgiler makrolar kullanılarak teklif verme uç noktası URL'lerine eklenebilir. Bir uç nokta URL'sini bir veya daha fazla makroyla yapılandırırsanız bu bilgiler teklif isteğinde mevcutsa makrolar genişletilir. Bu, örneğin BidRequest
içindeki bilgilere göre yük dengeleme yapmak istiyorsanız yararlı olabilir.
Yeni makrolar için destek istemek üzere hesap yöneticinizle iletişime geçin.
Makro Açıklama
%%GOOGLE_USER_ID%%
BidRequest.user.id
bölümünde bulunan Google kullanıcı kimliğiyle değiştirilir. Örneğin, teklif veren URL'si http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%%
, istek sırasında http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl
gibi bir URL ile değiştirilir.
Google kullanıcı kimliği bilinmiyorsa boş dize kullanılır ve
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
Teklif isteğinin mobil cihazdan geldiğini belirtmek için 1
ile değiştirilir. Aksi takdirde 0
ile değiştirilir. Bu, BidRequest.device.devicetype
değerine dayanır. Mobil cihazlar HIGHEND_PHONE
(4
) veya Tablet
(5
) ile gösterilir.
%%HAS_VIDEO%%
Teklif isteğinin video envanteri içerdiğini belirtmek için 1
ile değiştirilir. Aksi takdirde 0
ile değiştirilir. Bu, BidRequest.imp.video
değerinin teklif isteğinde doldurulup doldurulmadığına bağlıdır.
%%HOSTED_MATCH_DATA%%
BidRequest.user.buyeruid
değerine göre bir değerle değiştirilir.
%%MOBILE_IS_APP%%
Teklif isteğinin mobil uygulama envanteri için olduğunu belirtmek üzere 1
ile değiştirilir. Aksi takdirde 0
ile değiştirilir. Bu, BidRequest.app
değerinin doldurulup doldurulmadığına bağlıdır.
İşlem URL'sinden mobil uygulama kimliğini bulma
Mobil uygulama işlemleri aşağıdaki gibi görünen URL'leri raporlar:
mbappgewtimrzgyytanjyg4888888 .com
Dizenin kalın yazılmış (gewtimrzgyytanjyg4888888
) kısmının kodunu çözmek için 32'lik taban kod çözücü kullanın.
Online bir kod çözücü kullanabilirsiniz ancak harfleri büyük harfle yazmanız ve son 8
değerlerini =
değerleriyle değiştirmeniz gerekir.
Bu değerin kodunu çözelim:
GEWTIMRZGYYTANJYG4======
sonuçlanır:
1 - 429610587
429610587
dizesi, iOS uygulaması
iFunny için uygulama kimliğidir.
Başka bir örnek verelim. Bildirilen URL:
mbappgewtgmjug4ytmmrtgm888888 .com
Bu değerin kodunu çözme:
GEWTGMJUG4YTMMRTGM======
sonuçlanır:
1 - 314716233
314716233
sonucu, iOS uygulaması
TextNow için uygulama kimliğidir.
İşlem URL'sinden mobil uygulama adını bulma
Uygulama adını alma örneğini aşağıda görebilirsiniz. Bildirilen URL şu şekildedir:
mbappMFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q888 .com
Bu değerin kodunu çözme:
MFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q===
sonuçlanır:
air.com.hypah.io.slither
Sonuç,
slither.io adlı Android uygulamasına karşılık gelir.
Open Bidding alanları
Open Bidding'e katılan exchange ve ağ teklif verenlere gönderilen teklif istekleri, standart gerçek zamanlı teklif vermeye katılan Authorized Buyers'ın isteklerine benzer. Open Bidding müşterilerine az sayıda ek alan sunulur ve mevcut alanların birkaçının alternatif kullanımları olabilir. Bu politikalar aşağıdakileri içerir:
OpenRTB
Ayrıntılar
BidRequest.imp.ext.dfp_ad_unit_code
Yayıncının Ad Manager ağ kodunu ve ardından reklam birimi hiyerarşisini eğik çizgilerle ayrılmış şekilde içerir.
Örneğin, bu şuna benzer bir biçimlendirmeyle görünür:
/1234/cruises/mars
.
BidRequest.user.data.segment
Yayıncıdan exchange teklif verene gönderilen yinelenen anahtar/değer çiftleri.
BidRequest.user.data.name
“Publisher Passed”
olarak ayarlandığında değerlerin yayıncı tarafından gönderilen anahtar/değer çiftleri olduğunu belirleyebilirsiniz.
Not: Bu alan şu anda yalnızca kapalı beta katılımcılarına gönderilmektedir.
İzin verilen tedarikçi firmaları bildirme
Araştırma, yeniden pazarlama ve reklam sunma gibi hizmetler sunan teknoloji tedarikçileri, alıcılar ile satıcılar arasındaki etkileşimde rol oynayabilir. Yalnızca Google'ın Authorized Buyers etkileşimlerine katılım için denetlediği tedarikçi firmalara izin verilir.
BidRequest
'ü anlamak ve BidResponse
'unuzu oluşturmak için teknoloji tedarikçi firmalarını bildirmeyle ilgili iki farklı seçeneği bilmeniz gerekir:
Bazı tedarikçi firmaların bildirilmesi gerekmez. Bu tedarikçi firmalar Ad Manager Onaylı Harici Tedarikçiler bölümünde listelenir.
Diğer tedarikçiler yalnızca BidRequest
içinde tanımlanmışsa katılabilir:
BidRequest
alanındaki BidRequest.imp.ext.allowed_vendor_type
alanı, satıcının hangi tedarikçilere izin verdiğini belirtir. allowed_vendor_type
içinde gönderilecek tedarikçi firmalar,
vendors.txt
sözlük dosyasında listelenir.
Örnek teklif isteği
Aşağıdaki örnekler, Protobuf ve JSON isteklerinin insan tarafından okunabilen örneklerini temsil etmektedir.
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "nz1Q895H43SP4ImxSmQa6b"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
api : MRAID_1
api : MRAID_2
wmax : 339
hmax : 53
wmin : 227
hmin : 40
format {
w : 320
h : 50
}
format {
w : 300
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 227
wmax : 339
hmin : 40
hmax : 53
}
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "23.4.0"
tagid : "1493802015"
bidfloor : 73.7217929849032
bidfloorcur : "JPY"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0008632762474007905
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 1.0
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 86548870602
billing_id : 64050817605
publisher_settings_list_id : 1919771331799042254
publisher_settings_list_id : 8607682056454820141
allowed_vendor_type : 0
allowed_vendor_type : 9723
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
allowed_restricted_category : 33
allowed_restricted_category : 32
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "1.2.15"
bundle : "com.google.testapp"
publisher {
id : "pub-2021944733829074"
[ com . google . doubleclick . publisher ] {
country : "SG"
}
}
content {
url : "https://www.google.com"
userrating : "4.9"
livestream : false
language : "sv"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
ip : "192.168.1.0"
geo {
lat : 0.0
lon : 0.0
country : "SWE"
region : "SE-O"
city : "Stenungsund"
zip : "472 31"
type : IP
utcoffset : 120
accuracy : 2913
[ com . google . doubleclick . geo ] {
geo_criteria_id : 1012566
}
}
make : "Samsung"
model : "SM-A546B"
os : "android"
osv : "15"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
ifa : "bc49e134-7f3b-4282-928e-5ffa35e1047f"
w : 339
h : 735
pxratio : 3.188
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "15"
}
mobile : true
bitness : "64"
model : "SM-A546B"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : false
chargelevel : 0.97
charging : false
diskspace : 12800
audioout : AUDIO_SILENT
}
}
user {
id : "1E085g86030JZxtR8SO7g147Ygt"
consent : "OMITTED"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 2415
consented_providers : 723
additional_consent : "OMITTED"
}
consent : "OMITTED"
session {
duration : 1080
depth : 610
requestssinceappopen : 1871
priorclicks : 0
}
idage : 10368000
}
}
at : FIRST_PRICE
tmax : 1000
cur : "JPY"
cur : "GBP"
bcat : "5"
bcat : "31"
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-v251815999.243220000.1"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zGnD1h-SFMwW30WOg7X29LI78CmEi6lwfZBDI4RXQ8h6ufYC9L0y2Y448cm0445Obh37"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "nz1Q895H43SP4ImxSmQa6b" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"api" : [
3 ,
5
],
"wmax" : 339 ,
"hmax" : 53 ,
"wmin" : 227 ,
"hmin" : 40 ,
"format" : [
{
"w" : 320 ,
"h" : 50
},
{
"w" : 300 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 227 ,
"wmax" : 339 ,
"hmin" : 40 ,
"hmax" : 53
}
}
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "23.4.0" ,
"tagid" : "1493802015" ,
"bidfloor" : 73.7217929849032 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0008632762474007905 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 1.0 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"86548870602" ,
"64050817605"
],
"publisher_settings_list_id" : [
"1919771331799042254" ,
"8607682056454820141"
],
"allowed_vendor_type" : [
0 ,
9723
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"allowed_restricted_category" : [
33 ,
32
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "1.2.15" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-2021944733829074" ,
"ext" : {
"country" : "SG"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.9" ,
"livestream" : 0 ,
"language" : "sv"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "192.168.1.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "SWE" ,
"region" : "SE-O" ,
"city" : "Stenungsund" ,
"zip" : "472 31" ,
"type" : 2 ,
"utcoffset" : 120 ,
"accuracy" : 2913 ,
"ext" : {
"geo_criteria_id" : 1012566
}
},
"make" : "Samsung" ,
"model" : "SM-A546B" ,
"os" : "android" ,
"osv" : "15" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"ifa" : "bc49e134-7f3b-4282-928e-5ffa35e1047f" ,
"w" : 339 ,
"h" : 735 ,
"pxratio" : 3.188 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"15"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "SM-A546B" ,
"source" : 3
},
"ext" : {
"metereddata" : 0 ,
"chargelevel" : 0.97 ,
"charging" : 0 ,
"diskspace" : 12800 ,
"audioout" : 3
}
},
"user" : {
"id" : "1E085g86030JZxtR8SO7g147Ygt" ,
"consent" : "OMITTED" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"2415" ,
"723"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"session" : {
"duration" : 1080 ,
"depth" : 610 ,
"requestssinceappopen" : 1871 ,
"priorclicks" : 0
},
"idage" : 10368000
}
},
"at" : 1 ,
"tmax" : 1000 ,
"cur" : [
"JPY" ,
"GBP"
],
"bcat" : [
"5" ,
"31"
],
"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-v251815999.243220000.1"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zGnD1h-SFMwW30WOg7X29LI78CmEi6lwfZBDI4RXQ8h6ufYC9L0y2Y448cm0445Obh37" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Teklif isteğini, gerçek bir istekteki POST yükü gibi ikili bir forma dönüştürmek için aşağıdakileri (C++) yapabilirsiniz. Ancak bunun OpenRTB JSON için geçerli olmadığını unutmayın.
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
}
}
Gerçek zamanlı geri bildirim
Gerçek zamanlı geri bildirim, Authorized Buyers'ın yanı sıra Open Bidding kullanan exchange'ler ve ağlar tarafından kullanılabilir.
Anlık geri bildirim, daha önce verdiğiniz bir veya daha fazla teklifin sonucuna göre BidRequest.ext.bid_feedback
alanını doldurur ve teklifin açık artırmayı kazanıp kazanmadığı veya açık artırmayı kazanmak için gereken minimum teklif gibi ayrıntıları bulmak için kullanılabilir. Gerçek zamanlı geri bildirimi etkinleştirmek için hesap yöneticinizle iletişime geçin.
Teklif Yanıtı Geri Bildirimi'nde gönderilen varsayılan alanlara ek olarak, BidResponse.seatbid.bid.ext.event_notification_token
alanını kullanarak teklif yanıtında özel veriler de gönderebilirsiniz. event_notification_token
, yalnızca teklif verenin bildiği ve hata ayıklama işlemine yardımcı olabilecek rastgele verilerdir. Örneğin: yeni bir taktiği temsil eden yeni bir hedefleme kimliği veya teklif verme kimliği ya da yalnızca teklif verenin bildiği, reklam öğesiyle ilişkili meta veriler. Ayrıntılar için OpenRTB Uzantıları Protokolü Arabellek dosyasına bakın.
Authorized Buyers bir teklif verene teklif isteği gönderdiğinde teklif veren BidResponse
ile yanıt verir. Teklif verenin gerçek zamanlı geri bildirimi etkinse Authorized Buyers, sonraki bir teklif isteğinde yanıtla ilgili geri bildirimi BidFeedback
mesajında gönderir:
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 ;
// The minimum bid value necessary to have won the server - side component of
// the overall auction given that there was also an interest group bidding
// component to the overall auction which ran using the Protected Audience
// API . The value is expressed in CPM of the buyer account currency . The
// minimum bid to win for the overall auction , including bids from the
// server - side and the on - device interest group components , is populated in
// the minimum_bid_to_win field of the same BidFeedback object .
optional double sscminbidtowin = 14 ;
// 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 ;
// Possible types of bid response feedback objects .
enum FeedbackType {
FEEDBACK_TYPE_UNSPECIFIED = 0 ;
// Feedback for a bid that was submitted on a bid response .
BID_FEEDBACK = 1 ;
// Feedback for an interest group buyer submitted on a bid response to
// particpate in an interest group bidding component of the auction run
// using the Protected Audience API .
INTEREST_GROUP_BUYER_FEEDBACK = 2 ;
}
// The type of the BidFeedback message . Google will send separate
// BidFeedback objects for :
// a ) Each bid submitted on a bid response
// b ) Each buyer submitted on a bid response to particpate in an interest
// group bidding component of the auction run using the Protected Audience
// API .
optional FeedbackType feedbacktype = 15 ;
// Origin of an interest group buyer that was included in the bid response .
// This field is populated only for feedback where a bidder opted in an
// interest group buyer to participate in the interest group bidding
// component of the overall auction run using the Protected Audience API .
// To learn more about origins , see https : // www . rfc - editor . org / rfc / rfc6454 .
// To learn more about interest group bidding and the Protected Audience
// API , see
// https : // developers . google . com / authorized - buyers / rtb / fledge - origin - trial .
optional string buyerorigin = 16 ;
// The status code for the submitted interest group buyer . This field is
// only populated in the feedback for an interest group buyer that a bidder
// requested to enter into the interest group auction through the bid
// response . Individual creative status codes of bids submitted by the buyer
// in the on - device interest group auction are not available . See
// https : // storage . googleapis . com / adx - rtb - dictionaries / interest - group - buyer - status - codes . txt
// for a list of interest group buyer status codes .
optional int32 igbuyerstatus = 17 ;
}
Bu mesajda kontrol etmeniz gereken ilk alan bid_feedback.creative_status_code
'tür. Kodun anlamını
creative-status-codes.txt dosyasında bulabilirsiniz. Teklifi kazanırsanız fiyat geri bildirimini devre dışı bırakabileceğinizi unutmayın. Daha fazla bilgi için Kapsam dışında kalmayı seçme başlıklı makaleyi inceleyin.
Gerçek zamanlı geri bildirim, teklif isteği kimliğini ve aşağıdakilerden birini içerir:
Açık artırma sonucu
Gerçek zamanlı geri bildirim
Alıcı teklif göndermedi.
Hiç.
Alıcı, açık artırmaya ulaşmadan önce filtrelenen bir teklif gönderdi.
Reklam öğesi durum kodu (creative-status-codes.txt ).
Alıcı teklif gönderdi ancak açık artırmayı kaybetti.
Reklam öğesi durum kodu 79
(açık artırmada tekliften daha yüksek teklif verildi).
Alıcı, açık artırmayı kazanan bir teklif göndermiştir.
Açık artırma fiyatı ve reklam öğesi durum kodu 1
.
Bir uygulama gösterimi ve 83
reklam öğesi durum kodu için uygulama yayıncısı bir uyumlulaştırma şelalesi kullanıyor olabilir. Bu nedenle, kazanan teklif yayıncının geri gönderme şelalesi zincirindeki diğer taleple rekabet etmiş olabilir. Teklif verirken sampled_mediation_cpm_ahead_of_auction_winner
'yi nasıl kullanacağınızı öğrenin .
Örnek
Aşağıda, desteklenen protokollerde görülen anlık geri bildirim örneği verilmiştir:
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "01WjN3uc042XYP8Yw509Q7"
imp {
id : "1"
banner {
w : 344
h : 650
pos : AD_POSITION_FULLSCREEN
api : MRAID_1
api : MRAID_2
format {
w : 344
h : 650
}
format {
w : 300
h : 600
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "22.6.0"
instl : true
tagid : "7282514850"
bidfloor : 0.01
bidfloorcur : "USD"
secure : true
exp : 14400
clickbrowser : true
metric {
type : "viewability"
value : 0.77
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 75441834964
publisher_settings_list_id : 9268043626392948934
publisher_settings_list_id : 2867966915706729060
allowed_vendor_type : 113
allowed_vendor_type : 41423
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
allowed_restricted_category : 32
allowed_restricted_category : 33
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
is_app_open_ad : true
ae : SERVER_SIDE_AUCTION
}
}
app {
name : "Test App"
ver : "6.46.0"
bundle : "com.google.testapp"
publisher {
id : "pub-7120195540802809"
[ com . google . doubleclick . publisher ] {
country : "US"
}
}
content {
url : "https://www.google.com"
userrating : "4.6"
livestream : false
language : "en"
}
storeurl : "https://www.google.com"
[ com . google . doubleclick . app ] {
inventorypartnerdomain : "OMITTED"
}
}
device {
ua : "OMITTED"
ip : "192.168.1.0"
geo {
lat : 0.0
lon : 0.0
country : "GHA"
type : IP
utcoffset : 0
accuracy : 8865
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9067654
}
}
make : "Itel"
model : "itel W6502"
os : "android"
osv : "10"
connectiontype : CELL_4G
devicetype : HIGHEND_PHONE
lmt : true
w : 360
h : 722
pxratio : 2.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "10"
}
mobile : true
model : "itel W6502"
source : USER_AGENT_STRING
}
}
user {
[ com . google . doubleclick . user ] {
session {
duration : 660
}
}
}
at : FIRST_PRICE
tmax : 300
cur : "USD"
bcat : "IAB19-22"
bcat : "IAB23-1"
source {
schain {
complete : true
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
schain {
complete : 1
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : 1
}
ver : "1.0"
}
}
}
[ com . google . doubleclick . bid_request ] {
bid_feedback {
request_id : "4004C52Z6Z7Fa39Lf6F2AQ"
creative_status_code : 79
buyer_creative_id : "test_creative_id_129669"
minimum_bid_to_win : 0.1
feedbacktype : BID_FEEDBACK
}
google_query_id : "ANy-zbp8Gw-Mv43u3ni49Ena0i57E0789881P6YVa8jXDHq36B3fNk8me8F20GS6114onx7A"
fcap_scope : FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "01WjN3uc042XYP8Yw509Q7" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 344 ,
"h" : 650 ,
"pos" : 7 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 344 ,
"h" : 650
},
{
"w" : 300 ,
"h" : 600
}
]
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "22.6.0" ,
"instl" : 1 ,
"tagid" : "7282514850" ,
"bidfloor" : 0.01 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 14400 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "viewability" ,
"value" : 0.77 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"75441834964"
],
"publisher_settings_list_id" : [
"9268043626392948934" ,
"2867966915706729060"
],
"allowed_vendor_type" : [
113 ,
41423
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"allowed_restricted_category" : [
32 ,
33
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"is_app_open_ad" : 1 ,
"ae" : 0
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "6.46.0" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-7120195540802809" ,
"ext" : {
"country" : "US"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.6" ,
"livestream" : 0 ,
"language" : "en"
},
"storeurl" : "https://www.google.com" ,
"ext" : {
"inventorypartnerdomain" : "OMITTED"
}
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "192.168.1.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "GHA" ,
"type" : 2 ,
"utcoffset" : 0 ,
"accuracy" : 8865 ,
"ext" : {
"geo_criteria_id" : 9067654
}
},
"make" : "Itel" ,
"model" : "itel W6502" ,
"os" : "android" ,
"osv" : "10" ,
"connectiontype" : 6 ,
"devicetype" : 4 ,
"lmt" : 1 ,
"w" : 360 ,
"h" : 722 ,
"pxratio" : 2.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"10"
]
},
"mobile" : 1 ,
"model" : "itel W6502" ,
"source" : 3
}
},
"user" : {
"ext" : {
"session" : {
"duration" : 660
}
}
},
"at" : 1 ,
"tmax" : 300 ,
"cur" : [
"USD"
],
"bcat" : [
"IAB19-22" ,
"IAB23-1"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
}
},
"ext" : {
"bid_feedback" : [
{
"request_id" : "4004C52Z6Z7Fa39Lf6F2AQ" ,
"creative_status_code" : 79 ,
"buyer_creative_id" : "test_creative_id_129669" ,
"minimum_bid_to_win" : 0.1 ,
"feedbacktype" : 1
}
],
"google_query_id" : "ANy-zbp8Gw-Mv43u3ni49Ena0i57E0789881P6YVa8jXDHq36B3fNk8me8F20GS6114onx7A" ,
"fcap_scope" : 4 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
İlk fiyat açık artırmaları için teklif verme modeli oluşturma
İlk fiyat açık artırmasında teklif verdikten sonra, teklif açık artırmadan filtrelenmemişse minimum_bid_to_win
ve sampled_mediation_cpm_ahead_of_auction_winner
alanlarını içeren gerçek zamanlı geri bildirim alırsınız. Bu sinyaller, gösterimi kazanmak için teklifinizin ne kadar daha yüksek veya düşük olabileceği konusunda teklif mantığınıza bilgi vermek için kullanılabilir.
minimum_bid_to_win
: Gerçek zamanlı teklif açık artırmasını kazanmak için yerleştirilebilecek minimum teklif. Açık artırmayı kazandıysanız bu, kazanırken verebilecek en düşük tekliftir. Açık artırmayı kaybettiyseniz kazanan teklif budur.
sampled_mediation_cpm_ahead_of_auction_winner
: Uyumlulaştırma zincirinde başka ağlar varsa bu alanın değeri, uygun uyumlulaştırma ağlarından birinde açık artırma kazananından daha yüksek olan ve beklenen doluluk oranına göre ağırlıklandırılmış bir örnek teklifi temsil eden bir fiyattır. Uyumlulaştırma zincirindeki ağların hiçbirinin doldurulmasının beklenmediği veya yayıncının SDK uyumlulaştırmasını kullanmadığı durumlarda bu değer 0 olarak ayarlanır.
İşleyiş şekli
minimum_bid_to_win
ve sampled_mediation_cpm_ahead_of_auction_winner
için olası değerleri belirlemek amacıyla kullanılan hesaplamaları açıklamak için öncelikle aşağıdakileri tanımlamamız gerekir:
Aşağıda, uyumlulaştırma zincirindeki BGBM'ler azalan düzende gösterilmektedir:
\[C_1, C_2, …, C_n\]
Aşağıda, uyumlulaştırma zincirindeki BGBM'ler için karşılık gelen doluluk oranları gösterilmektedir:
\[f_1, f_2, …, f_n\]
Aşağıda, verilen doldurma oranına göre uyumlulaştırma zinciri öğesinden \(i\)beklenen BGBM'yi ve olasılığını belirlemek için kullanılan bir işlev verilmiştir:
\(X_i = \{C_i\) with probability \(f_i\); \(0\) with probability \(1 - f_i\}\)
Kazanan nihai uyumlulaştırma zinciri şu şekilde olacaktır:
\[\{C_1, C_2, …, C_K, W\}\]
Burada \(W\) kazanan tekliftir ve \(C_K > W >= C_{K+1}\)
Açılış fiyatı veya taban, \(F\)olarak gösterilir.
İkinci teklif \(R\)olarak gösterilir.
Açık artırma kazananı için hesaplamalar
Alan
Hesaplama
minimum_bid_to_win
\(max\{F, R, X_{K+1}, …, X_n\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(\{C_i\) olasılık \(\prod_{j=1}^{i-1}(1-f_j) \cdot f_i \div \prod_{j=1}^{K}(1-f_j)\}\)
\(1 <= i <= K\)için.
Açık artırmayı kaybeden için hesaplamalar
Alan
Hesaplama
minimum_bid_to_win
\(max\{F, W\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(max\{X_1, …, X_K\}\)
Bir yayıncının hem gerçek zamanlı teklif vermeyi hem de SDK uyumlulaştırma zincirini aşağıdaki gibi kullandığını varsayalım:
SDK Uyumlulaştırması Zinciri
Beklenen BGBM
Doluluk Oranı
1. ağ
\(C_1 = $3.00\)
\(f_1 = 5\%\)
2. ağ
\(C_2 = $2.00\)
\(f_2 = 45\%\)
Ağ 3
\(C_3 = $0.50\)
\(f_3 = 80\%\)
Network 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
RTB açık artırmasının sonucu olarak aşağıdakileri varsayalım:
GZT Açık Artırması
BGBM
Açık Artırma Kazananı (K)
1,00 ABD doları
Açık Artırma İKİNCİSİ (R)
0,05 ABD doları
Açılış Fiyatı / Taban Fiyat (F)
0 ABD doları
Açık artırmayı kazanan teklif
Aşağıda, kazanan bir teklif için minimum_bid_to_win
ve sampled_mediation_cpm_ahead_of_auction_winner
değerlerinin ve olasılıklarının nasıl hesaplandığına dair bir örnek verilmiştir.
minimum_bid_to_win
Probability
\(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
Probability
\(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\%\)
Not: Açık artırma kazananı reklamını yayınlar ve faturalandırma bildirimi alırsa (örneğin, BidResponse.seatbid[].bid[].burl
içinde belirtilen bir uç nokta üzerinden) örneklenen uyumlulaştırma BGBM'lerinin hiçbirinin doldurulmadığını anlayabilir ve bunun ne sıklıkta gerçekleştiğini modeline dahil edebilir.
Açık artırmayı kaybeden teklifler
Aşağıda, kaybeden teklifler için minimum_bid_to_win
ve sampled_mediation_cpm_ahead_of_auction_winner
değerlerinin ve olasılıklarının nasıl hesaplandığına dair bir örnek verilmiştir.
minimum_bid_to_win
Probability
\(max(F, W) = $1.00\)
\(100\%\)
sampled_mediation_cpm_ ahead_of_auction_winner
Probability
\(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\%\)
Not: sampled_mediation_cpm_ahead_of_auction_winner
değerinin 0 olması, gerçek zamanlı teklif verme açık artırmasının kazanıldığını gösterir. Yukarıdaki örnekte, açık artırma kazananının, %52,2 oranında rekabet eden bir uyumlulaştırma ağı tarafından teklifin üzerine çıkmaması beklenir.
Teklif birleştirme
Teklif düzleştirme, tek bir karmaşık BidRequest
öğesinin uygulamanıza gönderilen birden fazla teklif isteğine dönüştürülmesini ifade eder. Bir teklif isteği düzleştirildiğinde, BidRequest.ext.google_query_id
alanında aynı değere sahip oldukları için hangi teklif isteklerinin orijinalin parçası olduğunu anlayabilirsiniz.
Teklif düzleştirme varsayılan olarak etkindir ancak devre dışı bırakmak isterseniz hesap yöneticinizle iletişime geçebilirsiniz.
Bazı reklam fırsatları birden fazla biçimi kabul edebilir. Teklif düzleştirme özelliğiyle her biçim, uygun faturalandırma kimlikleri gibi özelliklerin istekte belirtilen biçimle alakalı olduğu ayrı bir teklif isteğinde gönderilir.
Aşağıdaki biçimleri içeren teklif istekleri, farklı teklif isteklerine birleştirilir:
Banner
Video
Ses
Yerel biçim
Aşağıda, eşdeğer bir düzleştirilmiş istek grubuna kıyasla reklam biçimi düzleştirmesi içermeyen basitleştirilmiş bir OpenRTB JSON teklif isteği gösterilmektedir:
Önceden düzleştirme
Örneği göster
{
"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"
}
}
Düzleştirme sonrası
Örneği göster
1. istek
{
"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"
}
}
2. İstek
{
"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"
}
}
Fırsatlar
Belirli bir teklif veren için bir reklam fırsatı, herkesin katılabileceği açık artırmaya ek olarak çeşitli anlaşma türleri için de geçerli olabilir. Anlaşmalar için teklif düzleştirme özelliğiyle, herkese açık açık artırma için bir teklif isteği ve her sabit fiyatlı anlaşma türü için bir teklif isteği gönderilir. Uygulamada, reklam kısıtlamaları açık artırma ve sabit fiyatlı anlaşma türleri arasında farklılık gösterebilir. Örneğin, hem açık artırma hem de sabit fiyatlı anlaşma için kullanılabilen belirli bir video reklam fırsatı için teklif veren, her biri için farklı teklif istekleri alır. Bu istekler, maksimum reklam süresi ve atlanabilir reklamlara izin verilip verilmediği gibi kısıtlamalarda farklılık gösterebilir. Sonuç olarak, reklam fırsatına uygulanan düzleştirme, herkesin katılabileceği açık artırma ve sabit fiyatlı anlaşma için reklam kısıtlamalarını daha kolay anlamanıza olanak tanır.
Not: Özel açık artırmalar ve açık artırma paketleri, herkesin katılabileceği açık artırmayla aynı kısıtlamalara sahip olacak ve herkesin katılabileceği açık artırma teklif isteklerine dahil edilmeye devam edecektir.
Atlanabilirlik ve video süresi
OpenRTB spesifikasyonunda, atlanabilir ve atlanamayan reklamların maksimum video sürelerini belirtmek için ayrı alanlar yoktur. Google'ın uygulaması, mevcut BidRequest.video.maxduration
ve BidRequest.video.skip
alanlarını kullanarak bunları ayırt etmek için teklif düzleştirmeyi kullanır.
Aşağıda, atlanamayan reklamın maksimum süresi 15
ve atlanabilir reklamın maksimum süresi 60
olduğunda video envanterin nasıl düzleştirildiğine dair bir örnek verilmiştir.
Örnek
max_ad_duration
skip
(true VEYA false)
Düzleştirilmemiş orijinal istek
15
true
Birleştirilmiş istek #1: Atlanamayan
15
false
Birleştirilmiş istek #2: Atlanabilir
60
true
Atlanabilir video süresi teklif isteği düzleştirme işlemi yalnızca aşağıdaki koşullar karşılandığında gerçekleşir:
İstekte videoya izin veriliyor.
Hem atlanabilir hem de atlanamayan videolara izin verilir ve bu iki videonun maksimum süreleri farklıdır.
Bu istek, Özel Açık Artırma veya Herkesin Katılabileceği Açık Artırma için uygundur.
Teknik hesap yöneticinizle iletişime geçerek bu tür bir düzleştirmeyi devre dışı bırakabilirsiniz. Devre dışı bırakıldığında ve yayıncı, atlanabilirliğe göre farklı maksimum sürelere sahip hem atlanabilir hem de atlanamayan video reklamlara izin veriyorsa skip
, true
olarak ayarlanır ve maxduration
, atlanabilir ve atlanamayan reklam kısıtlamaları arasında hangisi daha kısaysa o süreye ayarlanır.
Video kapsülleri
Birden fazla reklam fırsatı içeren bir video kapsülüne yönelik teklif istekleri birleştirilir. Böylece her teklif isteği, ilgili kapsüldeki tek bir reklam fırsatı için olur.
Bu sayede belirli bir kapsül için birden fazla reklam fırsatı için teklif verebilirsiniz.
Open Measurement
Open Measurement, mobil uygulama ortamlarına yayınlanan reklamlar için bağımsız ölçüm ve doğrulama hizmetleri sunan üçüncü taraf tedarikçi firmaları belirtmenize olanak tanır.
Bir yayıncının, teklif isteğinde Open Measurement'ı destekleyip desteklemediğini belirlemek için reklam fırsatının Yayıncı tarafından hariç tutulabilen reklam öğesi özelliklerinde bulunan OmsdkType:
OMSDK 1.0
özelliğini hariç tutup tutmadığını kontrol edebilirsiniz. Bu, biçime bağlı olarak Banner veya Video için battr
özelliğinin altında bulunur.
Open Measurement sinyalleri içeren teklif isteklerinin nasıl yorumlanacağı hakkında daha fazla bilgi için Open Measurement SDK'sı Yardım Merkezi makalesine bakın.
Örnek teklif istekleri
Aşağıdaki bölümlerde, farklı reklam türleri için örnek teklif istekleri gösterilmektedir.
Not: Protobuf örnekleri, benzer serileştirilmiş teklif isteklerinin indirme bağlantılarını içerir. Bu iki öğenin aynı olması garanti edilmez.
Uygulama banner'ı
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "9NaI48SmPW7Zf3MAHR43DY"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
api : MRAID_1
api : MRAID_2
wmax : 390
hmax : 61
wmin : 261
hmin : 46
format {
w : 320
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 261
wmax : 390
hmin : 46
hmax : 61
}
}
}
displaymanager : "GoogleMobileAds-iOS"
displaymanagerver : "11.10.0"
tagid : "9396839755"
bidfloor : 1.0
bidfloorcur : "JPY"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0016558143543079495
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.96
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 82364411103
publisher_settings_list_id : 2581479915860139166
publisher_settings_list_id : 1866597146354523937
allowed_vendor_type : 0
allowed_vendor_type : 4648
ampad : AMP_AD_NOT_ALLOWED
skadn {
sourceapp : "com.google.testapp"
skadnetids : "cF58w81X"
versions : "2.0"
versions : "2.1"
fidelities : STOREKIT_RENDERED_ADS
fidelities : VIEW_THROUGH_ADS
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
billable_event_rate_bid_adjustment {
bid_adjustment : 1.033434
creative_type : HTML_SNIPPET
}
ae : SERVER_SIDE_AUCTION
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "5.6.0"
bundle : "com.google.testapp"
publisher {
id : "pub-6156239328255091"
[ com . google . doubleclick . publisher ] {
country : "JP"
}
}
content {
url : "https://www.google.com"
livestream : false
language : "ja"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "JPN"
region : "JP-27"
city : "Osaka"
type : IP
utcoffset : 540
accuracy : 8429
[ com . google . doubleclick . geo ] {
geo_criteria_id : 1009540
}
}
ipv6 : "240a:61:20a7::"
carrier : "70000"
language : "ja"
make : "Apple"
model : "iPhone13,2"
os : "iOS"
osv : "18.6.2"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
hwv : "iPhone13,2"
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 : "6"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
atts : 2
audioout : AUDIO_SILENT
}
}
user {
[ com . google . doubleclick . user ] {
session {
duration : 270
depth : 12
requestssinceappopen : 12
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 1000
cur : "USD"
cur : "JPY"
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-i-v11.10.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-z7N096-BC94m1ooKoCOsHY5Aqf505y9370zhIav4249vkZ12R2ZiijB1x8I8XL5J1i25"
fcap_scope : FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "9NaI48SmPW7Zf3MAHR43DY" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"api" : [
3 ,
5
],
"wmax" : 390 ,
"hmax" : 61 ,
"wmin" : 261 ,
"hmin" : 46 ,
"format" : [
{
"w" : 320 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 261 ,
"wmax" : 390 ,
"hmin" : 46 ,
"hmax" : 61
}
}
},
"displaymanager" : "GoogleMobileAds-iOS" ,
"displaymanagerver" : "11.10.0" ,
"tagid" : "9396839755" ,
"bidfloor" : 1.0 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0016558143543079495 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.96 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"82364411103"
],
"publisher_settings_list_id" : [
"2581479915860139166" ,
"1866597146354523937"
],
"allowed_vendor_type" : [
0 ,
4648
],
"ampad" : 2 ,
"skadn" : {
"sourceapp" : "com.google.testapp" ,
"skadnetids" : [
"cF58w81X"
],
"versions" : [
"2.0" ,
"2.1"
],
"fidelities" : [
1 ,
0
]
},
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"billable_event_rate_bid_adjustment" : [
{
"bid_adjustment" : 1.033434 ,
"creative_type" : 1
}
],
"ae" : 0 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "5.6.0" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-6156239328255091" ,
"ext" : {
"country" : "JP"
}
},
"content" : {
"url" : "https://www.google.com" ,
"livestream" : 0 ,
"language" : "ja"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "JPN" ,
"region" : "JP-27" ,
"city" : "Osaka" ,
"type" : 2 ,
"utcoffset" : 540 ,
"accuracy" : 8429 ,
"ext" : {
"geo_criteria_id" : 1009540
}
},
"ipv6" : "240a:61:20a7::" ,
"carrier" : "70000" ,
"language" : "ja" ,
"make" : "Apple" ,
"model" : "iPhone13,2" ,
"os" : "iOS" ,
"osv" : "18.6.2" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"hwv" : "iPhone13,2" ,
"w" : 390 ,
"h" : 844 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"18" ,
"6"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"atts" : 2 ,
"audioout" : 3
}
},
"user" : {
"ext" : {
"session" : {
"duration" : 270 ,
"depth" : 12 ,
"requestssinceappopen" : 12 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 1000 ,
"cur" : [
"USD" ,
"JPY"
],
"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-i-v11.10.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-z7N096-BC94m1ooKoCOsHY5Aqf505y9370zhIav4249vkZ12R2ZiijB1x8I8XL5J1i25" ,
"fcap_scope" : 4 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Uygulama geçiş reklamı
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "D3x8RPLO96R6T137tQ6168"
imp {
id : "1"
banner {
w : 360
h : 715
pos : AD_POSITION_FULLSCREEN
api : MRAID_1
api : MRAID_2
format {
w : 360
h : 715
}
format {
w : 320
h : 568
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "22.3.0"
instl : true
tagid : "5771994185"
bidfloor : 2764.414643547123
bidfloorcur : "JPY"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.03971313312649727
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.91
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 68640308112
billing_id : 56606437068
publisher_settings_list_id : 1984414516100776281
publisher_settings_list_id : 5846951473307279661
allowed_vendor_type : 0
allowed_vendor_type : 57823
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_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
bundle : "com.google.testapp"
publisher {
id : "pub-7405557148270612"
[ com . google . doubleclick . publisher ] {
country : "HK"
}
}
content {
url : "https://www.google.com"
userrating : "4.7"
livestream : false
language : "en"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "GBR"
region : "GB-ENG"
zip : "RH20"
type : IP
utcoffset : 60
accuracy : 2312
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9191103
}
}
ipv6 : "2a02:c7c:7c25::"
make : "Huawei"
model : "LYA-L09"
os : "android"
osv : "10"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
ifa : "0f0f33d1-fa18-4a2c-bc47-79ef855b5c16"
w : 360
h : 715
pxratio : 3.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "10"
}
mobile : true
model : "LYA-L09"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
metereddata : false
chargelevel : 0.93
charging : false
diskspace : 2100
audioout : AUDIO_SILENT
}
}
user {
id : "D17oNZQUJqB4Rt4n4Ec61AC9tee"
consent : "OMITTED"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 1205
consented_providers : 415
additional_consent : "OMITTED"
}
consent : "OMITTED"
session {
duration : 6
depth : 12
requestssinceappopen : 12
priorclicks : 0
}
idage : 44064000
}
}
at : FIRST_PRICE
tmax : 1500
cur : "EUR"
cur : "JPY"
bcat : "32"
bcat : "33"
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-v251815999.232400000.1"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zc395b-x973i1113tK7P9K633CKoo3Pl45uz8D40mz3v48s9Zp604a8FsGL3893PT15M"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "D3x8RPLO96R6T137tQ6168" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 360 ,
"h" : 715 ,
"pos" : 7 ,
"api" : [
3 ,
5
],
"format" : [
{
"w" : 360 ,
"h" : 715
},
{
"w" : 320 ,
"h" : 568
}
]
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "22.3.0" ,
"instl" : 1 ,
"tagid" : "5771994185" ,
"bidfloor" : 2764.414643547123 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.03971313312649727 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.91 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"68640308112" ,
"56606437068"
],
"publisher_settings_list_id" : [
"1984414516100776281" ,
"5846951473307279661"
],
"allowed_vendor_type" : [
0 ,
57823
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-7405557148270612" ,
"ext" : {
"country" : "HK"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.7" ,
"livestream" : 0 ,
"language" : "en"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "GBR" ,
"region" : "GB-ENG" ,
"zip" : "RH20" ,
"type" : 2 ,
"utcoffset" : 60 ,
"accuracy" : 2312 ,
"ext" : {
"geo_criteria_id" : 9191103
}
},
"ipv6" : "2a02:c7c:7c25::" ,
"make" : "Huawei" ,
"model" : "LYA-L09" ,
"os" : "android" ,
"osv" : "10" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"ifa" : "0f0f33d1-fa18-4a2c-bc47-79ef855b5c16" ,
"w" : 360 ,
"h" : 715 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"10"
]
},
"mobile" : 1 ,
"model" : "LYA-L09" ,
"source" : 3
},
"ext" : {
"metereddata" : 0 ,
"chargelevel" : 0.93 ,
"charging" : 0 ,
"diskspace" : 2100 ,
"audioout" : 3
}
},
"user" : {
"id" : "D17oNZQUJqB4Rt4n4Ec61AC9tee" ,
"consent" : "OMITTED" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"1205" ,
"415"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"session" : {
"duration" : 6 ,
"depth" : 12 ,
"requestssinceappopen" : 12 ,
"priorclicks" : 0
},
"idage" : 44064000
}
},
"at" : 1 ,
"tmax" : 1500 ,
"cur" : [
"EUR" ,
"JPY"
],
"bcat" : [
"32" ,
"33"
],
"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-v251815999.232400000.1"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zc395b-x973i1113tK7P9K633CKoo3Pl45uz8D40mz3v48s9Zp604a8FsGL3893PT15M" ,
"fcap_scope" : 3 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Uygulama geçiş reklamı videosu
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "179eb03K549H7I2584e7L6"
imp {
id : "1"
video {
mimes : "video/mp4"
linearity : LINEAR
maxduration : 30
w : 414
h : 816
startdelay : 0
playbackmethod : CLICK_TO_PLAY
pos : AD_POSITION_FULLSCREEN
companionad {
w : 414
h : 816
mimes : "text/css"
mimes : "image/jpeg"
format {
w : 414
h : 816
}
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 : 30
plcmt : PLCMT_INTERSTITIAL
[ com . google . doubleclick . video ] {
inferredplcmt : PLCMT_INTERSTITIAL
}
}
displaymanager : "GoogleMobileAds-iOS"
displaymanagerver : "12.7.0"
instl : true
tagid : "7757209244"
bidfloor : 0.01
bidfloorcur : "USD"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.048289403319358826
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.1191580668091774
vendor : "EXCHANGE"
}
rwdd : true
[ com . google . doubleclick . imp ] {
billing_id : 55383762512
publisher_settings_list_id : 1847492880042777742
publisher_settings_list_id : 3770000868027227103
allowed_vendor_type : 0
allowed_vendor_type : 237
is_rewarded_inventory : true
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 : "306el65O"
versions : "2.0"
versions : "2.1"
fidelities : VIEW_THROUGH_ADS
fidelities : STOREKIT_RENDERED_ADS
skoverlay : true
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "6.5.1"
bundle : "com.google.testapp"
publisher {
id : "pub-9126361500211130"
[ com . google . doubleclick . publisher ] {
country : "GB"
}
}
content {
url : "https://www.google.com"
livestream : false
language : "fr"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "FRA"
region : "FR-V"
zip : "01700"
type : IP
utcoffset : 120
accuracy : 3878
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9054913
}
}
ipv6 : "2a01:cb14:11e4::"
language : "fr"
make : "Apple"
model : "iPhone12,1"
os : "iOS"
osv : "18.5"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
hwv : "iPhone12,1"
w : 414
h : 896
pxratio : 2.0
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "605"
version : "1"
}
platform {
brand : "iPhone"
version : "18"
version : "5"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
atts : 2
audioout : AUDIO_SPEAKER
}
}
user {
consent : "OMITTED"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 1097
consented_providers : 2963
additional_consent : "OMITTED"
}
consent : "OMITTED"
session {
duration : 7
depth : 23
requestssinceappopen : 23
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 1000
cur : "USD"
bcat : "3"
bcat : "4"
regs {
[ com . google . doubleclick . regs ] {
gdpr : true
}
}
bapp : "529996768"
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-v12.7.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-ziHO5m-b7Qkgq8Om9TTzELn4d14HK6161373y5520g237O0317F2535zt405Mw054Ts5"
fcap_scope : FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "179eb03K549H7I2584e7L6" ,
"imp" : [
{
"id" : "1" ,
"video" : {
"mimes" : [
"video/mp4"
],
"linearity" : 1 ,
"maxduration" : 30 ,
"w" : 414 ,
"h" : 816 ,
"startdelay" : 0 ,
"playbackmethod" : [
3
],
"pos" : 7 ,
"companionad" : [
{
"w" : 414 ,
"h" : 816 ,
"mimes" : [
"text/css" ,
"image/jpeg"
],
"format" : [
{
"w" : 414 ,
"h" : 816
}
],
"vcm" : 1
}
],
"api" : [
3 ,
5
],
"companiontype" : [
1 ,
2
],
"protocols" : [
2 ,
3
],
"skip" : 0 ,
"placement" : 5 ,
"playbackend" : 1 ,
"maxseq" : 2 ,
"poddur" : 30 ,
"plcmt" : 3 ,
"ext" : {
"inferredplcmt" : 3
}
},
"displaymanager" : "GoogleMobileAds-iOS" ,
"displaymanagerver" : "12.7.0" ,
"instl" : 1 ,
"tagid" : "7757209244" ,
"bidfloor" : 0.01 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.048289403319358826 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.1191580668091774 ,
"vendor" : "EXCHANGE"
}
],
"rwdd" : 1 ,
"ext" : {
"billing_id" : [
"55383762512"
],
"publisher_settings_list_id" : [
"1847492880042777742" ,
"3770000868027227103"
],
"allowed_vendor_type" : [
0 ,
237
],
"is_rewarded_inventory" : 1 ,
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"skadn" : {
"sourceapp" : "com.google.testapp" ,
"skadnetids" : [
"306el65O"
],
"versions" : [
"2.0" ,
"2.1"
],
"fidelities" : [
0 ,
1
],
"skoverlay" : 1
},
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "6.5.1" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-9126361500211130" ,
"ext" : {
"country" : "GB"
}
},
"content" : {
"url" : "https://www.google.com" ,
"livestream" : 0 ,
"language" : "fr"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "FRA" ,
"region" : "FR-V" ,
"zip" : "01700" ,
"type" : 2 ,
"utcoffset" : 120 ,
"accuracy" : 3878 ,
"ext" : {
"geo_criteria_id" : 9054913
}
},
"ipv6" : "2a01:cb14:11e4::" ,
"language" : "fr" ,
"make" : "Apple" ,
"model" : "iPhone12,1" ,
"os" : "iOS" ,
"osv" : "18.5" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"hwv" : "iPhone12,1" ,
"w" : 414 ,
"h" : 896 ,
"pxratio" : 2.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"18" ,
"5"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"atts" : 2 ,
"audioout" : 1
}
},
"user" : {
"consent" : "OMITTED" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"1097" ,
"2963"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"session" : {
"duration" : 7 ,
"depth" : 23 ,
"requestssinceappopen" : 23 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 1000 ,
"cur" : [
"USD"
],
"bcat" : [
"3" ,
"4"
],
"regs" : {
"ext" : {
"gdpr" : 1
}
},
"bapp" : [
"529996768"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-i-v12.7.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-ziHO5m-b7Qkgq8Om9TTzELn4d14HK6161373y5520g237O0317F2535zt405Mw054Ts5" ,
"fcap_scope" : 4 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Uygulama yerel
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "HYuQMewy7o4U9Jk0AYt543"
imp {
id : "1"
displaymanager : "GoogleMobileAds-iOS"
displaymanagerver : "12.6.0"
tagid : "4283347586"
bidfloor : 1841.9824245803225
bidfloorcur : "JPY"
secure : true
native {
ver : "1.2"
api : MRAID_1
api : MRAID_2
request_native {
ver : "1.2"
assets {
id : 1
required : true
title {
len : 25
}
}
assets {
id : 2
required : true
data {
type : DESC
len : 90
}
}
assets {
id : 3
data {
type : CTATEXT
len : 15
}
}
assets {
id : 4
required : true
data {
type : SPONSORED
len : 25
}
}
assets {
id : 5
required : true
img {
type : MAIN
wmin : 1200
hmin : 627
}
}
assets {
id : 6
img {
type : LOGO
wmin : 100
hmin : 100
}
}
eventtrackers {
event : IMPRESSION
methods : IMG
}
eventtrackers {
event : OMID
methods : JS
}
privacy : true
}
}
exp : 3600
clickbrowser : true
metric {
type : "click_through_rate"
value : 0.0035704318434000015
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.42
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 73917825312
billing_id : 58558932335
publisher_settings_list_id : 3148904898759409470
publisher_settings_list_id : 7478572817009281694
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"
}
skadn {
sourceapp : "com.google.testapp"
skadnetids : "Q7B2W332"
skadnetids : "10wC1989"
versions : "2.0"
versions : "2.1"
fidelities : STOREKIT_RENDERED_ADS
fidelities : VIEW_THROUGH_ADS
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
jsver : "test-sdk_123456789"
}
}
app {
name : "Test App"
ver : "4.18.1"
bundle : "com.google.testapp"
publisher {
id : "pub-7029824543087220"
[ com . google . doubleclick . publisher ] {
country : "JP"
}
}
content {
url : "https://www.google.com"
livestream : false
language : "ja"
}
storeurl : "https://www.google.com"
}
device {
ua : "OMITTED"
ip : "192.168.1.0"
geo {
lat : 0.0
lon : 0.0
country : "JPN"
region : "JP-08"
city : "Tsukuba"
zip : "305-0861"
type : IP
utcoffset : 540
accuracy : 1562
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9168296
}
}
language : "ja"
make : "Apple"
model : "iPhone14,5"
os : "iOS"
osv : "18.6.2"
connectiontype : WIFI
devicetype : HIGHEND_PHONE
hwv : "iPhone14,5"
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 : "6"
}
mobile : true
bitness : "64"
model : "iPhone"
source : USER_AGENT_STRING
}
[ com . google . doubleclick . device ] {
atts : 2
audioout : AUDIO_SPEAKER
}
}
user {
data {
id : "39"
segment {
id : "OMITTED"
}
segment {
id : "OMITTED"
}
[ com . google . doubleclick . data ] {
segtax : 4
}
}
[ com . google . doubleclick . user ] {
session {
duration : 10
depth : 83
requestssinceappopen : 83
priorclicks : 0
}
}
}
at : FIRST_PRICE
tmax : 1000
cur : "AUD"
cur : "BRL"
bcat : "4"
bcat : "32"
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-v12.6.0"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-zeA4SO-5uTX8H7U5d0HkU9zRSoPKZuff5VUk04Fq0b341boSb3KUK81w20lbVye7O113"
fcap_scope : FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "HYuQMewy7o4U9Jk0AYt543" ,
"imp" : [
{
"id" : "1" ,
"displaymanager" : "GoogleMobileAds-iOS" ,
"displaymanagerver" : "12.6.0" ,
"tagid" : "4283347586" ,
"bidfloor" : 1841.9824245803225 ,
"bidfloorcur" : "JPY" ,
"secure" : 1 ,
"native" : {
"ver" : "1.2" ,
"api" : [
3 ,
5
],
"request" : "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":25}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":90}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"data\":{\"type\":1,\"len\":25}},{\"id\":5,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":6,\"img\":{\"type\":2,\"wmin\":100,\"hmin\":100}}],\"eventtrackers\":[{\"event\":1,\"methods\":[1]},{\"event\":555,\"methods\":[2]}],\"privacy\":1}"
},
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0035704318434000015 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.42 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"73917825312" ,
"58558932335"
],
"publisher_settings_list_id" : [
"3148904898759409470" ,
"7478572817009281694"
],
"allowed_vendor_type" : [
0 ,
237
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"skadn" : {
"sourceapp" : "com.google.testapp" ,
"skadnetids" : [
"Q7B2W332" ,
"10wC1989"
],
"versions" : [
"2.0" ,
"2.1"
],
"fidelities" : [
1 ,
0
]
},
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0 ,
"jsver" : "test-sdk_123456789"
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "4.18.1" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-7029824543087220" ,
"ext" : {
"country" : "JP"
}
},
"content" : {
"url" : "https://www.google.com" ,
"livestream" : 0 ,
"language" : "ja"
},
"storeurl" : "https://www.google.com"
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "192.168.1.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "JPN" ,
"region" : "JP-08" ,
"city" : "Tsukuba" ,
"zip" : "305-0861" ,
"type" : 2 ,
"utcoffset" : 540 ,
"accuracy" : 1562 ,
"ext" : {
"geo_criteria_id" : 9168296
}
},
"language" : "ja" ,
"make" : "Apple" ,
"model" : "iPhone14,5" ,
"os" : "iOS" ,
"osv" : "18.6.2" ,
"connectiontype" : 2 ,
"devicetype" : 4 ,
"hwv" : "iPhone14,5" ,
"w" : 390 ,
"h" : 844 ,
"pxratio" : 3.0 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"605" ,
"1"
]
}
],
"platform" : {
"brand" : "iPhone" ,
"version" : [
"18" ,
"6"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "iPhone" ,
"source" : 3
},
"ext" : {
"atts" : 2 ,
"audioout" : 1
}
},
"user" : {
"data" : [
{
"id" : "39" ,
"segment" : [
{
"id" : "OMITTED"
},
{
"id" : "OMITTED"
}
],
"ext" : {
"segtax" : 4
}
}
],
"ext" : {
"session" : {
"duration" : 10 ,
"depth" : 83 ,
"requestssinceappopen" : 83 ,
"priorclicks" : 0
}
}
},
"at" : 1 ,
"tmax" : 1000 ,
"cur" : [
"AUD" ,
"BRL"
],
"bcat" : [
"4" ,
"32"
],
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google" ,
"omidpv" : "afma-sdk-i-v12.6.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zeA4SO-5uTX8H7U5d0HkU9zRSoPKZuff5VUk04Fq0b341boSb3KUK81w20lbVye7O113" ,
"fcap_scope" : 4 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Web videosu
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "9B5K1zj5T61jRM80t25s13"
imp {
id : "1"
video {
mimes : "application/javascript"
mimes : "video/mp4"
linearity : LINEAR
maxduration : 60
w : 306
h : 156
startdelay : 0
playbackmethod : ENTER_SOUND_OFF
pos : ABOVE_THE_FOLD
companionad {
w : 0
h : 0
mimes : "image/png"
mimes : "image/gif"
format {
w : 0
h : 0
}
}
api : VPAID_1
api : VPAID_2
companiontype : STATIC
protocols : VAST_2_0
protocols : VAST_3_0
skip : true
placement : IN_STREAM_PLACEMENT
durfloors {
maxdur : 121
bidfloor : 628.6151504524262
}
[ com . google . doubleclick . video ] {
inferredplcmt : PLCMT_ACCOMPANYING_CONTENT
embeddedoffsite : true
}
}
displaymanager : "GOOGLE"
tagid : "1064104152"
bidfloor : 628.6151504524262
bidfloorcur : "JPY"
pmp {
deals {
id : "45957820"
bidfloor : 628.615151
bidfloorcur : "JPY"
[ com . google . doubleclick . deal ] {
deal_type : AUCTION_PACKAGE
billing_id : 34409190968
billing_id : 31520375265
}
}
}
secure : true
exp : 3600
metric {
type : "click_through_rate"
value : 0.061625368893146515
vendor : "EXCHANGE"
}
metric {
type : "video_completion_rate"
value : 0.6049572825431824
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 63495119434
billing_id : 33073577463
publisher_settings_list_id : 2610320062869254712
publisher_settings_list_id : 3579681458579529403
allowed_vendor_type : 0
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_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
}
}
site {
page : "https://www.google.com"
publisher {
id : "pub-1111111111111111"
[ com . google . doubleclick . publisher ] {
country : "IL"
}
}
content {
livestream : false
language : "en"
}
mobile : true
[ com . google . doubleclick . site ] {
amp : DIALECT_HTML
page_visibility : VISIBILITY_STATE_VISIBLE
ntype : NAVIGATION_TYPE_UNKNOWN
}
}
device {
ua : "OMITTED"
ip : "192.168.1.0"
geo {
lat : 0.0
lon : 0.0
country : "USA"
region : "OH"
metro : "558"
city : "Lima"
zip : "45806"
type : IP
utcoffset : - 240
accuracy : 6877
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9015962
}
}
make : "Samsung"
model : "sm-s921u"
os : "android"
osv : "15"
devicetype : HIGHEND_PHONE
w : 1080
h : 2340
sua {
browsers {
brand : "Chromium"
version : "140"
version : "0"
}
browsers {
brand : "Not=A?Brand"
version : "24"
version : "0"
}
platform {
brand : "Android"
version : "15"
version : "0"
}
mobile : true
model : "SM-S921U"
source : CLIENT_HINTS_HIGH_ENTROPY
}
}
user {
id : "2P499L961q5433F3W7910N24dm6"
buyeruid : "d1f6LSo115M9T6r3wjcX397Iu6231g73"
customdata : "98f88k2F7Q9e99vqQIs7eH5OEch4603AQ1e4zo9vP0259ZWI"
[ com . google . doubleclick . user ] {
idage : 432000
}
}
at : FIRST_PRICE
tmax : 350
cur : "TRY"
cur : "JPY"
bcat : "32"
bcat : "33"
source {
schain {
complete : false
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : true
}
ver : "1.0"
}
[ com . google . doubleclick . source ] {
omidpn : "Google1"
omidpv : "h.3.719.1"
}
}
cattax : GOOGLE_CATEGORIES
[ com . google . doubleclick . bid_request ] {
bid_feedback {
request_id : "iC415EO28u2s07s8qn220h"
creative_status_code : 80
event_notification_token {
payload : "token"
}
buyer_creative_id : "test_creative_id_459586"
minimum_bid_to_win : 0.69
feedbacktype : BID_FEEDBACK
}
google_query_id : "ANy-zk4xW4-6F6LW16t4c1LRx767c3V2OC7z3d7Z9TROv5359i3VMG9aT5b136WKCued3457"
fcap_scope : FREQUENCY_CAPPING_SCOPE_BROWSER
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "9B5K1zj5T61jRM80t25s13" ,
"imp" : [
{
"id" : "1" ,
"video" : {
"mimes" : [
"application/javascript" ,
"video/mp4"
],
"linearity" : 1 ,
"maxduration" : 60 ,
"w" : 306 ,
"h" : 156 ,
"startdelay" : 0 ,
"playbackmethod" : [
6
],
"pos" : 1 ,
"companionad" : [
{
"w" : 0 ,
"h" : 0 ,
"mimes" : [
"image/png" ,
"image/gif"
],
"format" : [
{
"w" : 0 ,
"h" : 0
}
]
}
],
"api" : [
1 ,
2
],
"companiontype" : [
1
],
"protocols" : [
2 ,
3
],
"skip" : 1 ,
"placement" : 1 ,
"durfloors" : [
{
"maxdur" : 121 ,
"bidfloor" : 628.6151504524262
}
],
"ext" : {
"inferredplcmt" : 2 ,
"embeddedoffsite" : 1
}
},
"displaymanager" : "GOOGLE" ,
"tagid" : "1064104152" ,
"bidfloor" : 628.6151504524262 ,
"bidfloorcur" : "JPY" ,
"pmp" : {
"deals" : [
{
"id" : "45957820" ,
"bidfloor" : 628.615151 ,
"bidfloorcur" : "JPY" ,
"ext" : {
"deal_type" : 4 ,
"billing_id" : [
"34409190968" ,
"31520375265"
]
}
}
]
},
"secure" : 1 ,
"exp" : 3600 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.061625368893146515 ,
"vendor" : "EXCHANGE"
},
{
"type" : "video_completion_rate" ,
"value" : 0.6049572825431824 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"63495119434" ,
"33073577463"
],
"publisher_settings_list_id" : [
"2610320062869254712" ,
"3579681458579529403"
],
"allowed_vendor_type" : [
0
],
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"creative_enforcement_settings" : {
"policy_enforcement" : 2 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0
}
}
],
"site" : {
"page" : "https://www.google.com" ,
"publisher" : {
"id" : "pub-1111111111111111" ,
"ext" : {
"country" : "IL"
}
},
"content" : {
"livestream" : 0 ,
"language" : "en"
},
"mobile" : 1 ,
"ext" : {
"amp" : 0 ,
"page_visibility" : 1 ,
"ntype" : 0
}
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "192.168.1.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "USA" ,
"region" : "OH" ,
"metro" : "558" ,
"city" : "Lima" ,
"zip" : "45806" ,
"type" : 2 ,
"utcoffset" : - 240 ,
"accuracy" : 6877 ,
"ext" : {
"geo_criteria_id" : 9015962
}
},
"make" : "Samsung" ,
"model" : "sm-s921u" ,
"os" : "android" ,
"osv" : "15" ,
"devicetype" : 4 ,
"w" : 1080 ,
"h" : 2340 ,
"sua" : {
"browsers" : [
{
"brand" : "Chromium" ,
"version" : [
"140" ,
"0"
]
},
{
"brand" : "Not=A?Brand" ,
"version" : [
"24" ,
"0"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"15" ,
"0"
]
},
"mobile" : 1 ,
"model" : "SM-S921U" ,
"source" : 2
}
},
"user" : {
"id" : "2P499L961q5433F3W7910N24dm6" ,
"buyeruid" : "d1f6LSo115M9T6r3wjcX397Iu6231g73" ,
"customdata" : "98f88k2F7Q9e99vqQIs7eH5OEch4603AQ1e4zo9vP0259ZWI" ,
"ext" : {
"idage" : 432000
}
},
"at" : 1 ,
"tmax" : 350 ,
"cur" : [
"TRY" ,
"JPY"
],
"bcat" : [
"32" ,
"33"
],
"source" : {
"schain" : {
"complete" : 0 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
},
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
},
"ext" : {
"omidpn" : "Google1" ,
"omidpv" : "h.3.719.1"
}
},
"cattax" : 500 ,
"ext" : {
"bid_feedback" : [
{
"request_id" : "iC415EO28u2s07s8qn220h" ,
"creative_status_code" : 80 ,
"event_notification_token" : {
"payload" : "token"
},
"buyer_creative_id" : "test_creative_id_459586" ,
"minimum_bid_to_win" : 0.69 ,
"feedbacktype" : 1
}
],
"google_query_id" : "ANy-zk4xW4-6F6LW16t4c1LRx767c3V2OC7z3d7Z9TROv5359i3VMG9aT5b136WKCued3457" ,
"fcap_scope" : 2 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}
Exchange teklif vereni için mobil web banner'ı
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "W5rO389B0p836803G6tI3T"
imp {
id : "1"
banner {
w : 320
h : 50
pos : ABOVE_THE_FOLD
expdir : LEFT
expdir : RIGHT
expdir : UP
expdir : DOWN
api : MRAID_1
api : MRAID_2
format {
w : 320
h : 50
}
format {
w : 320
h : 100
}
}
displaymanager : "GoogleMobileAds-Android"
displaymanagerver : "23.1.0"
tagid : "3758755668"
bidfloor : 0.11
bidfloorcur : "USD"
secure : true
exp : 3600
clickbrowser : true
metric {
type : "viewability"
value : 0.71
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 50962964480
dfp_ad_unit_code : "/5025729/google/test"
ampad : AMP_AD_NOT_ALLOWED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
open_bidding {
is_open_bidding : true
}
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_OVERRIDDEN
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
}
}
app {
name : "Test App"
ver : "6.8.1"
bundle : "com.google.testapp"
publisher {
id : "pub-6120362493380457"
[ com . google . doubleclick . publisher ] {
country : "PL"
}
}
content {
url : "https://www.google.com"
userrating : "4.5"
livestream : false
language : "pl"
}
storeurl : "https://www.google.com"
[ com . google . doubleclick . app ] {
inventorypartnerdomain : "OMITTED"
}
}
device {
ua : "OMITTED"
ip : "192.168.1.0"
geo {
lat : 0.0
lon : 0.0
country : "POL"
region : "PL-MZ"
city : "Warsaw"
zip : "04"
type : IP
utcoffset : 120
accuracy : 2263
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9061066
}
}
carrier : "70872"
make : "Samsung"
model : "SM-A346B"
os : "android"
osv : "14"
connectiontype : CELL_4G
devicetype : HIGHEND_PHONE
ifa : "1f3ed9c7-e8d8-4cec-9167-2811375e2cbe"
lmt : false
w : 384
h : 758
pxratio : 2.813
sua {
browsers {
brand : "Mozilla"
version : "5"
version : "0"
}
browsers {
brand : "AppleWebKit"
version : "537"
version : "36"
}
platform {
brand : "Android"
version : "14"
}
mobile : true
bitness : "64"
model : "SM-A346B"
source : USER_AGENT_STRING
}
}
user {
id : "a9S5d7s7r38o1q8ifv4U80GBxKA"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 1215
consented_providers : 2567
additional_consent : "OMITTED"
}
consent : "OMITTED"
session {
duration : 464
}
idage : 25920000
}
}
at : FIRST_PRICE
tmax : 1000
cur : "USD"
regs {
gpp : "OMITTED"
[ 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-v243799999.241199000.1"
schain {
complete : 1
nodes {
asi : "testssp.com"
sid : "pub-1111111111111111"
hp : 1
}
ver : "1.0"
}
}
}
[ com . google . doubleclick . bid_request ] {
google_query_id : "ANy-z4luKF-u274F3WU34uUUoQ7E82k3L42z23v2K4T1k0eA7Rw8Xb6JeXDG6K703e88p491"
fcap_scope : FREQUENCY_CAPPING_SCOPE_DEVICE
}
OpenRTB JSON
Örneği göster
{
"id" : "W5rO389B0p836803G6tI3T" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 50 ,
"pos" : 1 ,
"expdir" : [
1 ,
2 ,
3 ,
4
],
"api" : [
3 ,
5
],
"format" : [
{
"w" : 320 ,
"h" : 50
},
{
"w" : 320 ,
"h" : 100
}
]
},
"displaymanager" : "GoogleMobileAds-Android" ,
"displaymanagerver" : "23.1.0" ,
"tagid" : "3758755668" ,
"bidfloor" : 0.11 ,
"bidfloorcur" : "USD" ,
"secure" : 1 ,
"exp" : 3600 ,
"clickbrowser" : 1 ,
"metric" : [
{
"type" : "viewability" ,
"value" : 0.71 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"50962964480"
],
"dfp_ad_unit_code" : "/5025729/google/test" ,
"ampad" : 2 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"open_bidding" : {
"is_open_bidding" : 1
},
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 2
},
"auction_environment" : 0 ,
"ae" : 0
}
}
],
"app" : {
"name" : "Test App" ,
"ver" : "6.8.1" ,
"bundle" : "com.google.testapp" ,
"publisher" : {
"id" : "pub-6120362493380457" ,
"ext" : {
"country" : "PL"
}
},
"content" : {
"url" : "https://www.google.com" ,
"userrating" : "4.5" ,
"livestream" : 0 ,
"language" : "pl"
},
"storeurl" : "https://www.google.com" ,
"ext" : {
"inventorypartnerdomain" : "OMITTED"
}
},
"device" : {
"ua" : "OMITTED" ,
"ip" : "192.168.1.0" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "POL" ,
"region" : "PL-MZ" ,
"city" : "Warsaw" ,
"zip" : "04" ,
"type" : 2 ,
"utcoffset" : 120 ,
"accuracy" : 2263 ,
"ext" : {
"geo_criteria_id" : 9061066
}
},
"carrier" : "70872" ,
"make" : "Samsung" ,
"model" : "SM-A346B" ,
"os" : "android" ,
"osv" : "14" ,
"connectiontype" : 6 ,
"devicetype" : 4 ,
"ifa" : "1f3ed9c7-e8d8-4cec-9167-2811375e2cbe" ,
"lmt" : 0 ,
"w" : 384 ,
"h" : 758 ,
"pxratio" : 2.813 ,
"sua" : {
"browsers" : [
{
"brand" : "Mozilla" ,
"version" : [
"5" ,
"0"
]
},
{
"brand" : "AppleWebKit" ,
"version" : [
"537" ,
"36"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"14"
]
},
"mobile" : 1 ,
"bitness" : "64" ,
"model" : "SM-A346B" ,
"source" : 3
}
},
"user" : {
"id" : "a9S5d7s7r38o1q8ifv4U80GBxKA" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"1215" ,
"2567"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"session" : {
"duration" : 464
},
"idage" : 25920000
}
},
"at" : 1 ,
"tmax" : 1000 ,
"cur" : [
"USD"
],
"regs" : {
"gpp" : "OMITTED" ,
"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-v243799999.241199000.1" ,
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
}
},
"ext" : {
"google_query_id" : "ANy-z4luKF-u274F3WU34uUUoQ7E82k3L42z23v2K4T1k0eA7Rw8Xb6JeXDG6K703e88p491" ,
"fcap_scope" : 3
}
}
OpenRTB Protobuf
Örneği göster
Serileştirilmiş istek
id : "rKxPN2rc298433R68335M1"
imp {
id : "1"
banner {
w : 320
h : 480
pos : SIDEBAR
battr : VIDEO_IN_BANNER_AUTO_PLAY
battr : VIDEO_IN_BANNER_USER_INITIATED
wmax : 384
hmax : 480
wmin : 300
hmin : 50
format {
w : 320
h : 480
}
format {
w : 320
h : 50
}
[ com . google . doubleclick . banner_ext ] {
flexslot {
wmin : 300
wmax : 384
hmin : 50
hmax : 480
}
}
}
video {
mimes : "video/mp4"
linearity : LINEAR
w : 320
h : 480
battr : VIDEO_IN_BANNER_AUTO_PLAY
battr : VIDEO_IN_BANNER_USER_INITIATED
playbackmethod : ENTER_SOUND_OFF
pos : BELOW_THE_FOLD
protocols : VAST_2_0
protocols : VAST_3_0
skip : true
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 : "9536033828"
bidfloor : 241.70793093803206
bidfloorcur : "JPY"
pmp {
deals {
id : "52277873"
bidfloor : 1397.489002
bidfloorcur : "JPY"
at : FIXED_PRICE
[ com . google . doubleclick . deal ] {
deal_type : PREFERRED_DEAL
publisher_blocks_overridden : true
creative_constraints {
mtypes : CREATIVE_MARKUP_BANNER
}
billing_id : 75764464008
billing_id : 72269403729
}
}
deals {
id : "75438087"
bidfloor : 399.282572
bidfloorcur : "JPY"
at : FIXED_PRICE
[ com . google . doubleclick . deal ] {
deal_type : PREFERRED_DEAL
publisher_blocks_overridden : true
creative_constraints {
mtypes : CREATIVE_MARKUP_BANNER
}
billing_id : 54698438246
billing_id : 73896418461
}
}
}
secure : true
native {
ver : "1.2"
battr : VIDEO_IN_BANNER_AUTO_PLAY
battr : VIDEO_IN_BANNER_USER_INITIATED
request_native {
ver : "1.2"
assets {
id : 1
required : true
title {
len : 25
}
}
assets {
id : 2
required : true
data {
type : DESC
len : 90
}
}
assets {
id : 3
data {
type : CTATEXT
len : 15
}
}
assets {
id : 4
required : true
data {
type : SPONSORED
len : 25
}
}
assets {
id : 5
required : true
img {
type : MAIN
wmin : 1200
hmin : 627
}
}
assets {
id : 6
img {
type : LOGO
wmin : 100
hmin : 100
}
}
plcmttype : IN_FEED
eventtrackers {
event : IMPRESSION
methods : IMG
}
privacy : true
[ com . google . doubleclick . native_ext ] {
pos : BELOW_THE_FOLD
}
}
}
exp : 3600
metric {
type : "click_through_rate"
value : 0.0041323439218103886
vendor : "EXCHANGE"
}
metric {
type : "viewability"
value : 0.34
vendor : "EXCHANGE"
}
[ com . google . doubleclick . imp ] {
billing_id : 73015827208
billing_id : 49611563199
publisher_settings_list_id : 8800547900990823335
publisher_settings_list_id : 7288715008664845891
allowed_vendor_type : 0
ampad : AMP_AD_ALLOWED_AND_EARLY_RENDERED
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id : "EXCLUDED_BUYER_CREATIVE_ID"
}
allowed_restricted_category : 32
allowed_restricted_category : 33
creative_enforcement_settings {
policy_enforcement : POLICY_ENFORCEMENT_PLATFORM_POLICY
publisher_blocks_enforcement : PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment : SERVER_SIDE_AUCTION
ae : SERVER_SIDE_AUCTION
}
}
site {
page : "https://www.google.com"
publisher {
id : "pub-1111111111111111"
[ com . google . doubleclick . publisher ] {
country : "GB"
}
}
content {
livestream : false
language : "en"
}
mobile : true
[ com . google . doubleclick . site ] {
amp : DIALECT_HTML_AMP
page_visibility : VISIBILITY_STATE_HIDDEN
ntype : NAVIGATION_TYPE_UNKNOWN
}
}
device {
ua : "OMITTED"
geo {
lat : 0.0
lon : 0.0
country : "GBR"
region : "GB-ENG"
city : "London"
zip : "SE1"
type : IP
utcoffset : 60
accuracy : 1437
[ com . google . doubleclick . geo ] {
geo_criteria_id : 9045888
}
}
ipv6 : "2a00:23ee:2870::"
carrier : "70062"
make : "Samsung"
model : "sm-a326b"
os : "android"
osv : "12"
devicetype : HIGHEND_PHONE
w : 385
h : 854
pxratio : 1.875
sua {
browsers {
brand : "Chromium"
version : "136"
}
browsers {
brand : "Google Chrome"
version : "136"
}
platform {
brand : "Android"
version : "12"
version : "0"
}
mobile : true
model : "SM-A326B"
source : CLIENT_HINTS_HIGH_ENTROPY
}
}
user {
id : "91b09w734L84717xiK05zAZf5n0"
buyeruid : "8vo3pY3AoGtGr33C3l7675sM26SB7NB8"
customdata : "868uz0uj2AjUDOD604yq2d8KwN8dhQyH2Qlulc9m2oF4f866"
consent : "OMITTED"
[ com . google . doubleclick . user ] {
consented_providers_settings {
consented_providers : 1725
consented_providers : 2922
additional_consent : "OMITTED"
}
consent : "OMITTED"
idage : 20736000
}
}
at : FIRST_PRICE
tmax : 350
cur : "GBP"
cur : "TRY"
bcat : "5"
bcat : "8"
regs {
[ com . google . doubleclick . regs ] {
gdpr : true
}
}
source {
schain {
complete : 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-zAo260-k5UV8JFUsGCH92VU2O823b532U1q8Gzs72ny20W3Tnhi3rod972Z990D7324m"
fcap_scope : FREQUENCY_CAPPING_SCOPE_BROWSER
privacy_treatments {
allow_user_data_collection : true
}
}
OpenRTB JSON
Örneği göster
{
"id" : "rKxPN2rc298433R68335M1" ,
"imp" : [
{
"id" : "1" ,
"banner" : {
"w" : 320 ,
"h" : 480 ,
"pos" : 6 ,
"battr" : [
6 ,
7
],
"wmax" : 384 ,
"hmax" : 480 ,
"wmin" : 300 ,
"hmin" : 50 ,
"format" : [
{
"w" : 320 ,
"h" : 480
},
{
"w" : 320 ,
"h" : 50
}
],
"ext" : {
"flexslot" : {
"wmin" : 300 ,
"wmax" : 384 ,
"hmin" : 50 ,
"hmax" : 480
}
}
},
"video" : {
"mimes" : [
"video/mp4"
],
"linearity" : 1 ,
"w" : 320 ,
"h" : 480 ,
"battr" : [
6 ,
7
],
"playbackmethod" : [
6
],
"pos" : 3 ,
"protocols" : [
2 ,
3
],
"skip" : 1 ,
"placement" : 3 ,
"playbackend" : 2 ,
"plcmt" : 4 ,
"ext" : {
"inferredplcmt" : 4
}
},
"displaymanager" : "GOOGLE" ,
"tagid" : "9536033828" ,
"bidfloor" : 241.70793093803206 ,
"bidfloorcur" : "JPY" ,
"pmp" : {
"deals" : [
{
"id" : "52277873" ,
"bidfloor" : 1397.489002 ,
"bidfloorcur" : "JPY" ,
"at" : 3 ,
"ext" : {
"deal_type" : 1 ,
"publisher_blocks_overridden" : 1 ,
"creative_constraints" : {
"mtypes" : [
1
]
},
"billing_id" : [
"75764464008" ,
"72269403729"
]
}
},
{
"id" : "75438087" ,
"bidfloor" : 399.282572 ,
"bidfloorcur" : "JPY" ,
"at" : 3 ,
"ext" : {
"deal_type" : 1 ,
"publisher_blocks_overridden" : 1 ,
"creative_constraints" : {
"mtypes" : [
1
]
},
"billing_id" : [
"54698438246" ,
"73896418461"
]
}
}
]
},
"secure" : 1 ,
"native" : {
"ver" : "1.2" ,
"battr" : [
6 ,
7
],
"request" : "{\"ver\":\"1.2\",\"assets\":[{\"id\":1,\"required\":1,\"title\":{\"len\":25}},{\"id\":2,\"required\":1,\"data\":{\"type\":2,\"len\":90}},{\"id\":3,\"data\":{\"type\":12,\"len\":15}},{\"id\":4,\"required\":1,\"data\":{\"type\":1,\"len\":25}},{\"id\":5,\"required\":1,\"img\":{\"type\":3,\"wmin\":1200,\"hmin\":627}},{\"id\":6,\"img\":{\"type\":2,\"wmin\":100,\"hmin\":100}}],\"plcmttype\":1,\"eventtrackers\":[{\"event\":1,\"methods\":[1]}],\"privacy\":1,\"ext\":{\"pos\":3}}"
},
"exp" : 3600 ,
"metric" : [
{
"type" : "click_through_rate" ,
"value" : 0.0041323439218103886 ,
"vendor" : "EXCHANGE"
},
{
"type" : "viewability" ,
"value" : 0.34 ,
"vendor" : "EXCHANGE"
}
],
"ext" : {
"billing_id" : [
"73015827208" ,
"49611563199"
],
"publisher_settings_list_id" : [
"8800547900990823335" ,
"7288715008664845891"
],
"allowed_vendor_type" : [
0
],
"ampad" : 4 ,
"excluded_creatives" : [
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id" : "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"allowed_restricted_category" : [
32 ,
33
],
"creative_enforcement_settings" : {
"policy_enforcement" : 1 ,
"publisher_blocks_enforcement" : 1
},
"auction_environment" : 0 ,
"ae" : 0
}
}
],
"site" : {
"page" : "https://www.google.com" ,
"publisher" : {
"id" : "pub-1111111111111111" ,
"ext" : {
"country" : "GB"
}
},
"content" : {
"livestream" : 0 ,
"language" : "en"
},
"mobile" : 1 ,
"ext" : {
"amp" : 1 ,
"page_visibility" : 2 ,
"ntype" : 0
}
},
"device" : {
"ua" : "OMITTED" ,
"geo" : {
"lat" : 0.0 ,
"lon" : 0.0 ,
"country" : "GBR" ,
"region" : "GB-ENG" ,
"city" : "London" ,
"zip" : "SE1" ,
"type" : 2 ,
"utcoffset" : 60 ,
"accuracy" : 1437 ,
"ext" : {
"geo_criteria_id" : 9045888
}
},
"ipv6" : "2a00:23ee:2870::" ,
"carrier" : "70062" ,
"make" : "Samsung" ,
"model" : "sm-a326b" ,
"os" : "android" ,
"osv" : "12" ,
"devicetype" : 4 ,
"w" : 385 ,
"h" : 854 ,
"pxratio" : 1.875 ,
"sua" : {
"browsers" : [
{
"brand" : "Chromium" ,
"version" : [
"136"
]
},
{
"brand" : "Google Chrome" ,
"version" : [
"136"
]
}
],
"platform" : {
"brand" : "Android" ,
"version" : [
"12" ,
"0"
]
},
"mobile" : 1 ,
"model" : "SM-A326B" ,
"source" : 2
}
},
"user" : {
"id" : "91b09w734L84717xiK05zAZf5n0" ,
"buyeruid" : "8vo3pY3AoGtGr33C3l7675sM26SB7NB8" ,
"customdata" : "868uz0uj2AjUDOD604yq2d8KwN8dhQyH2Qlulc9m2oF4f866" ,
"consent" : "OMITTED" ,
"ext" : {
"consented_providers_settings" : {
"consented_providers" : [
"1725" ,
"2922"
],
"additional_consent" : "OMITTED"
},
"consent" : "OMITTED" ,
"idage" : 20736000
}
},
"at" : 1 ,
"tmax" : 350 ,
"cur" : [
"GBP" ,
"TRY"
],
"bcat" : [
"5" ,
"8"
],
"regs" : {
"ext" : {
"gdpr" : 1
}
},
"source" : {
"schain" : {
"complete" : 1 ,
"nodes" : [
{
"asi" : "testssp.com" ,
"sid" : "pub-1111111111111111" ,
"hp" : 1
}
],
"ver" : "1.0"
}
},
"cattax" : 500 ,
"ext" : {
"google_query_id" : "ANy-zAo260-k5UV8JFUsGCH92VU2O823b532U1q8Gzs72ny20W3Tnhi3rod972Z990D7324m" ,
"fcap_scope" : 2 ,
"privacy_treatments" : {
"allow_user_data_collection" : 1
}
}
}