Google, uygulamanıza teklif isteği gönderdiğinde gerçek zamanlı bir teklif verme etkileşimi 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ır
Google, teklif isteğini HTTP POST isteğinin ikili yükü olarak eklenen serileştirilmiş bir protokol arabelleği olarak gönderir. Content-Type
, application/octet-stream
olarak ayarlandı. Örnek için Örnek teklif isteği bölümüne bakın.
Bu isteği BidRequest
mesajının bir örneğine ayrıştırmalısınız. BidRequest
, referans verileri sayfasından edinebileceğiniz realtime-bidding.proto
politikasında tanımlanmıştır. BidRequest
için oluşturulan sınıfta ParseFromString()
yöntemini kullanarak mesajı ayrıştırabilirsiniz. Örneğin, aşağıdaki C++ kodu bir dizede 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
edindikten sonra bu öğeyle bir nesne olarak çalışabilir, ihtiyacınız olan alanları çıkarıp yorumlayabilirsiniz. Örneğin, C++ için:
for (int i = 0; i < bid_request.adslot_size(); ++i) {
const BidRequest_AdSlot& adslot = bid_request.adslot(i);
// Decide what to bid on adslot.
}
BidRequest
ile gönderilen bazı bilgiler (ör. Google Kullanıcı Kimliği, dil veya coğrafi konum) her zaman kullanılamayabilir. Belirli bir gösterim için bilinmeyen bilgileri kullanan
ön hedefleme reklam gruplarınız varsa bu reklam grupları eşleşmez. Ön hedefleme koşulları için eksik bilgilerin önemli olmadığı durumlarda teklif istekleri, eksik bilgilerle gönderilir.
Ön hedefleme reklam grubuyla ilgili bilgiler, her bir AdSlot
için MatchingAdData
grubunda mevcuttur. Bu değer, Google'ın teklif isteğini göndermesini isteyen ön hedefleme reklam grubunun ilk eşleşen reklam grubu kimliğini içerir. Bu kimlik, yanıtınızın gösterim için açık artırmayı kazanması durumunda ücretlendirilen reklam grubu ve kampanyanın kimliğini belirtir. Bazı durumlarda, BidResponse.AdSlot
içinde ilişkilendirme için billing_id
öğesini açıkça belirtmeniz gerekir. Örneğin, BidRequest.AdSlot
birden fazla matching_ad_data
içeriyorsa.
Teklifin içeriğiyle ilgili kısıtlamalar hakkında daha fazla bilgi için realtime-bidding.proto
inceleyin.
Sözlük dosyaları
Teklif isteği, referans verileri sayfasında bulunan sözlük dosyalarında tanımlanan tanımlayıcıları kullanır.
Teklif URL'si makroları
Bazı BidRequest
alanları, isteğe bağlı olarak HTTP POST isteğinde kullanılan URL'ye eklenebilir. Örneğin, istekteki bir değeri kullanarak birden fazla arka uç üzerinden yük dengeleme yapan hafif bir ön uç kullanıyorsanız bu özellik faydalı olacaktır. Yeni makrolarla ilgili destek istemek için teknik hesap yöneticinize başvurun.
Makro Açıklama
%%GOOGLE_USER_ID%%
BidRequest
öğesinden google_user_id
ile değiştirilir. Örneğin, teklif veren URL'si
http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%% , istek zamanındahttp://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl gibi bir URL ile değiştirilecektir.
Google Kullanıcı Kimliği bilinmiyorsa boş dize değiştirilir ve şuna benzer bir sonuç elde edilir:
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
BidRequest
has_mobile()
çağrılırken 1
veya 0
ile değiştirilir.
%%HAS_VIDEO%%
BidRequest
öğesi has_video()
çağrılırken 1
(true) veya 0
(false) ile değiştirilir.
%%HOSTED_MATCH_DATA%%
BidRequest
alanındaki hosted_match_data
alanının değeriyle değiştirilir.
%%MOBILE_IS_APP%%
BidRequest
öğesinin mobile.is_app
alanından 1
(doğru) veya 0
(yanlış) ile değiştirilir.
İşlem URL'sinden mobil uygulama kimliğini bulma
Mobil uygulama işlemleri, şuna benzeyen URL'leri bildirir:
mbappgewtimrzgyytanjyg4888888 .com
Dizenin kalın karakterlerle (gewtimrzgyytanjyg4888888
) yazılan kısmının kodunu çözmek için base 32 kod çözücü kullanın.
Online kod çözücü kullanabilirsiniz ancak harfleri büyük yazıp sondaki 8
'leri =
değerleriyle değiştirmeniz gerekir.
Bu değerin kodu çözüldüğünde:
GEWTIMRZGYYTANJYG4======
şu şekilde sonuçlanır:
1-429610587
429610587
dizesi,
iFunny iOS uygulamasının uygulama kimliğidir.
Bir örnek daha verelim. Raporlanan URL:
mbappgewtgmjug4ytmmrtgm888888 .com
Bu değerin kodunu çözme:
GEWTGMJUG4YTMMRTGM======
şunu sağlar:
1-314716233
Sonuç
314716233
,
TextNow iOS uygulamasının uygulama kimliğidir.
İşlem URL'sinden mobil uygulama adını bulma
Aşağıda, uygulama adını almayla ilgili bir örnek verilmiştir. Bildirilen URL aşağıdaki gibidir:
mbappMFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q888 .com
Bu değerin kodunun çözülmesi:
MFUXELTDN5WS42DZOBQWQLTJN4XHG3DJORUGK4Q===
şunu sağlar:
air.com.hypah.io.slither
Sonuç,
slither.io Android uygulamasına eşittir.
Open Bidding alanları
Open Bidding'e katılan exchange ve ağ teklif verenlerine 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. Mevcut birkaç alanın alternatif kullanımları olabilir. Bunlardan bazıları:
OpenRTB
Authorized Buyers
Ayrıntılar
BidRequest.imp[].ext.dfp_ad_unit_code
BidRequest.adslot[].dfp_ad_unit_code
Yayıncının Ad Manager ağ kodunu ve ardından eğik çizgiyle ayrılmış reklam birimi hiyerarşisini içerir.
Örneğin, bu şuna benzer bir biçimlendirmeyle görünür:
/1234/cruises/mars
.
BidRequest.user.data[].segment[]
BidRequest.adslot[].exchange_bidding.key_value[]
Yayıncıdan exchange teklif verenine 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 satıcıları bildirme
Araştırma, yeniden pazarlama ve reklam sunma gibi hizmetleri sağlayan teknoloji sağlayıcıları, alıcılar ve satıcılar arasındaki etkileşimde rol oynayabilir. Yalnızca Google'ın Authorized Buyers etkileşimlerine katılımı onayladığı tedarikçi firmalara izin verilir.
BidRequest
öğesini anlamak ve BidResponse
öğenizi oluşturmak için teknoloji tedarikçi firmaları bildirmeyle ilgili iki farklı seçeneği bilmeniz gerekir:
Bazı tedarikçi firmaların beyan edilmesi gerekmez. Bu tedarikçiler Authorized Buyers Yardımı'nda listelenir .
Diğer tedarikçiler, yalnızca hem BidRequest
hem de BidResponse
içinde beyan edilmeleri halinde katılabilirler:
BidRequest
bölümündeki allowed_vendor_type
alanı, satıcının hangi tedarikçi firmalara izin verdiğini belirtir. BidRequest
öğesinin allowed_vendor_type
alanında gönderilecek tedarikçiler Vendors.txt
sözlük dosyasında listelenir.
BidResponse
'deki vendor_type
alanı, alıcının izin verilen tedarikçi firmalardan hangilerini kullanmayı amaçladığını belirtir.
Örnek teklif isteği
Aşağıdaki örnekler, Protobuf ve JSON isteklerinin kullanıcılar tarafından okunabilir örneklerini temsil etmektedir.
Google
Örneği göster
id: "\2509\326c\203\245\3079!\301\334U\316Wz\240_\252\367S\230)\303"
user_agent: "Mozilla/5.0 (Linux; Android 10; SM-J610FN; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.0.0 Mobile Safari/537.36 (Mobile)"
url: "https://www.google.com"
detected_language: "fr"
adslot {
id: 1
width: 320
width: 300
height: 50
height: 50
excluded_attribute: 22
excluded_attribute: 95
allowed_vendor_type: 3
allowed_vendor_type: 42
excluded_sensitive_category: 36
excluded_sensitive_category: 19
matching_ad_data {
billing_id: 30279159795
billing_id: 91462636804
minimum_cpm_micros: 520000
}
matching_ad_data {
billing_id: 20531517860
billing_id: 81128918204
minimum_cpm_micros: 40000
}
slot_visibility: ABOVE_THE_FOLD
excluded_product_category: 10159
ad_block_key: 1008473386
publisher_settings_list_id: 2398179148724909589
publisher_settings_list_id: 2783982084227045767
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
viewability: 99
allowed_ad_types: ALLOWED_AD_TYPE_BANNER
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
consented_providers_settings {
consented_providers: 976
consented_providers: 1127
additional_consent_string: "OMITTED"
}
regs_gdpr: true
api: OMID_1
api: MRAID_1
flexible_adslot_settings {
max_width: 320
max_height: 50
min_width: 214
min_height: 33
}
omidpn: "Google"
omidpv: "afma-sdk-a-v240304999.12451000.1"
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
supported_auction_environment: SERVER_SIDE_AUCTION
}
is_test: false
timezone_offset: 120
mobile {
app_id: "com.google.testapp"
is_app: true
app_name: "Test App"
app_rating: 4.2959895
}
postal_code: "10011"
geo_criteria_id: 1001400
publisher_type: PUBLISHER_OWNED_AND_OPERATED
device {
device_type: HIGHEND_PHONE
platform: "android"
brand: "Samsung"
model: "SM-J610FN"
os_version {
major: 10
}
carrier_id: 0
screen_width: 412
screen_height: 798
screen_pixel_ratio_millis: 1750
screen_orientation: PORTRAIT
limit_ad_tracking: false
connection_type: WIFI
}
publisher_country: "DE"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-zlKU2N-bX715350yWM17iAQg20R03ek41611E29hE35cvag5h91O1gYs9308t71bZ9k7"
auction_type: FIRST_PRICE
geo {
lat: 50.46
lon: 4.85
country: "BEL"
region: "BE-WNA"
city: "Namur"
zip: "5000"
utcoffset: 120
accuracy: 7471
}
user_agent_data {
platform {
brand: "Android"
version: "10"
}
mobile: true
model: "SM-J610FN"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "537"
version: "36"
}
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_NONE
privacy_treatments {
ip: IP_REDACTED
user_agent: USER_AGENT_COARSENED
non_personalized_ads_reason: PUBLISHER_DECLARED_NPA
allow_user_data_collection: false
device_storage_restriction_reason: INSUFFICIENT_USER_CONSENT
}
inventory_partner_domain: "OMITTED"
OpenRTB JSON
Örneği göster
{
"id": "219DAI11M3120s2d8M4xgR",
"imp": [
{
"id": "1",
"banner": {
"w": 300,
"h": 250,
"pos": 3,
"battr": [
6,
7
],
"wmax": 300,
"hmax": 250,
"wmin": 200,
"hmin": 200,
"format": [
{
"w": 300,
"h": 250
},
{
"w": 200,
"h": 200
}
]
},
"displaymanager": "GOOGLE",
"tagid": "7820275329",
"bidfloor": 0.08,
"bidfloorcur": "USD",
"secure": 1,
"exp": 3600,
"metric": [
{
"type": "click_through_rate",
"value": 0.00022253872884903103,
"vendor": "EXCHANGE"
},
{
"type": "viewability",
"value": 0.01,
"vendor": "EXCHANGE"
}
],
"ext": {
"billing_id": [
54460865479
],
"publisher_settings_list_id": [
5406346852112173352,
7576925985766584885
],
"allowed_vendor_type": [
3,
42
],
"ampad": 3,
"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,
"ae": 0
}
}
],
"site": {
"page": "https://www.google.com",
"publisher": {
"id": "pub-1111111111111111",
"ext": {
"country": "GB"
}
},
"content": {
"livestream": 0,
"language": "en"
},
"mobile": 1,
"ext": {
"amp": 0,
"page_visibility": 1,
"inventorypartnerdomain": "OMITTED"
}
},
"device": {
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Mobile Safari/537.36",
"ip": "192.168.1.0",
"geo": {
"lat": 0.0,
"lon": 0.0,
"country": "GBR",
"region": "GB-ENG",
"city": "Leeds",
"type": 2,
"utcoffset": 60,
"accuracy": 7356
},
"carrier": "70062",
"make": "Apple",
"model": "iphone",
"os": "iOS",
"osv": "17.4.1",
"devicetype": 4,
"lmt": 0,
"w": 393,
"h": 852,
"pxratio": 3,
"sua": {
"browsers": [
{
"brand": "Mozilla",
"version": [
"5",
"0"
]
},
{
"brand": "AppleWebKit",
"version": [
"605",
"1"
]
}
],
"platform": {
"brand": "iPhone",
"version": [
"17",
"4"
]
},
"mobile": 1,
"bitness": "64",
"model": "iPhone",
"source": 3
},
},
"user": {
"ext": {
"consented_providers_settings": {
"consented_providers": [
"1800",
"2878"
],
"additional_consent": "OMITTED"
},
"consent": "OMITTED"
}
},
"at": 1,
"tmax": 300,
"cur": [
"USD"
],
"bcat": [
"IAB23-5",
"IAB23-7"
],
"regs": {
"ext": {
"gdpr": 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": {
"google_query_id": "ANy-z1n326-9P8x09i2I5f85oXp7N1r61w0p681H008U29MK56111D9VJn1nRRp4P7eB5Y9H",
"fcap_scope": 5,
"privacy_treatments": {
"allow_user_data_collection": 1
}
}
}
OpenRTB Protokol Arabelleği
Örneği göster
id: "803txXnQe99Y0e3070L5xO"
imp {
id: "1"
banner {
w: 468
h: 60
pos: BELOW_THE_FOLD
expdir: LEFT
expdir: RIGHT
expdir: UP
expdir: DOWN
format {
w: 468
h: 60
}
format {
w: 300
h: 50
}
}
displaymanager: "GOOGLE"
tagid: "1614017459"
bidfloor: 0.01
bidfloorcur: "USD"
secure: true
exp: 3600
metric {
type: "viewability"
value: 0.25
vendor: "EXCHANGE"
}
metric {
type: "session_depth"
value: 1.0
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 51570472186
dfp_ad_unit_code: "/2336960/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
}
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
}
}
site {
page: "https://www.google.com"
publisher {
id: "pub-1111111111111111"
[com.google.doubleclick.publisher] {
country: "US"
}
}
content {
livestream: false
language: "en"
}
[com.google.doubleclick.site] {
amp: DIALECT_HTML
page_visibility: VISIBILITY_STATE_VISIBLE
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36"
geo {
lat: 0.0
lon: 0.0
country: "IND"
region: "IN-UP"
type: IP
utcoffset: 330
accuracy: 8141
}
ipv6: "2409:4053:401::"
os: "X11"
devicetype: PERSONAL_COMPUTER
lmt: false
pxratio: 2.0
sua {
browsers {
brand: "Google Chrome"
version: "123"
version: "0"
}
browsers {
brand: "Not:A-Brand"
version: "8"
version: "0"
}
platform {
brand: "Linux"
}
mobile: false
architecture: "x86"
bitness: "64"
source: CLIENT_HINTS_HIGH_ENTROPY
}
}
user {
id: "k5953o8KM7C3P2t45EoXQN6273h"
buyeruid: "i8VSc4u14C8hQCB3e6Tm8Od7z1S0542c"
customdata: "08135N21ki8nbhM99rBJEGsU9kO5Mr99Hs10eeh3M8tn1o3q"
[com.google.doubleclick.user] {
idage: 2592000
}
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
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"
}
}
[com.google.doubleclick.bid_request] {
google_query_id: "ANy-z0q198-VH9uWi641a7Nr5j1TA39TZM09b659F35vRZhyf532904TZ7cR3UPC71174eAi"
fcap_scope: FREQUENCY_CAPPING_SCOPE_BROWSER
}
Teklif isteğini, gerçek bir istekte POST yükünden alacağınız şekilde bir ikili forma dönüştürmek için aşağıdakileri yapabilirsiniz (C++). 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
}
}
Authorized Buyers, bir mobil uygulamadan gelen teklif isteklerine bir mobil reklam kimliği iletir. Mobil reklam kimliği bir iOS IDFA veya
Android reklam kimliği olabilir. Bu kimlik, Authorized Buyers tarafından yönetilen JavaScript etiketindeki
%%EXTRA_TAG_DATA%%
makrosu üzerinden gönderilir.
%%ADVERTISING_IDENTIFIER%%
makrosu, alıcıların gösterim oluşturmada iOS IDFA'yı veya Android'in Reklam Kimliğini almalarını sağlar.
%%EXTRA_TAG_DATA%%
gibi şifrelenmiş bir protokol arabelleği MobileAdvertisingId
döndürür:
message MobileAdvertisingId {
optional bytes advertising_id = 1;
optional int32 user_id_type = 2;
}
user_id_type
, enum AdxMobileIdType
öğesinde tanımlanan değerlerden biridir:
enum AdxMobileIdType {
MOBILE_ID_UNKNOWN = 0,
IDFA = 1,
ANDROID_ID = 2,
};
Gösterim oluşturma sırasında topladığınız reklam kimliklerini kullanarak mobil reklam kimliklerinden kullanıcı listeleri oluşturabilirsiniz. Bu kullanıcı listeleri sizin sunucunuzda
veya bizim sunucularımızda tutulabilir. Google'ın sunucularında kullanıcı listeleri oluşturmak için toplu yükleme tesisimizi kullanabilirsiniz.
Mobil reklamcılık kimliği bir kullanıcı listesiyle eşleştiğinde, yeniden pazarlama yapmak için bu kimliği kullanabilirsiniz.
Gerçek zamanlı geri bildirim
Gerçek zamanlı geri bildirim; Authorized Buyers'ın yanı sıra Open Bidding'i kullanan exchange'ler ve ağlar tarafından da kullanılabilir.
Teklif yanıtı geri bildirimi, hem AdX Protocol hem de OpenRTB için sonraki teklif isteğinde desteklenir. OpenRTB için BidRequestExt
içinde gönderilir.
Teklif Yanıtı Geri Bildirimi'nde gönderilen varsayılan alanlara ek olarak, BidResponse
içinde döndürülen bir event_notification_token
kullanarak teklif yanıtında (AdX Proto veya OpenRTB) özel veriler de gönderebilirsiniz. event_notification_token
, yalnızca teklif veren tarafından bilinen ve hata ayıklamaya yardımcı olabilecek rastgele verilerdir. Örneğin: yeni bir hedefleme kimliği veya yeni bir taktiği temsil eden teklif kimliği ya da reklam öğesiyle ilişkili ve yalnızca teklif veren tarafından bilinen meta veriler. Ayrıntılar için RTB için OpenRTB Uzantılar Protokol Tamponu ve AdX için AdX Proto bölümüne bakın.
Authorized Buyers teklif verene teklif isteği gönderdiğinde teklif veren, BidResponse
ile yanıt verir. Teklif veren gerçek zamanlı geri bildirimi etkinleştirdiyse sonraki bir teklif isteğinde Authorized Buyers, aşağıda gösterildiği gibi bir BidResponseFeedback
mesajıyla yanıtla ilgili geri bildirim gönderir:
message BidResponseFeedback {
// The unique id from BidRequest.id
optional bytes request_id = 1;
// The index of the BidResponse_Ad if there was more than one. The index
// starts at zero for the first creative.
optional int32 creative_index = 2;
// 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 = 3;
// 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 int64 cpm_micros = 4;
// The minimum bid value necessary to have won the auction, in micros of
// 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 did not 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 int64 minimum_bid_to_win = 7;
// 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 micros 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 BidResponseFeedback object.
optional int64 server_side_component_minimum_bid_to_win = 16;
// 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 = 15 [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 micros of your account currency.
optional int64 sampled_mediation_cpm_ahead_of_auction_winner = 10;
// Event notification token that was included in the bid response.
optional bytes event_notification_token = 5;
// Buyer creative ID that was included in the bid response.
optional string buyer_creative_id = 6;
// 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 BidResponseFeedback message. Google will send separate
// BidResponseFeedback 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 feedback_type = 17;
// 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 buyer_origin = 18;
// 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 interest_group_buyer_status_code = 19;
}
Bu mesajda, işaretlemeniz gereken ilk alan bid_response_feedback.creative_status_code
. Kodu,
creative-status-codes.txt içinde bulabilirsiniz. Teklifi kazanırsanız fiyat geri bildirimini devre dışı bırakabilirsiniz. Daha fazla bilgi için Devre dışı bırakma bölümüne bakın.
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öndermemiştir.
Hiç.
Alıcı, açık artırmaya ulaşmadan önce filtrelenmiş bir teklif göndermiştir.
Reklam öğesi durum kodu (creative-status-codes.txt ).
Alıcı teklif verdi ancak açık artırmayı kaybetti.
Reklam öğesi durum kodu 79
(açık artırmada daha yüksek teklif verildi).
Alıcı, açık artırmayı kazanan bir teklif gönderdi.
Temizlenen fiyat ve reklam öğesi durum kodu 1
.
Uygulama yayıncısı, bir uygulama gösterimi ve 83
reklam öğesi durum kodu için bir uyumlulaştırma şelalesi kullanıyor olabilir. Bu nedenle kazanan teklif, yayıncının geri verilen gösterim şelale zincirindeki diğer taleplerle rekabet edebilirdi. Teklif verirken sampled_mediation_cpm_ahead_of_auction_winner
özelliğini nasıl kullanacağınızı öğrenin .
Örnek
Aşağıda, desteklenen protokollerde görüldüğü gibi gerçek zamanlı geri bildirime bir örnek verilmiştir:
Google
Örneği göster
id: "(\001\334X\nH\034\230.\244 R/\370\204/\270\265\255H\322h\366"
ip: "\300\250"
user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
url: "https://www.google.com"
detected_language: "en"
adslot {
id: 1
width: 320
height: 50
excluded_attribute: 18
excluded_attribute: 27
allowed_vendor_type: 485
allowed_vendor_type: 4648
excluded_sensitive_category: 4
excluded_sensitive_category: 23
matching_ad_data {
billing_id: 18273476630
billing_id: 57564954457
minimum_cpm_micros: 634720000
}
matching_ad_data {
billing_id: 51346235308
billing_id: 16770443752
minimum_cpm_micros: 4037930000
}
slot_visibility: ABOVE_THE_FOLD
ad_block_key: 5409661012
publisher_settings_list_id: 8938951914739109978
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
viewability: 94
click_through_rate: 0.0002517347
allowed_ad_types: ALLOWED_AD_TYPE_BANNER
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
session_depth: 1
api: OMID_1
api: MRAID_1
omidpn: "Google"
omidpv: "afma-sdk-i-v8.13.0"
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
supported_auction_environment: SERVER_SIDE_AUCTION
display_manager: "GoogleMobileAds-iOS"
display_manager_version: "8.13.0"
}
is_test: false
cookie_version: 1
google_user_id: "qM75u4Pq2e1DYmuo3J1w534y786"
timezone_offset: -300
mobile {
app_id: "549642335"
is_app: true
encrypted_advertising_id: "\357\005\250`f\022\357Y\372$\177\005\325\036\334a]\241\014\367g_\032\262w,nG\265\312:Iw\037\347y"
app_name: "Test App"
advertising_id: "\272\026\206F\222\250\re\253\350G\235\241h\303\271"
}
cookie_age_seconds: 20736000
postal_code: "10011"
geo_criteria_id: 9012672
publisher_settings_list_id: 3625423117835077640
bid_response_feedback {
request_id: "\220\366\320/\025\000Z\212K\"\020\364\232\247\326Q"
creative_status_code: 80
event_notification_token: "token"
buyer_creative_id: "test_creative_id_180631"
minimum_bid_to_win: 11650000
feedback_type: BID_FEEDBACK
}
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 7759509030857009145
device {
device_type: HIGHEND_PHONE
platform: "iphone"
brand: "Apple"
model: "iPhone13,2"
os_version {
major: 16
minor: 6
}
carrier_id: 0
screen_width: 390
screen_height: 844
screen_pixel_ratio_millis: 3000
screen_orientation: PORTRAIT
hardware_version: "iPhone13,2"
limit_ad_tracking: false
app_tracking_authorization_status: AUTHORIZED
connection_type: WIFI
}
publisher_country: "US"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-z8184S-12cH23V6vlS7A862Qr799b3g4uh5Y8a21SDWf3XC22u9KS5KSn1053a97039y"
auction_type: FIRST_PRICE
geo {
lat: 34.37
lon: -87.44
country: "USA"
region: "AL"
metro: "691"
zip: "35651"
utcoffset: -300
accuracy: 7879
}
user_agent_data {
platform {
brand: "iPhone"
version: "16"
version: "6"
}
mobile: true
model: "iPhone"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "605"
version: "1"
}
bitness: "64"
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
OpenRTB JSON
Örneği göster
{
"id": "B2zmta620ms2392240eM5R",
"imp": [
{
"id": "1",
"banner": {
"w": 300,
"h": 250,
"pos": 3,
"wmax": 300,
"hmax": 250,
"wmin": 0,
"hmin": 46,
"format": [
{
"w": 300,
"h": 250
},
{
"w": 180,
"h": 150
}
]
},
"displaymanager": "GOOGLE",
"tagid": "3178683015",
"bidfloor": 0.06,
"bidfloorcur": "USD",
"secure": 1,
"exp": 3600,
"metric": [
{
"type": "click_through_rate",
"value": 0.0010899954941123724,
"vendor": "EXCHANGE"
},
{
"type": "viewability",
"value": 0.28,
"vendor": "EXCHANGE"
}
],
"ext": {
"billing_id": [
76252023422
],
"publisher_settings_list_id": [
7226782477948422193,
2459752148771775747
],
"allowed_vendor_type": [
3,
42
],
"ampad": 3,
"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": "TR"
}
},
"content": {
"livestream": 0,
"language": "tr"
},
"ext": {
"amp": 0,
"page_visibility": 1,
"inventorypartnerdomain": "OMITTED"
}
},
"device": {
"ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",
"ip": "192.168.1.0",
"geo": {
"lat": 0.0,
"lon": 0.0,
"country": "TUR",
"region": "TR-01",
"city": "Adana",
"type": 2,
"utcoffset": 180,
"accuracy": 7060
},
"os": "Windows",
"devicetype": 2,
"lmt": 0,
"pxratio": 1.25,
"sua": {
"browsers": [
{
"brand": "Chromium",
"version": [
"124",
"0"
]
},
{
"brand": "Google Chrome",
"version": [
"124",
"0"
]
}
],
"platform": {
"brand": "Windows",
"version": [
"7",
"0"
]
},
"mobile": 0,
"architecture": "x86",
"bitness": "64",
"source": 2
},
},
"at": 1,
"tmax": 300,
"cur": [
"USD"
],
"bcat": [
"IAB23-6",
"IAB23-8"
],
"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": "0S7s2muW9tFzp8zl35u97n",
"creative_status_code": 80,
"event_notification_token": {
"payload": "token"
},
"buyer_creative_id": "test_creative_id_383532",
"minimum_bid_to_win": 0.01,
"feedbacktype": 1
}
],
"google_query_id": "ANy-z3QP2f-48p8d0ucFkGmd99q36HPgSg4o8b89L0989N0RoS0x56mYMJd4087NT0d21W99",
"fcap_scope": 5,
"privacy_treatments": {
"allow_user_data_collection": 1
}
}
}
OpenRTB Protokol Arabelleği
Örneği göster
id: "Wa0N08928Q93A1985Aj71s"
imp {
id: "1"
banner {
w: 428
h: 846
pos: AD_POSITION_FULLSCREEN
expdir: LEFT
expdir: RIGHT
expdir: UP
expdir: DOWN
api: MRAID_1
api: MRAID_2
format {
w: 428
h: 846
}
format {
w: 414
h: 736
}
}
displaymanager: "GoogleMobileAds-iOS"
displaymanagerver: "10.12.0"
instl: true
tagid: "7674739358"
bidfloor: 0.01
bidfloorcur: "USD"
secure: true
exp: 3600
clickbrowser: true
metric {
type: "click_through_rate"
value: 0.12990431487560272
vendor: "EXCHANGE"
}
metric {
type: "viewability"
value: 0.91
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 25325587657
ampad: AMP_AD_NOT_ALLOWED
open_bidding {
is_open_bidding: true
}
skadn {
sourceapp: "com.google.testapp"
skadnetids: "M8jiSyxV"
skadnetids: "lZ95E155"
versions: "2.0"
versions: "2.1"
fidelities: VIEW_THROUGH_ADS
fidelities: STOREKIT_RENDERED_ADS
}
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"
bundle: "com.google.testapp"
publisher {
id: "pub-7874601938215096"
[com.google.doubleclick.publisher] {
country: "CN"
}
}
content {
url: "https://www.google.com"
livestream: false
language: "en"
}
storeurl: "https://www.google.com"
[com.google.doubleclick.app] {
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Mozilla/5.0 (iPhone; CPU iPhone OS 16_3_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
ip: "192.168.1.0"
geo {
lat: 0.0
lon: 0.0
country: "MYS"
region: "MY-13"
city: "Kuching"
zip: "93350"
type: IP
utcoffset: 480
accuracy: 3372
}
make: "Apple"
model: "iPhone14,3"
os: "iOS"
osv: "16.3.1"
connectiontype: WIFI
devicetype: HIGHEND_PHONE
lmt: true
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: "16"
version: "3"
}
mobile: true
bitness: "64"
model: "iPhone"
source: USER_AGENT_STRING
}
[com.google.doubleclick.device] {
atts: 2
}
}
at: FIRST_PRICE
tmax: 1000
cur: "USD"
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-v10.12.0"
schain {
complete: 1
nodes {
asi: "testssp.com"
sid: "pub-1111111111111111"
hp: 1
}
ver: "1.0"
}
}
}
[com.google.doubleclick.bid_request] {
bid_feedback {
request_id: "0I3TcIJ0r6cmPH750Be7b1"
creative_status_code: 79
event_notification_token {
payload: "token"
}
buyer_creative_id: "test_creative_id_151612"
minimum_bid_to_win: 0.14
sampled_mediation_cpm_ahead_of_auction_winner: 2.222233
feedbacktype: BID_FEEDBACK
}
google_query_id: "ANy-zv49ep-83k2i3iDL3q449a2D1l824ye020uBq6B1wnPqWz1657JQ4LF11N71794cU0n9"
fcap_scope: FREQUENCY_CAPPING_SCOPE_APP
}
İlk fiyat açık artırmaları için teklif 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ı da içeren gerçek zamanlı geri bildirimler alırsınız. Bu sinyaller, gösterimi kazanmak için teklifinizin ne kadar yüksek veya düşük olabileceğine ilişkin teklif mantığınıza bilgi sağlamak amacıyla kullanılabilir.
minimum_bid_to_win
: Gerçek zamanlı teklif açık artırmasını kazanmak için verilebilecek minimum tekliftir. Açık artırmayı kazanmış olsanız bile
bu, kazanmayı sürdürürken verebileceğiniz en düşük teklif olacaktır. Açık artırmayı kaybettiyseniz, kazanan teklif bu olur.
sampled_mediation_cpm_ahead_of_auction_winner
: Uyumlulaştırma zincirinde başka ağlar varsa bu alanın değeri, beklenen doluluk oranına göre ağırlıklı olarak açık artırmanın kazananından daha yüksek olan uygun uyumlulaştırma ağlarından birinden alınan örnek bir teklifi temsil eden fiyat olur. Uyumlulaştırma zincirindeki ağlardan hiçbirinin doldurması beklenmiyorsa veya yayıncı SDK uyumlulaştırmasını kullanmıyorsa 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 önce 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, belirtilen doluluk oranına göre beklenen BGBM'yi ve uyumlulaştırma zinciri öğesinden \(i\)olasılığını belirlemek için kullanılan bir işlev gösterilmektedir:
\(X_i = \{C_i\) olasılıkla \(f_i\); \(0\) olasılıkla \(1 - f_i\}\)
Kazanan son uyumlulaştırma zinciri şöyle olacaktır:
\[\{C_1, C_2, …, C_K, W\}\]
burada \(W\) kazanan teklif 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ırmanın 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ıkla \(\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ı kaybedenlere ilişkin 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 aşağıdaki gibi hem gerçek zamanlı teklif verme hem de SDK uyumlulaştırma zinciri kullandığını varsayalım:
SDK Uyumlulaştırma Zinciri
Beklenen BGBM
Doluluk Oranı
Ağ 1
\(C_1 = $3.00\)
\(f_1 = 5\%\)
Ağ 2
\(C_2 = $2.00\)
\(f_2 = 45\%\)
Ağ 3
\(C_3 = $0.50\)
\(f_3 = 80\%\)
Ağ 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
GZT açık artırmasının sonucu olarak aşağıdaki sonucu varsayalım:
GZT Açık Artırması
BGBM
Açık Artırma Kazananı (K)
1,00 ABD doları
Açık Artırma İkincisi (R)
0,05 ABD doları
Rezerv Fiyatı / Taban (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 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ırmanın kazananı reklamını yayınlar ve örneğin, BidResponse.ad[].impression_tracking_url
veya OpenRTB'de BidResponse.seatbid[].bid[].burl
için belirtilen uç nokta üzerinden faturalandırma bildirimi alırsa açık artırmanın kazananı, örneklenen uyumlulaştırma BGBM'lerinin hiçbirinin dolmadığını anlayabilir ve bunun ne sıklıkla gerçekleştiğini modeline ekleyebilir.
Açık artırmayı kaybeden teklifler
Aşağıda, minimum_bid_to_win
ve sampled_mediation_cpm_ahead_of_auction_winner
değerlerinin ve olasılıkların kaybedilen teklifler için 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 açık artırmasının kazandığını gösterir. Yukarıdaki örnekte, açık artırmayı kazanan tarafın rakip bir uyumlulaştırma ağı tarafından% 52,2 daha yüksek teklif vermemesi beklenir.
Teklif birleştirme
Teklif birleştirme, tek bir karmaşık BidRequest
öğesinin uygulamanıza gönderilen birden fazla teklif isteğine dönüştürülmesini tanımlar. Aynı kimlikleri (Authorized Buyers RTB Protokolü'nde BidRequest.google_query_id
veya OpenRTB protokolünde BidRequestExt.google_query_id
) korudukları için birleştirme işleminden sonra hangi teklif isteklerinin ilişkilendirildiğini belirleyebilirsiniz.
Bazı reklam fırsatları birden fazla biçimi kabul edebilir. Teklif birleştirme ile 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 istekleri olarak birleştirilecek:
Banner
Video
Ses
Yerel biçim
Aşağıda, eşdeğer bir düzleştirilmiş istek grubuyla karşılaştırıldığında reklam biçimi birleştirilmeyen basitleştirilmiş bir OpenRTB JSON teklif isteğini gösteren bir örnek verilmiştir:
Önceden Düzülmüş
Ö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üzleme Sonrası
Örneği göster
İstek 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"
}
}
İstek 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"
}
}
Fırsatlar
Belirli bir teklif veren için reklam fırsatı, herkesin katılabileceği açık artırmaya ek olarak çeşitli anlaşma türleri için geçerli olabilir. Anlaşmalar için teklif birleştirmeyle, herkesin katılabileceği açık artırma için bir teklif isteği ve her bir sabit fiyatlı anlaşma türü için bir teklif isteği gönderilir. Pratikte reklam kısıtlamaları, açık artırmalar ve sabit fiyatlı anlaşma türleri arasında farklılık gösterebilir. Örneğin, hem herkesin katılabileceği açık artırmada hem de sabit fiyatlı bir anlaşmada kullanılabilen belirli bir video reklam fırsatında teklif veren, maksimum reklam süresi ve atlanabilir reklamlara izin verilip verilmeyeceği gibi kısıtlamaların farklı olabileceği durumlarda her biri için ayrı teklif istekleri alır. Sonuç olarak, reklam fırsatına uygulanan birleştirme işlemi, açılış açık artırması ve sabit fiyatlı anlaşma için reklam kısıtlamalarını daha kolay ayırt etmenizi sağlar.
Not: Özel Açık Artırmalar ve Açık Artırma Paketleri, herkesin katılabileceği açık artırma ile aynı kısıtlamalara sahip olacak ve herkesin katılabileceği açık artırma teklif isteklerine dahil edilmeye devam edecektir.
Maksimum atlanabilir video süresi
Google'ın protokolü ve OpenRTB uygulaması, video süresi ve atlanabilirliği için aşağıdaki alanları destekler:
Süre
Atlanabilir süre
Atlanabilirlik
Google protokolü
max_ad_duration
skippable_max_ad_duration
video_ad_skippable
OpenRTB
maxduration
Yok
skip
Bu, Google protokolünün ayrıntılı bir atlanabilir ve atlanamayan süresi olabileceği, OpenRTB uygulamasının yalnızca tek bir maksimum süre değerine sahip olduğu anlamına gelir.
Teklif birleştirme işleminden önce OpenRTB'nin maxduration
değeri, Google protokolünün max_ad_duration
ve skippable_max_ad_duration
alanlarının alt kısmına ayarlanır. Bu davranış artık bu değerler farklı olduğunda iki ayrı teklif isteği gönderilecek şekilde değiştirilmiştir: Biri atlanabilir için maxduration
, diğeri atlanamayan fırsatlar için.
Aşağıdaki örneklerde bir Google protokolü isteğinin, teklif birleştirme işleminden önce ve sonra OpenRTB'ye nasıl çevrildiği gösterilmektedir. Eşdeğer Google protokolü isteği max_ad_duration
15
ve skippable_max_ad_duration
60
değerine sahiptir.
Örnek
max_ad_duration
skip
(doğru VEYA yanlış)
Birleştirmeden 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 birleştirme, yalnızca aşağıdaki koşullar karşılandığında gerçekleşir:
İstek videoya izin veriyor.
Hem atlamalı hem de atlanamayan videolara izin verilir. İlgili iki maksimum süre değeri farklıdır.
Bu istek, Özel Açık Artırma veya Herkesin Katılabileceği Açık Artırma için uygundur.
Teklif veren hesabında etkin OpenRTB uç noktaları var.
Teknik hesap yöneticinizle iletişime geçerek bu tür birleştirme işleminin kapsamı dışında kalmayı seçebilirsiniz.
Video kapsülleri
Birden fazla reklam fırsatı içeren video kapsülü için teklif istekleri, her teklif isteği söz konusu kapsüldeki bağımsız bir reklam fırsatına yönelik olacak şekilde birleştirilir.
Bu, belirli bir kapsül için birden fazla reklam fırsatına teklif vermenizi sağlar.
Open Measurement
Open Measurement, mobil uygulama ortamlarına yayınlanan reklamlar için bağımsız ölçüm ve doğrulama hizmetleri sağlayan üçüncü taraf tedarikçi firmaları belirtmenizi sağlar.
Bir yayıncının, reklam fırsatının Yayıncı tarafından hariç tutulabilir reklam öğesi özelliklerinde bulunan OmsdkType:
OMSDK 1.0
özelliğini hariç tutup tutmadığını kontrol ederek teklif isteğinde Open Measurement'ı destekleyip desteklemediğini belirleyebilirsiniz. Authorized Buyers protokolü için BidRequest.adslot[].excluded_attribute
değerinin altında yer alır. OpenRTB protokolü için bu, biçime bağlı olarak Banner veya Video için battr
özelliğinin altında bulunur.
Open Measurement sinyalleri içeren teklif isteklerini nasıl yorumlayacağınız 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.
Uygulama banner'ı
Google
Örneği göster
id: "1\200\2149CH\354\224S\002G>\276\3068\264Z\316\203Hz\010\334"
ip: "\300\250"
user_agent: "Mozilla/5.0 (Linux; Android 13; SM-A032M Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36 (Mobile; afma-sdk-a-v241518064.241518064.0)"
url: "https://www.google.com"
detected_language: "pt"
adslot {
id: 1
width: 300
width: 320
height: 250
height: 50
excluded_attribute: 13
excluded_attribute: 18
allowed_vendor_type: 745
allowed_vendor_type: 4513
excluded_sensitive_category: 4
excluded_sensitive_category: 31
matching_ad_data {
billing_id: 16751333146
minimum_cpm_micros: 10000
}
slot_visibility: ABOVE_THE_FOLD
ad_block_key: 6911419491
publisher_settings_list_id: 3488369073734770391
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
viewability: 66
allowed_ad_types: ALLOWED_AD_TYPE_BANNER
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
api: OMID_1
api: MRAID_1
flexible_adslot_settings {
max_width: 336
max_height: 280
min_width: 168
min_height: 0
}
regs_lgpd: true
omidpn: "Google"
omidpv: "afma-sdk-a-v240304999.224400000.1"
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
supported_auction_environment: SERVER_SIDE_AUCTION
display_manager: "GoogleMobileAds-Android"
display_manager_version: "21.5.0"
}
is_test: false
timezone_offset: -180
mobile {
app_id: "com.google.testapp"
is_app: true
app_name: "Test App"
app_rating: 4.6296206
}
geo_criteria_id: 1001533
publisher_settings_list_id: 12488741028105368323
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 8688212468768627166
device {
device_type: HIGHEND_PHONE
platform: "android"
brand: "Samsung"
model: "SM-A032M"
os_version {
major: 13
}
carrier_id: 0
screen_width: 360
screen_height: 730
screen_pixel_ratio_millis: 2000
screen_orientation: PORTRAIT
limit_ad_tracking: false
connection_type: WIFI
}
publisher_country: "BR"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-z6684B-S9K9375rD1B53ZdYA2RQi090I2bJ579yi0CF0N8A60v821V52F938j142LOzW"
auction_type: FIRST_PRICE
geo {
lat: -12.98
lon: -38.5
country: "BRA"
region: "BR-BA"
city: "Salvador"
utcoffset: -180
accuracy: 14885
}
user_agent_data {
platform {
brand: "Android"
version: "13"
}
mobile: true
model: "SM-A032M"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "537"
version: "36"
}
bitness: "64"
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_BROWSER
privacy_treatments {
non_personalized_ads_reason: USER_OPT_OUT
allow_user_data_collection: false
}
inventory_partner_domain: "OMITTED"
OpenRTB JSON
Örneği göster
{
"id": "r87mLfJ195K96b48857234",
"imp": [
{
"id": "1",
"banner": {
"w": 390,
"h": 61,
"pos": 1,
"api": [
3,
5
],
"wmax": 390,
"hmax": 61,
"wmin": 261,
"hmin": 46,
"format": [
{
"w": 390,
"h": 61
},
{
"w": 320,
"h": 50
}
]
},
"displaymanager": "GoogleMobileAds-iOS",
"displaymanagerver": "11.2.0",
"tagid": "2022397433",
"bidfloor": 0.04,
"bidfloorcur": "USD",
"secure": 1,
"exp": 3600,
"clickbrowser": 1,
"metric": [
{
"type": "click_through_rate",
"value": 4.110196186957182e-06,
"vendor": "EXCHANGE"
},
{
"type": "viewability",
"value": 0,
"vendor": "EXCHANGE"
}
],
"ext": {
"billing_id": [
82346236545
],
"publisher_settings_list_id": [
5491354135157496540,
9146398712997475724
],
"allowed_vendor_type": [
445,
776
],
"ampad": 2,
"allowed_restricted_category": [
33
],
"skadn": {
"sourceapp": "com.google.testapp",
"skadnetids": [
"5c39728P"
],
"versions": [
"2.0",
"2.1"
],
"fidelities": [
1,
0
]
},
"creative_enforcement_settings": {
"policy_enforcement": 2,
"publisher_blocks_enforcement": 1
},
"auction_environment": 0,
"ae": 0
}
}
],
"app": {
"name": "Test App",
"bundle": "com.google.testapp",
"publisher": {
"id": "pub-1242890569860107",
"ext": {
"country": "SG"
}
},
"content": {
"url": "https://www.google.com",
"livestream": 0,
"language": "en"
},
"storeurl": "https://www.google.com",
"ext": {
"inventorypartnerdomain": "OMITTED"
}
},
"device": {
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
"geo": {
"lat": 0.0,
"lon": 0.0,
"country": "USA",
"region": "MI",
"metro": "563",
"zip": "49512",
"type": 2,
"utcoffset": -240,
"accuracy": 2082
},
"ipv6": "2601:404:d980::",
"make": "Apple",
"model": "iPhone14,7",
"os": "iOS",
"osv": "17.4.1",
"connectiontype": 2,
"devicetype": 4,
"lmt": 1,
"hwv": "iPhone14,7",
"w": 390,
"h": 844,
"pxratio": 3,
"sua": {
"browsers": [
{
"brand": "Mozilla",
"version": [
"5",
"0"
]
},
{
"brand": "AppleWebKit",
"version": [
"605",
"1"
]
}
],
"platform": {
"brand": "iPhone",
"version": [
"17",
"4"
]
},
"mobile": 1,
"bitness": "64",
"model": "iPhone",
"source": 3
},
"ext": {
"atts": 2
}
},
"at": 1,
"tmax": 300,
"cur": [
"USD"
],
"source": {
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
},
"ext": {
"omidpn": "Google",
"omidpv": "afma-sdk-i-v11.2.0",
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
}
}
},
"ext": {
"google_query_id": "ANy-z62LCy-as7Eko7z4957U01DLmn1o5VEX66Mm2j8763ahN2zV77j721K17752LzuUR571",
"fcap_scope": 4,
"privacy_treatments": {
"allow_user_data_collection": 1
}
}
}
OpenRTB Protokol Arabelleği
Örneği göster
id: "38V61KXKxB63Yk8o3G6P38"
imp {
id: "1"
banner {
w: 320
h: 50
pos: ABOVE_THE_FOLD
api: MRAID_1
api: MRAID_2
format {
w: 320
h: 50
}
}
displaymanager: "GoogleMobileAds-Android"
displaymanagerver: "22.6.0"
tagid: "6163632333"
bidfloor: 0.04
bidfloorcur: "USD"
secure: true
exp: 3600
clickbrowser: true
metric {
type: "click_through_rate"
value: 0.00265840464271605
vendor: "EXCHANGE"
}
metric {
type: "viewability"
value: 0.99
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 67427969102
publisher_settings_list_id: 4626521705809021216
publisher_settings_list_id: 8961571116051095682
allowed_vendor_type: 113
allowed_vendor_type: 566
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
}
}
app {
name: "Test App"
bundle: "com.google.testapp"
publisher {
id: "pub-2997181131115025"
[com.google.doubleclick.publisher] {
country: "SG"
}
}
content {
url: "https://www.google.com"
userrating: "4.5"
livestream: false
language: "es"
}
storeurl: "https://www.google.com"
[com.google.doubleclick.app] {
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Mozilla/5.0 (Linux; Android 14; SM-G998U Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36 (Mobile; afma-sdk-a-v241358038.241358038.0)"
ip: "192.168.1.0"
geo {
lat: 0.0
lon: 0.0
country: "SLV"
city: "Soyapango"
type: IP
utcoffset: -360
accuracy: 2669
}
make: "Samsung"
model: "SM-G998U"
os: "android"
osv: "14"
connectiontype: WIFI
devicetype: HIGHEND_PHONE
lmt: false
w: 384
h: 779
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-G998U"
source: USER_AGENT_STRING
}
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
bcat: "IAB23-1"
bcat: "IAB7-36"
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-v240304999.234310000.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-z128zE-MC22DP3W65flJoxSet5n2U738TRR92N5E76wd7Bh38KuU08Tyt67or0Od0b3q"
fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection: true
}
}
Uygulama geçiş reklamı
Google
Örneği göster
id: "(\232m\232xp\035\326w\260\250\262\205\r:\313\373:3\215!L\234"
ip: "\300\250"
user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 16_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
url: "https://www.google.com"
detected_language: "en"
adslot {
id: 1
width: 398
width: 320
height: 744
height: 480
excluded_attribute: 19
excluded_attribute: 18
allowed_vendor_type: 828
allowed_vendor_type: 4697
matching_ad_data {
billing_id: 37034094959
billing_id: 19705546350
minimum_cpm_micros: 200000
}
slot_visibility: ABOVE_THE_FOLD
ad_block_key: 7260775726
publisher_settings_list_id: 1906995857014069503
viewability: 91
click_through_rate: 0.021559697
allowed_ad_types: ALLOWED_AD_TYPE_BANNER
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
api: OMID_1
api: MRAID_1
omidpn: "Google"
omidpv: "afma-sdk-i-v11.2.0"
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 14400
billable_event_rate_bid_adjustment {
bid_adjustment: 1.1087964
creative_type: HTML_SNIPPET
}
supported_auction_environment: SERVER_SIDE_AUCTION
display_manager: "GoogleMobileAds-iOS"
display_manager_version: "11.2.0"
}
is_test: false
timezone_offset: 480
mobile {
app_id: "500811620"
is_app: true
is_interstitial_request: true
app_name: "Test App"
skadn {
sourceapp: "500811620"
skadnetids: "41dEOEaD"
skadnetids: "580dmbSX"
versions: "2.0"
versions: "2.1"
supported_fidelity_types: VIEW_THROUGH_ADS
supported_fidelity_types: STOREKIT_RENDERED_ADS
skoverlay: true
}
is_app_open_ad: true
}
geo_criteria_id: 20827
publisher_settings_list_id: 18428013069233776176
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 4672461785023090980
device {
device_type: HIGHEND_PHONE
platform: "iphone"
brand: "Apple"
model: "iPhone11,8"
os_version {
major: 16
minor: 6
micro: 1
}
carrier_id: 0
screen_width: 414
screen_height: 896
screen_pixel_ratio_millis: 2000
screen_orientation: PORTRAIT
hardware_version: "iPhone11,8"
limit_ad_tracking: true
app_tracking_authorization_status: NOT_DETERMINED
connection_type: WIFI
}
publisher_country: "SG"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-z06138-98U8A68As2n5q57SoKI3EBuB5RV414N6krfd385z0q1c9o28Bv3176Zw2LuJe"
auction_type: FIRST_PRICE
geo {
lat: 10.24
lon: 123.79
country: "PHL"
region: "PH-CEB"
utcoffset: 480
accuracy: 39443
}
user_agent_data {
platform {
brand: "iPhone"
version: "16"
version: "6"
}
mobile: true
model: "iPhone"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "605"
version: "1"
}
bitness: "64"
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_APP
privacy_treatments {
allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
OpenRTB JSON
Örneği göster
{
"id": "8460Dv0171574mt7n9tOQ9",
"imp": [
{
"id": "1",
"banner": {
"w": 428,
"h": 846,
"pos": 7,
"api": [
3,
5
],
"format": [
{
"w": 428,
"h": 846
},
{
"w": 414,
"h": 736
}
]
},
"displaymanager": "GoogleMobileAds-iOS",
"displaymanagerver": "10.10.0",
"instl": 1,
"tagid": "4914454382",
"bidfloor": 0.01,
"bidfloorcur": "USD",
"secure": 1,
"exp": 3600,
"clickbrowser": 1,
"metric": [
{
"type": "click_through_rate",
"value": 0.560609757900238,
"vendor": "EXCHANGE"
},
{
"type": "viewability",
"value": 0.97,
"vendor": "EXCHANGE"
}
],
"ext": {
"billing_id": [
73848702501
],
"publisher_settings_list_id": [
9781603598081027997,
9488077458915289715
],
"allowed_vendor_type": [
698,
414
],
"ampad": 2,
"excluded_creatives": [
{
"buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"skadn": {
"sourceapp": "com.google.testapp",
"skadnetids": [
"43D4r5x9"
],
"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
}
}
],
"app": {
"name": "Test App",
"bundle": "com.google.testapp",
"publisher": {
"id": "pub-5842596021161378",
"ext": {
"country": "IN"
}
},
"content": {
"url": "https://www.google.com",
"livestream": 0,
"language": "en"
},
"storeurl": "https://www.google.com",
"ext": {
"inventorypartnerdomain": "OMITTED"
}
},
"device": {
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
"geo": {
"lat": 0.0,
"lon": 0.0,
"country": "SAU",
"region": "SA-02",
"city": "Jiddah",
"zip": "23462",
"type": 2,
"utcoffset": 180,
"accuracy": 1291
},
"ipv6": "2a02:9b0:4047::",
"carrier": "71681",
"make": "Apple",
"model": "iPhone14,8",
"os": "iOS",
"osv": "17.4.1",
"connectiontype": 6,
"devicetype": 4,
"lmt": 1,
"hwv": "iPhone14,8",
"w": 428,
"h": 926,
"pxratio": 3,
"sua": {
"browsers": [
{
"brand": "Mozilla",
"version": [
"5",
"0"
]
},
{
"brand": "AppleWebKit",
"version": [
"605",
"1"
]
}
],
"platform": {
"brand": "iPhone",
"version": [
"17",
"4"
]
},
"mobile": 1,
"bitness": "64",
"model": "iPhone",
"source": 3
},
"ext": {
"atts": 2
}
},
"at": 1,
"tmax": 1000,
"cur": [
"USD"
],
"bcat": [
"IAB23-4",
"IAB18-5"
],
"source": {
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
},
"ext": {
"omidpn": "Google",
"omidpv": "afma-sdk-i-v10.10.0",
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
}
}
},
"ext": {
"google_query_id": "ANy-z562Q0-p46Tz77U15Ie9774Mnu3QIa45V73X99r9NR1694g5301D186q8ZFJ57Ja8L78",
"fcap_scope": 4,
"privacy_treatments": {
"allow_user_data_collection": 1
}
}
}
OpenRTB Protokol Arabelleği
Örneği göster
id: "3Sh9IsB712x9QzGDA1k93z"
imp {
id: "1"
banner {
w: 360
h: 711
pos: AD_POSITION_FULLSCREEN
battr: VIDEO_IN_BANNER_AUTO_PLAY
battr: VIDEO_IN_BANNER_USER_INITIATED
api: MRAID_1
api: MRAID_2
format {
w: 360
h: 711
}
format {
w: 360
h: 640
}
}
displaymanager: "GoogleMobileAds-Android"
displaymanagerver: "21.3.0"
instl: true
tagid: "8679500107"
bidfloor: 0.02
bidfloorcur: "USD"
secure: true
exp: 14400
clickbrowser: true
metric {
type: "viewability"
value: 0.9
vendor: "EXCHANGE"
}
metric {
type: "session_depth"
value: 99.0
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 42834631855
ampad: AMP_AD_NOT_ALLOWED
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
}
}
app {
name: "Test App"
bundle: "com.google.testapp"
publisher {
id: "pub-8815040790812473"
[com.google.doubleclick.publisher] {
country: "SG"
}
}
content {
url: "https://www.google.com"
userrating: "4.6"
livestream: false
language: "id"
}
storeurl: "https://www.google.com"
[com.google.doubleclick.app] {
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Dalvik/2.1.0 (Linux; U; Android 11; in-; RMX1971 Build/RKQ1.201217.002)"
ip: "192.168.1.0"
geo {
lat: 0.0
lon: 0.0
country: "IDN"
region: "ID-SS"
city: "Palembang"
type: IP
utcoffset: 420
accuracy: 7498
}
make: "Realme"
model: "RMX1971"
os: "android"
osv: "11"
connectiontype: CELL_4G
devicetype: HIGHEND_PHONE
ifa: "b\'\\xa9>3\\xa2\\xbb\\x95\\x8dIQq\\xd0\\x8f\\xee\\xc1k}\'"
lmt: false
w: 360
h: 711
pxratio: 3.0
sua {
browsers {
brand: "Dalvik"
version: "2"
version: "1"
}
platform {
brand: "Android"
version: "11"
}
mobile: true
model: "RMX1971"
source: USER_AGENT_STRING
}
}
user {
id: "21QP3H9IaS263665PMP52FIes26"
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
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-v240304999.223104000.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-z52N8Y-VzuCT3Q7jr9Ixx3iR4pM1bm1q84NyH1tMMtV9SSO7y83u6Ec3xlaf1563Tt5k"
fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection: true
}
}
Uygulama geçiş videosu
Google
Örneği göster
id: "%w\237\340\331q\305 e\350\324\017Ho\274f\177#\316\231\004\024y"
ip: "\300\250"
user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 16_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
url: "https://www.google.com"
detected_language: "te"
adslot {
id: 1
width: 1170
width: 768
height: 2532
height: 1024
excluded_attribute: 17
excluded_attribute: 26
allowed_vendor_type: 797
allowed_vendor_type: 38523
matching_ad_data {
billing_id: 82632801525
billing_id: 33577396948
minimum_cpm_micros: 200000
}
slot_visibility: ABOVE_THE_FOLD
ad_block_key: 8662832267
publisher_settings_list_id: 1529810617400603626
viewability: 99
click_through_rate: 0.75363326
video_completion_rate: 0.07627885
is_rewarded: true
allowed_ad_types: ALLOWED_AD_TYPE_VIDEO
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
api: MRAID_1
api: MRAID_2
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
supported_auction_environment: SERVER_SIDE_AUCTION
display_manager: "GoogleMobileAds-iOS"
display_manager_version: "7.55.0"
}
is_test: false
timezone_offset: 300
mobile {
app_id: "734009722"
is_app: true
is_interstitial_request: true
app_name: "Test App"
}
video {
videoad_start_delay: 0
max_ad_duration: 30000
video_ad_skippable: BLOCK_SKIPPABLE
allowed_video_formats: VIDEO_MP4
max_ads_in_pod: 2
end_cap_support: END_CAP_OPTIONAL
playback_method: CLICK_TO_PLAY
is_clickable: true
placement: INTERSTITIAL
protocols: VAST_2_0
protocols: VAST_3_0
is_livestream: false
playback_cessation_mode: COMPLETION_OR_USER
max_pod_duration_seconds: 30
plcmt: PLCMT_INTERSTITIAL
inferred_plcmt: PLCMT_INTERSTITIAL
}
geo_criteria_id: 2392
publisher_settings_list_id: 7852789180056851229
publisher_type: PUBLISHER_OWNED_AND_OPERATED
partner_id: 7934642581646184119
device {
device_type: HIGHEND_PHONE
platform: "iphone"
brand: "Apple"
model: "iPhone13,2"
os_version {
major: 16
minor: 5
}
carrier_id: 0
screen_width: 1170
screen_height: 2532
screen_pixel_ratio_millis: 3000
screen_orientation: PORTRAIT
hardware_version: "iPhone13,2"
limit_ad_tracking: false
connection_type: WIFI
}
publisher_country: "US"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 1000
google_query_id: "ANy-zz7hC6-w4hX445M724Cr7459S5M13Rw47SH672s9ygi8d8H1LN21ky6939KaU50lQsJR"
auction_type: FIRST_PRICE
geo {
lat: 36.2
lon: 138.25
country: "JPN"
utcoffset: 300
accuracy: 463340
}
user_agent_data {
platform {
brand: "iPhone"
version: "16"
version: "5"
}
mobile: true
model: "iPhone"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "605"
version: "1"
}
bitness: "64"
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_NONE
privacy_treatments {
allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
OpenRTB Protokol Arabelleği
Örneği göster
id: "378836oi92t144hpA8Nv3X"
imp {
id: "1"
video {
mimes: "video/mp4"
maxduration: 60
w: 375
h: 667
startdelay: 0
playbackmethod: AUTO_PLAY_SOUND_ON
pos: ABOVE_THE_FOLD
api: MRAID_1
api: MRAID_2
protocols: VAST_2_0
protocols: VAST_3_0
skip: false
placement: UNDEFINED_VIDEO_PLACEMENT
playbackend: COMPLETION_OR_USER
}
displaymanager: "GOOGLE"
instl: true
tagid: "4107980261"
bidfloor: 0.01
bidfloorcur: "USD"
secure: true
metric {
type: "click_through_rate"
value: 0.0364835150539875
vendor: "EXCHANGE"
}
metric {
type: "video_completion_rate"
value: 0.02888789027929306
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 80831705186
publisher_settings_list_id: 2080323352414623499
publisher_settings_list_id: 2258624117197706769
allowed_vendor_type: 342
allowed_vendor_type: 698
is_rewarded_inventory: true
ampad: AMP_AD_NOT_ALLOWED
skadn {
version: "2.2"
sourceapp: "532115234"
skadnetids: "E499wc36"
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
is_default: true
}
auction_environment: SERVER_SIDE_AUCTION
}
}
app {
name: "Test App"
bundle: "532115234"
publisher {
id: "pub-8927593002710190"
[com.google.doubleclick.publisher] {
country: "CN"
}
}
content {
url: "https://www.google.com"
livestream: false
language: "zh"
}
storeurl: "https://www.google.com"
[com.google.doubleclick.app] {
}
}
device {
ua: "Mozilla/5.0 (iPhone; CPU iPhone OS 15_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
ip: "192.168.1.0"
geo {
lat: 0.0
lon: 0.0
country: "CHN"
region: "CN-33"
city: "Hangzhou"
type: IP
accuracy: 44240
}
carrier: "70120"
make: "apple"
model: "iphone"
os: "iOS"
osv: "15.4.4"
devicetype: HIGHEND_PHONE
lmt: true
hwv: "8"
w: 375
h: 667
pxratio: 2.0
[com.google.doubleclick.device] {
user_agent_data {
platform {
brand: "iPhone"
version: "15"
version: "4"
}
mobile: true
model: "iPhone"
}
atts: 2
}
}
user {
[com.google.doubleclick.user] {
}
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
source {
[com.google.doubleclick.source] {
omidpn: "Google"
omidpv: "afma-sdk-i-v8.12.0"
schain {
complete: 1
nodes {
asi: "google.com"
sid: "pub-4000453616931440"
hp: 1
}
ver: "1.0"
}
}
}
[com.google.doubleclick.bid_request] {
google_query_id: "ANy-zp09u8-d20rQ521040dqz39K771Lr9102b031Z15C45Q9q7AB414SnDWG5Rj96Z77W66"
}
Uygulama yerel
Google
Örneği göster
id: "\304a\2145\337\260\351\265\0170E\035s\260\203\240\3645M\213d\231)"
ip: "\300\250"
user_agent: "Mozilla/5.0 (Linux; Android 14; SM-F711B Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/123.0.6312.118 Mobile Safari/537.36 (Mobile; afma-sdk-a-v241517039.241517039.0)"
url: "https://www.google.com"
detected_language: "nl"
adslot {
id: 1
excluded_attribute: 25
excluded_attribute: 114
allowed_vendor_type: 42
allowed_vendor_type: 79
excluded_sensitive_category: 36
excluded_sensitive_category: 27
matching_ad_data {
billing_id: 32132054378
billing_id: 19164334712
minimum_cpm_micros: 1450000
}
matching_ad_data {
billing_id: 13390832794
billing_id: 80810593642
minimum_cpm_micros: 78120000
}
slot_visibility: ABOVE_THE_FOLD
excluded_product_category: 10137
excluded_product_category: 10231
ad_block_key: 5513314873
publisher_settings_list_id: 3686438009801411181
publisher_settings_list_id: 2386502705811569074
allowed_restricted_category: 33
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
viewability: 81
allowed_restricted_category_for_deals: 33
click_through_rate: 0.026668096
allowed_languages: "en"
allowed_languages: "nl"
allowed_ad_types: ALLOWED_AD_TYPE_NATIVE
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_NOT_ALLOWED
session_depth: 166
consented_providers_settings {
tcf_consent_string: "OMITTED"
additional_consent_string: "OMITTED"
}
regs_gdpr: true
api: MRAID_1
api: MRAID_2
native_ad_template {
required_fields: 27
recommended_fields: 36
headline_max_safe_length: 25
body_max_safe_length: 90
call_to_action_max_safe_length: 15
advertiser_max_safe_length: 25
image_width: 800
image_height: 800
logo_width: 200
logo_height: 200
}
native_ad_template {
required_fields: 83
recommended_fields: 388
headline_max_safe_length: 25
body_max_safe_length: 90
call_to_action_max_safe_length: 15
image_width: 1200
image_height: 627
app_icon_width: 100
app_icon_height: 100
}
omidpn: "Google"
omidpv: "afma-sdk-a-v240304999.234310000.1"
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
supported_auction_environment: SERVER_SIDE_AUCTION
display_manager: "GoogleMobileAds-Android"
display_manager_version: "22.6.0"
}
is_test: false
cookie_version: 1
google_user_id: "7L986AX24bG4ANQ91i8sd54fB22"
timezone_offset: 120
mobile {
app_id: "com.google.testapp"
is_app: true
encrypted_advertising_id: "\341\220\325\205%\025\246_/\307\374fy\2062\270\270\204X\230\210@h\272\344\177\370\253e\367\262i=U\030$"
app_name: "Test App"
app_rating: 4.0450907
advertising_id: "\315\361Ro$|\362I\355\261:\265Z\300@\242"
}
cookie_age_seconds: 2592000
postal_code: "10011"
geo_criteria_id: 1001092
encrypted_hyperlocal_set: "\275\237\311:\263\326\270h\337^\013`/m\316\330\036\007\313\265\346\351\275\346<U\344#a\376\301\342\270\303\2767\310j%\327\351aA\312\200\247]IQ\241\341L\2431\215<\377\033V\310\230\305\371\025\032K\365\372\3365p|\353\216\251JSf\364\367\220H\232\342Cq\256\206<\236\311"
bid_response_feedback {
request_id: "\253\245\326\202\206\303q\202\307\016\257\236\317\rL\250"
creative_status_code: 80
event_notification_token: "token"
buyer_creative_id: "test_creative_id_658408"
minimum_bid_to_win: 120000
feedback_type: BID_FEEDBACK
}
publisher_type: PUBLISHER_OWNED_AND_OPERATED
hyperlocal_set {
hyperlocal {
corners {
latitude: 0.0
longitude: 0.0
}
corners {
latitude: 0.0
longitude: 0.0
}
corners {
latitude: 0.0
longitude: 0.0
}
corners {
latitude: 0.0
longitude: 0.0
}
}
center_point {
latitude: 0.0
longitude: 0.0
}
}
device {
device_type: HIGHEND_PHONE
platform: "android"
brand: "Samsung"
model: "SM-F711B"
os_version {
major: 14
}
carrier_id: 0
screen_width: 360
screen_height: 801
screen_pixel_ratio_millis: 3000
screen_orientation: PORTRAIT
limit_ad_tracking: false
connection_type: WIFI
}
publisher_country: "BE"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 300
google_query_id: "ANy-z01131-SRYIYklKNjC6Iw9Z99Jt2713Cf3WC111fe9wZa3e2wB0yC6A51Bt0R4x25142"
auction_type: FIRST_PRICE
geo {
lat: 50.89
lon: 4.28
country: "BEL"
region: "BE-VBR"
city: "Asse"
zip: "1731"
utcoffset: 120
accuracy: 2191
}
user_agent_data {
platform {
brand: "Android"
version: "14"
}
mobile: true
model: "SM-F711B"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "537"
version: "36"
}
bitness: "64"
source: USER_AGENT_STRING
}
supply_chain {
complete: true
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
nodes {
advertising_system_identifier: "testdomain.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection: false
}
inventory_partner_domain: "OMITTED"
OpenRTB JSON
Örneği göster
{
"id": "IDnDvM76w32NI830aSeOLg",
"imp": [
{
"id": "1",
"displaymanager": "GoogleMobileAds-iOS",
"displaymanagerver": "10.14.0",
"tagid": "8614649788",
"bidfloor": 1.63,
"bidfloorcur": "USD",
"secure": 1,
"native": {
"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]}]}",
"ver": "1.2",
"api": [
3,
5
],
"battr": [
6,
7
]
},
"exp": 14400,
"clickbrowser": 1,
"metric": [
{
"type": "viewability",
"value": 0.66,
"vendor": "EXCHANGE"
},
{
"type": "session_depth",
"value": 1,
"vendor": "EXCHANGE"
}
],
"ext": {
"billing_id": [
30567639040
],
"publisher_settings_list_id": [
9263869437120754969,
6380991891694941170
],
"allowed_vendor_type": [
42,
144
],
"ampad": 2,
"excluded_creatives": [
{
"buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
},
{
"buyer_creative_id": "EXCLUDED_BUYER_CREATIVE_ID"
}
],
"skadn": {
"sourceapp": "com.google.testapp",
"skadnetids": [
"345vh5bv"
],
"versions": [
"2.0",
"2.1"
],
"fidelities": [
1,
0
]
},
"creative_enforcement_settings": {
"policy_enforcement": 2,
"publisher_blocks_enforcement": 1
},
"auction_environment": 0,
"ae": 0
}
}
],
"app": {
"name": "Test App",
"bundle": "com.google.testapp",
"publisher": {
"id": "pub-5146744635924393",
"ext": {
"country": "US"
}
},
"content": {
"url": "https://www.google.com",
"livestream": 0,
"language": "en"
},
"storeurl": "https://www.google.com",
"ext": {
"inventorypartnerdomain": "OMITTED"
}
},
"device": {
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 PrebidMobile/2.0.4",
"ip": "192.168.1.0",
"geo": {
"lat": 0.0,
"lon": 0.0,
"country": "USA",
"region": "WA",
"metro": "881",
"city": "Quincy",
"zip": "98848",
"type": 2,
"utcoffset": -420,
"accuracy": 19022
},
"make": "Apple",
"model": "iPhone15,3",
"os": "iOS",
"osv": "17.4.1",
"connectiontype": 2,
"devicetype": 4,
"ifa": "76RVV351f5D7z7905j9Dhy5kawZNAvn548d3",
"lmt": 0,
"hwv": "iPhone15,3",
"w": 430,
"h": 932,
"pxratio": 3,
"sua": {
"browsers": [
{
"brand": "Mozilla",
"version": [
"5",
"0"
]
},
{
"brand": "AppleWebKit",
"version": [
"605",
"1"
]
}
],
"platform": {
"brand": "iPhone",
"version": [
"17",
"4"
]
},
"mobile": 1,
"bitness": "64",
"model": "iPhone",
"source": 3
},
"ext": {
"atts": 3
}
},
"user": {
"id": "V3G2P745W97j342y3bgMZzO8B19",
"ext": {
"session": {
"duration": 14
}
}
},
"at": 1,
"tmax": 300,
"cur": [
"USD"
],
"bcat": [
"IAB23-1",
"IAB9"
],
"bapp": [
"1427744264"
],
"source": {
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
},
"ext": {
"omidpn": "Google",
"omidpv": "afma-sdk-i-v10.14.0",
"schain": {
"complete": 1,
"nodes": [
{
"asi": "testssp.com",
"sid": "pub-1111111111111111",
"hp": 1
}
],
"ver": "1.0"
}
}
},
"ext": {
"google_query_id": "ANy-z70v0W-6x9m76YuuU237u44yc6fL3Ouo00tZhzmz1rL58xQr1V6tg59Qu5j2f4LEMbPZ",
"fcap_scope": 3,
"privacy_treatments": {
"allow_user_data_collection": 1
}
}
}
OpenRTB Protokol Arabelleği
Örneği göster
id: "5P52J8388TSRzc920ct7p5"
imp {
id: "1"
displaymanager: "GoogleMobileAds-iOS"
displaymanagerver: "10.14.0"
tagid: "6553352351"
bidfloor: 0.03
bidfloorcur: "USD"
secure: true
native {
ver: "1.2"
api: MRAID_1
api: MRAID_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
}
}
eventtrackers {
event: IMPRESSION
methods: IMG
}
}
}
exp: 3600
clickbrowser: true
metric {
type: "viewability"
value: 0.39
vendor: "EXCHANGE"
}
metric {
type: "session_depth"
value: 1.0
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 52078759229
billing_id: 88594274551
publisher_settings_list_id: 5866545268236998203
publisher_settings_list_id: 3494845642358232123
allowed_vendor_type: 42
allowed_vendor_type: 79
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: "200O3kQr"
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
}
}
app {
name: "Test App"
bundle: "com.google.testapp"
publisher {
id: "pub-9816179305584184"
[com.google.doubleclick.publisher] {
country: "LU"
}
}
content {
url: "https://www.google.com"
livestream: false
language: "uk"
}
storeurl: "https://www.google.com"
[com.google.doubleclick.app] {
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Mozilla/5.0 (iPhone; CPU iPhone OS 17_4_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148"
geo {
lat: 0.0
lon: 0.0
country: "UKR"
region: "UA-46"
city: "L\'viv"
zip: "79000"
type: IP
utcoffset: 180
accuracy: 6246
[com.google.doubleclick.geo] {
geo_criteria_id: 1012859
}
}
ipv6: "2a02:2378:106a::"
carrier: "71710"
make: "Apple"
model: "iPhone12,1"
os: "iOS"
osv: "17.4.1"
connectiontype: CELL_4G
devicetype: HIGHEND_PHONE
ifa: "b\'\\t:>vF\\xb9\\x9e4\\x86k\\xde\\x99\\xbe\\xb6\\x88\\x83\'"
lmt: false
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: "17"
version: "4"
}
mobile: true
bitness: "64"
model: "iPhone"
source: USER_AGENT_STRING
}
[com.google.doubleclick.device] {
atts: 3
}
}
user {
id: "8Er98D3U5PK59538kL30LhIZkab"
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
bcat: "IAB7-39"
bcat: "IAB9"
bapp: "1038653883"
bapp: "372513032"
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-v10.14.0"
schain {
complete: 1
nodes {
asi: "testssp.com"
sid: "pub-1111111111111111"
hp: 1
}
ver: "1.0"
}
}
}
[com.google.doubleclick.bid_request] {
google_query_id: "ANy-z0n8D1-K6FKO2zNI26Z4yp738UAjYOUTxw2V054413Lpv107q2A97RS96j68N9J53N9K"
fcap_scope: FREQUENCY_CAPPING_SCOPE_DEVICE
privacy_treatments {
allow_user_data_collection: false
}
}
Web videosu
Google
Örneği göster
id: "\350\243\202\2349\243\014\244\372\020Y;\r\007\031\214{\232\261\3752%\035"
ip: "\300\250"
user_agent: "Mozilla/5.0 (iPhone; CPU iPhone OS 14_8_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.2 Mobile/15E148 Safari/604.1"
url: "https://www.google.com"
detected_language: "ja"
adslot {
id: 1
width: 320
width: 360
height: 570
height: 592
excluded_attribute: 19
excluded_attribute: 13
allowed_vendor_type: 3
allowed_vendor_type: 42
excluded_sensitive_category: 36
excluded_sensitive_category: 4
matching_ad_data {
billing_id: 34223090460
minimum_cpm_micros: 16000000
direct_deal {
direct_deal_id: 17775265
fixed_cpm_micros: 16000000
deal_type: AUCTION_PACKAGE
}
}
matching_ad_data {
billing_id: 86280326995
billing_id: 71601885715
minimum_cpm_micros: 120000
}
slot_visibility: NO_DETECTION
excluded_product_category: 10137
excluded_product_category: 10609
ad_block_key: 5853321589
publisher_settings_list_id: 2539996898654608860
publisher_settings_list_id: 7335705698915428874
allowed_restricted_category: 33
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
excluded_creatives {
buyer_creative_id: "EXCLUDED_BUYER_CREATIVE_ID"
}
iframing_state: UNKNOWN_IFRAME_STATE
viewability: 100
allowed_restricted_category_for_deals: 33
click_through_rate: 0.5914875
renderer: GOOGLE
is_rewarded: true
allowed_ad_types: ALLOWED_AD_TYPE_VIDEO
is_amp_page: DIALECT_HTML
amp_ad_requirement_type: AMP_AD_ALLOWED_AND_NOT_EARLY_RENDERED
creative_enforcement_settings {
policy_enforcement: POLICY_ENFORCEMENT_NETWORK_AND_PLATFORM_POLICY
publisher_blocks_enforcement: PUBLISHER_BLOCKS_ENFORCEMENT_APPLIES
}
auction_environment: SERVER_SIDE_AUCTION
impression_expiration_seconds: 3600
}
is_test: false
mobile {
is_app: false
is_mobile_web_optimized: true
}
video {
video_ad_skippable: ALLOW_SKIPPABLE
allowed_video_formats: VIDEO_MP4
playback_method: CLICK_TO_PLAY
is_clickable: true
placement: INTERSTITIAL
protocols: VAST_2_0
protocols: VAST_3_0
playback_cessation_mode: COMPLETION_OR_USER
}
geo_criteria_id: 1009310
seller_network_id: 4766
bid_response_feedback {
request_id: "\327(\005>\257u\241U~\350s\211\010\3615\334"
creative_status_code: 80
event_notification_token: "token"
buyer_creative_id: "test_creative_id_702979"
minimum_bid_to_win: 328000000
}
publisher_type: PUBLISHER_OWNED_AND_OPERATED
device {
device_type: HIGHEND_PHONE
platform: "iphone"
brand: "apple"
model: "iphone"
os_version {
major: 14
minor: 8
micro: 1
}
carrier_id: 0
screen_width: 375
screen_height: 667
screen_pixel_ratio_millis: 2000
limit_ad_tracking: false
}
publisher_country: "JP"
publisher_id: "pub-1111111111111111"
response_deadline_ms: 300
google_query_id: "ANy-zd34Gv-NJ6B8Zsd8j4NV0r6F8P69920cL9Q88372fjS7EO9DQZ9Y69qUQ2l6L8R2M903"
auction_type: FIRST_PRICE
geo {
lat: 35.69
lon: 139.7
country: "JPN"
region: "JP-13"
city: "Shinjuku"
accuracy: 2852
}
user_agent_data {
platform {
brand: "iPhone"
version: "14"
version: "8"
}
mobile: true
model: "iPhone"
browsers {
brand: "Mozilla"
version: "5"
version: "0"
}
browsers {
brand: "AppleWebKit"
version: "605"
version: "1"
}
bitness: "64"
}
page_visibility: VISIBILITY_STATE_VISIBLE
supply_chain {
complete: true
nodes {
advertising_system_identifier: "google.com"
seller_identifier: "pub-1111111111111111"
handles_payment: true
}
version: "1.0"
}
frequency_capping_scope: FREQUENCY_CAPPING_SCOPE_SITE
privacy_treatments {
allow_user_data_collection: true
}
inventory_partner_domain: "OMITTED"
Exchange teklif vereni için mobil web banner'ı
OpenRTB Protokol Arabelleği
Örneği göster
id: "6gXB0gc0938Ow444j0j623"
imp {
id: "1"
banner {
w: 320
h: 50
pos: ABOVE_THE_FOLD
expdir: LEFT
expdir: RIGHT
expdir: UP
expdir: DOWN
format {
w: 320
h: 50
}
format {
w: 300
h: 50
}
}
tagid: "7128811473"
bidfloor: 0.01
bidfloorcur: "USD"
secure: true
exp: 3600
metric {
type: "click_through_rate"
value: 0.00012312238686718047
vendor: "EXCHANGE"
}
metric {
type: "viewability"
value: 0.98
vendor: "EXCHANGE"
}
[com.google.doubleclick.imp] {
billing_id: 46483683815
dfp_ad_unit_code: "/3253397/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
}
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
}
}
site {
page: "https://www.google.com"
publisher {
id: "pub-1111111111111111"
[com.google.doubleclick.publisher] {
country: "US"
}
}
content {
livestream: false
language: "en"
}
mobile: true
[com.google.doubleclick.site] {
amp: DIALECT_HTML
page_visibility: VISIBILITY_STATE_VISIBLE
inventorypartnerdomain: "OMITTED"
}
}
device {
ua: "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Mobile Safari/537.36"
ip: "192.168.1.0"
geo {
lat: 0.0
lon: 0.0
country: "IND"
region: "IN-MH"
city: "Mumbai"
zip: "400066"
type: IP
utcoffset: 330
accuracy: 1439
}
make: "Xiaomi"
model: "22120rn86i"
os: "android"
osv: "14"
devicetype: HIGHEND_PHONE
lmt: false
w: 360
h: 825
pxratio: 2.0
sua {
browsers {
brand: "Chromium"
version: "124"
version: "0"
}
browsers {
brand: "Google Chrome"
version: "124"
version: "0"
}
platform {
brand: "Android"
version: "14"
version: "0"
}
mobile: true
model: "22120RN86I"
source: CLIENT_HINTS_HIGH_ENTROPY
}
}
at: FIRST_PRICE
tmax: 300
cur: "USD"
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"
}
}
[com.google.doubleclick.bid_request] {
google_query_id: "ANy-z0k831-U6Nsse2Zs380x9jWlM98I735gC6c3602K1swV8ex1390yK9kO53353X64953A"
fcap_scope: FREQUENCY_CAPPING_SCOPE_BROWSER
}