İsteği İşleme
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Google, uygulamanıza bir teklif isteği gönderdiğinde gerçek zamanlı 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.
Ayrıştırma isteği
Google, OpenRTB JSON veya Protobuf biçimlerinde serileştirilmiş bir teklif isteğini HTTP POST isteğinin yükü olarak eklenmiş şekilde 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 değerini almak için bu isteği ayrıştırmanız gerekir. Protobuf biçimini kullanıyorsanız openrtb.proto ve openrtb-adx.proto dosyalarını referans verileri sayfasından indirmeniz ve BidRequest mesajını ayrıştırmak için kullanılabilecek bir kitaplık oluşturmak üzere kullanmanız gerekir. Örneğin, aşağıdaki C++ kodu, bir dizede POST yükü verilmiş bir isteği ayrıştırır:
BidRequest elde ettikten sonra bunu bir nesne olarak kullanabilir, ihtiyacınız olan alanları ayıklayıp yorumlayabilirsiniz. Örneğin, C++'ta OpenRTB `BidRequest` içindeki fırsatları yinelemek aşağıdaki gibi görünebilir:
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
alanı, uygun alıcıların faturalandırma kimlikleri 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ılarla ilişkili faturalandırma kimliklerini bulabilirsiniz. Teklif verilirken yalnızca teklif isteğine dahil edilen alıcıların faturalandırma kimlikleri belirtilebilir.
Teklif isteğinde birden fazla faturalandırma kimliği varsa teklifinizi ilişkilendirmek istediğiniz alıcının faturalandırma kimliğini BidResponse.seatbid.bid.ext.billing_id alanı ile belirtmeniz gerekir.
imp {
ext {
// The billing IDs of all of your matching pretargeting configs and eligible child seats are
// stored in a flat list here.
billing_id: 123
billing_id: 456
billing_id: 789
}
pmp {
// All eligible deals are stored in a single flat list.
deal {
id: 1000
ext {
// The specific billing IDs eligible to bid on this deal are indicated here.
billing_id: 789
}
...
}
deal {
id: 2000
ext {
billing_id: 123
billing_id: 456
}
...
}
}
...
}
...
Engellenen kategorileri belirleme
Teklif verdiğinizde, dahil edilen reklam öğesinde yayıncının engellediği kategoriler algılanmamış olmalıdır. Aksi takdirde teklif, açık artırmadan filtrelenir.
Bir gösterim için engellenen kategorileri, hesabınız için yapılandırılan taksonomideki kategorilerle doldurulan BidRequest.bcat alanını inceleyerek bulabilirsiniz.
Aşağıdaki örnekte, yapılandırılmış bir reklam kategorisi sınıflandırmasına göre engellenen kategoriler gösterilmektedir:
IAB İçerik Sınıflandırması 1.0
// Bid request{// Indicates the blocked categories using IAB Content 1.0 Taxonomy."bcat":["IAB9-9",// Cigars"IAB8-18"// Wine]"imp":{...}}
Google Reklam Kategorisi Sınıflandırması
// Bid request{// Indicates the blocked categories using Google Ad Category Taxonomy."bcat":["10138",// Cigar and tobacco collecting"10080",// Tobacco"11649",// Wine"10674",// Wine collecting"13008"// Wine clubs]"imp":{...}}
Sözlük dosyaları
Teklif isteğinde, referans verileri sayfasında bulunan sözlük dosyalarında tanımlanan tanımlayıcılar kullanılır.
Teklif veren URL makroları
İsteğe bağlı olarak, BidRequest öğesindeki bazı bilgiler makrolar kullanılarak teklif uç noktası URL'lerine eklenebilir. Bir veya daha fazla makro içeren bir uç nokta URL'si yapılandırırsanız bu bilgiler teklif isteğinde mevcutsa makrolar genişletilir. Örneğin, BidRequest içindeki bilgilere göre yük dengeleme yapmak istiyorsanız bu özellikten yararlanabilirsiniz.
Yeni makrolar için destek isteğinde bulunmak üzere hesap yöneticinizle iletişime geçin.
Makro
Açıklama
%%GOOGLE_USER_ID%%
BidRequest.user.id içinde bulunan Google kullanıcı kimliğiyle değiştirildi. Ö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. Sonuç,
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
Teklif isteğinin bir mobil cihazdan geldiğini belirtmek için 1 ile, aksi takdirde 0 ile değiştirildi. 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, aksi takdirde 0 ile değiştirildi. Bu, teklif isteğinde BidRequest.imp.video değerinin doldurulup doldurulmadığına bağlıdır.
%%HOSTED_MATCH_DATA%%
BidRequest.user.buyeruid temel alınarak belirlenen bir değerle değiştirilir.
%%MOBILE_IS_APP%%
Teklif isteğinin mobil uygulama envanteri için olduğunu belirtmek üzere 1 ile, aksi takdirde 0 ile değiştirildi. Bu, BidRequest.app alanının 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ış kısmını (gewtimrzgyytanjyg4888888) çözmek için 32 tabanlı kod çözücü kullanın.
Online bir kod çözücü kullanabilirsiniz ancak harfleri büyük yazmanız ve sondaki 8 karakterlerini = değerleriyle değiştirmeniz gerekir.
Bu değeri çözdüğümüzde:
GEWTIMRZGYYTANJYG4======
sonucunu verir:
1-429610587
429610587 dizesi, iOS uygulaması iFunny'nin uygulama kimliğidir.
Başka bir örnek gösterelim. Bildirilen URL:
mbappgewtgmjug4ytmmrtgm888888.com
Bu değerin kodu çözüldüğünde:
GEWTGMJUG4YTMMRTGM======
sonucunu verir:
1-314716233
Sonuç 314716233, iOS uygulaması
TextNow'ın uygulama kimliğidir.
İşlem URL'sinden mobil uygulama adını bulma
Uygulama adını alma örneğini burada görebilirsiniz. Bildirilen URL şu şekildedir:
Sonuç, Android uygulaması
slither.io ile eşleşiyor.
Open Bidding alanları
Open Bidding'e katılan exchange ve ağ teklif verenlere gönderilen teklif istekleri, standart gerçek zamanlı teklif verme işlemine katılan Authorized Buyers'ın teklif isteklerine benzer. Open Bidding müşterileri, az sayıda ek alan alacak ve mevcut alanlardan bazıları alternatif kullanımlara sahip olabilecek. Bu
politikalara şunlar dahildir:
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 içerir. Reklam birimi hiyerarşisi, eğik çizgilerle ayrılır.
Örneğin, bu ifade şu biçimlendirmeye benzer şekilde görünür:
/1234/cruises/mars.
BidRequest.user.data.segment
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.
İzin verilen tedarikçi firmaları bildirme
Araştırma, yeniden pazarlama ve reklam yayınlama gibi hizmetler sağlayan teknoloji tedarikçileri, alıcılar ve satıcılar arasındaki etkileşimde rol oynayabilir. Yalnızca Google'ın Authorized Buyers etkileşimlerine katılım için incelediği sağlayıcılara izin verilir.
BidRequest anlamak ve BidResponse oluşturmak için teknoloji tedarikçilerini bildirme konusunda iki farklı olasılık olduğunu bilmeniz gerekir:
BidRequest alanında, BidRequest.imp.ext.allowed_vendor_type alanı satıcının izin verdiği tedarikçileri belirtir.
allowed_vendor_type içinde gönderilecek satıcılar,
vendors.txt
sözlük dosyasında listelenir.
Örnek teklif isteği
Aşağıdaki örnekler, Protobuf ve JSON isteklerinin insan tarafından okunabilir örneklerini temsil etmektedir.
Teklif isteğini, gerçek bir istekteki POST yükünden alacağınız gibi ikili biçime dönüştürmek için aşağıdakileri yapabilirsiniz (C++'da). Ancak bunun OpenRTB JSON için geçerli olmadığını unutmayın.
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.
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ığı ya da açık artırmayı kazanmak için gereken minimum teklif gibi ayrıntıları bulmak için kullanılabilir. Anlık geri bildirim özelliğini etkinleştirmek için hesap yöneticinizle iletişime geçin.
Teklif yanıtı geri bildiriminde 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 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 yalnızca teklif veren tarafından bilinen, 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 teklif isteğinde yanıta ilişkin geri bildirimi BidFeedback mesajıyla gönderir:
messageBidFeedback{//TheuniqueidfromBidRequest.id.optionalstringrequest_id=1;//Thestatuscodeforthead.Seecreative-status-codes.txtinthe//technicaldocumentationforalistofids.optionalint32creative_status_code=2;//Deprecated.ThisfieldisnotpopulatedandwillberemovedafterMarch,//2025.Ifthebidwontheauction,thisisthepricepaidinyouraccount//currency.Ifthebidparticipatedintheauctionbutwasout-bid,this//istheCPMthatshouldhavebeenexceededinordertowin.Thisisnot//setifthebidwasfilteredpriortotheauction,ifthepublisheror//winningbidderhasoptedoutofpricefeedbackorifyouraccounthas//optedoutofsharingwinningpriceswithotherbidders.Forfirst-price//auctions,minimum_bid_to_winispopulatedinsteadofthisfield.optionaldoubleprice=3[deprecated=true];//Theminimumbidvaluenecessarytohavewontheauction,inyouraccount//currency.Ifyourbidwontheauction,thisisthesecondhighestbid//thatwasnotfiltered(includingthefloorprice).Ifyourbiddidn't win//theauction,thisisthewinningcandidate's bid. This field will only be//populatedifyourbidparticipatedinafirst-priceauction,andwillnot//bepopulatedifyourbidwasfilteredpriortotheauction.optionaldoubleminimum_bid_to_win=6;//Deprecated.ThisfieldwillberemovedinFebruary2026.//Theminimumbidvaluenecessarytohavewontheserver-sidecomponentof//theoverallauctiongiventhattherewasalsoaninterestgroupbidding//componenttotheoverallauctionwhichranusingtheProtectedAudience//API.ThevalueisexpressedinCPMofthebuyeraccountcurrency.The//minimumbidtowinfortheoverallauction,includingbidsfromthe//server-sideandtheon-deviceinterestgroupcomponents,ispopulatedin//theminimum_bid_to_winfieldofthesameBidFeedbackobject.optionaldoublesscminbidtowin=14[deprecated=true];//Billableeventratemultiplierthatwasappliedtothisbidduring//ranking.Theadjustmentreflectsthelikelihoodthatyourbidwould//generateabillableevent(namely,theadrenderssuccessfully)ifitwon//theauction,relativetotheprobabilitythatotherbidsgeneratea//billableeventiftheywontheauction.Thisadjustmentcanbelargeror//smallerthan1.Thisaffectsthefinalrankingintheauctiononly;in//particular,thismultiplierdoesnotaffectthepaymentorwhetherthe//bidclearsanyfloorprice.optionalfloatbillable_event_rate_bid_adjustment=13[default=1];//WhenapublisherusesanRTBauctionandwaterfall-basedSDKmediationon//thesamequery,thewinnerofthereal-timeauctionmustalsocompetein//amediationwaterfall(whichisorderedbyprice)towintheimpression.//Ifthebidparticipatedintheauctionandtherewasnowaterfall,the//valueofthisfieldis0.Ifthebidparticipatedintheauctionand//therewasawaterfall,thevalueofthisfieldisapricerepresentinga//samplebidfromtheeligiblemediationnetworksthatwerehigherthanthe//auctionwinner,weightedbyexpectedfillrate.Thisfieldcanbeused//inconjunctionwithminimum_bid_to_wintotrainbiddingmodels.TheCPM//isinyouraccountcurrency.optionaldoublesampled_mediation_cpm_ahead_of_auction_winner=8;messageEventNotificationToken{//Thecontentsofthetoken.optionalstringpayload=1;}//Thetokenincludedinthecorrespondingbid.optionalEventNotificationTokenevent_notification_token=4;//ThecreativeIDincludedinthecorrespondingbid.optionalstringbuyer_creative_id=5;//Possibletypesofbidresponsefeedbackobjects.enumFeedbackType{FEEDBACK_TYPE_UNSPECIFIED=0;//Feedbackforabidthatwassubmittedonabidresponse.BID_FEEDBACK=1;//Feedbackforaninterestgroupbuyersubmittedonabidresponseto//particpateinaninterestgroupbiddingcomponentoftheauctionrun//usingtheProtectedAudienceAPI.INTEREST_GROUP_BUYER_FEEDBACK=2;}//Deprecated.ThisfieldwillberemovedinFebruary2026.//ThetypeoftheBidFeedbackmessage.Googlewillsendseparate//BidFeedbackobjectsfor://a)Eachbidsubmittedonabidresponse//b)Eachbuyersubmittedonabidresponsetoparticpateinaninterest//groupbiddingcomponentoftheauctionrunusingtheProtectedAudience//API.optionalFeedbackTypefeedbacktype=15[deprecated=true];//Deprecated.ThisfieldwillberemovedinFebruary2026.//Originofaninterestgroupbuyerthatwasincludedinthebidresponse.//Thisfieldispopulatedonlyforfeedbackwhereabidderoptedinan//interestgroupbuyertoparticipateintheinterestgroupbidding//componentoftheoverallauctionrunusingtheProtectedAudienceAPI.//Tolearnmoreaboutorigins,seehttps://www.rfc-editor.org/rfc/rfc6454.//TolearnmoreaboutinterestgroupbiddingandtheProtectedAudience//API,see//https://developers.google.com/authorized-buyers/rtb/fledge-origin-trial.optionalstringbuyerorigin=16[deprecated=true];//Deprecated.ThisfieldwillberemovedinFebruary2026.//Thestatuscodeforthesubmittedinterestgroupbuyer.Thisfieldis//onlypopulatedinthefeedbackforaninterestgroupbuyerthatabidder//requestedtoenterintotheinterestgroupauctionthroughthebid//response.Individualcreativestatuscodesofbidssubmittedbythebuyer//intheon-deviceinterestgroupauctionarenotavailable.See//https://storage.googleapis.com/adx-rtb-dictionaries/interest-group-buyer-status-codes.txt//foralistofinterestgroupbuyerstatuscodes.optionalint32igbuyerstatus=17[deprecated=true];}
Bu mesajda kontrol etmeniz gereken ilk alan bid_feedback.creative_status_code'dı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 Nasıl devre dışı bırakılır? başlıklı makaleyi inceleyin.
Gerçek zamanlı geri bildirimde teklif isteği kimliği ve aşağıdakilerden biri yer alır:
Açık artırma sonucu
Anlık geri bildirim
Alıcı teklif göndermedi.
Hiç.
Alıcı, açık artırmaya ulaşmadan önce filtrelenen bir teklif gönderdi.
İ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 filtrelenmediyse 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 verme mantığınızı bilgilendirmek için kullanılabilir.
minimum_bid_to_win: Gerçek zamanlı teklif açık artırmasını kazanmak için verilebilecek minimum teklif. Açık artırmayı kazandıysanız bu değer, kazanmaya devam ederken verebileceğiniz en düşük teklif olur. Açık artırmayı kaybettiyseniz bu, kazanan teklif olur.
sampled_mediation_cpm_ahead_of_auction_winner: Uyumlulaştırma zincirinde başka ağlar varsa bu alanın değeri, açık artırma kazananından daha yüksek olan uygun uyumlulaştırma ağlarından birinin örnek teklifini temsil eden ve beklenen doluluk oranına göre ağırlıklandırılmış bir fiyattır. Uyumlulaştırma zincirindeki ağlardan hiçbirinin doldurması beklenmiyorsa veya yayıncı SDK uyumlulaştırması 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 üzere 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 sırada gösterilmektedir:
\[C_1, C_2, …, C_n\]
Aşağıda, aracılık zincirindeki BGBM'ler için karşılık gelen doldurma oranları gösterilmektedir:
\[f_1, f_2, …, f_n\]
Aşağıda, verilen doldurma oranına göre, beklenen BGBM'yi ve bunun aracılık zinciri öğesinden \(i\)elde edilme olasılığını belirlemek için kullanılan bir işlev verilmiştir:
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ı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\%\)
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ı (W)
1,00 ABD doları
Açık Artırma İkincisi (R)
0,05 ABD doları
Açılış fiyatı / taban fiyat (F)
0 ABD doları
Açık artırmayı kazanan teklif
Aşağıda, kazanılan 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.
Aşağıda, kaybedilen 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\%\)
Teklif birleştirme
Teklif birleştirme, tek bir karmaşık BidRequest öğesinin uygulamanıza gönderilen birden fazla teklif isteği olarak işlenmesini 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 orijinal teklif isteğinin 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.
Reklam biçimleri
Bazı reklam fırsatları birden fazla biçimi kabul edebilir. Teklif birleştirme ile her biçim, ayrı bir teklif isteğinde gönderilir. Bu teklif isteğinde, uygun faturalandırma kimlikleri gibi özellikler, istekte belirtilen biçimle alakalıdır.
Aşağıdaki biçimleri içeren teklif istekleri ayrı teklif istekleri halinde birleştirilir:
Banner
Video
Ses
Yerel biçim
Reklam biçimi düzleştirme örneği
Aşağıda, eşdeğer bir düzleştirilmiş istek grubuyla karşılaştırıldığında reklam biçimi düzleştirme içermeyen basitleştirilmiş bir OpenRTB JSON teklif isteğini gösteren bir örnek verilmiştir:
Belirli bir teklif veren için reklam fırsatı, açık artırmaya ek olarak çeşitli anlaşma türleri için geçerli olabilir. Anlaşmalar için teklif düzleştirme özelliği kullanıldığında, açık artırma için bir teklif isteği, sabit fiyatlı anlaşmaların her türü için ise birer teklif isteği gönderilir. Uygulamada, 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 açık artırmada hem de sabit fiyatlı anlaşmada kullanılabilen belirli bir video reklam fırsatı için teklif veren, maksimum reklam süresi ve atlanabilir reklamlara izin verilip verilmediği gibi kısıtlamaların farklı olabileceği her biri için ayrı teklif istekleri alır. Sonuç olarak, reklam fırsatına uygulanan düzleştirme, açık artırma ve sabit fiyatlı anlaşmayla ilgili reklam kısıtlamalarını daha kolay ayırt etmenizi sağlar.
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ştirme özelliğini kullanır.
Aşağıda, atlanamayan bir reklamın maksimum süresi 15 ve atlanabilir bir reklamın maksimum süresi 60 olduğunda video envanterinin nasıl düzleştirildiğine dair bir örnek verilmiştir.
Örnek
max_ad_duration
skip (doğru VEYA yanlış)
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 birleştirme işlemi yalnızca aşağıdaki koşullar karşılandığında gerçekleşir:
İstek videoya izin veriyor.
Hem atlanabilir hem de atlanamayan videolara izin verilir ve ilgili 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.
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ürelerle hem atlanabilir hem de atlanamayan video reklamlara izin verdiğinde skip, true olarak ayarlanır ve maxduration, atlanabilir ve atlanamayan reklam sınırlamaları arasında daha kısa olan süreye ayarlanır.
Video kapsülleri
Birden fazla reklam fırsatı içeren bir video kapsülü için teklif istekleri birleştirilir. Böylece her teklif isteği, söz konusu kapsüldeki ayrı bir reklam fırsatı için olur.
Bu sayede, belirli bir kapsül için birden fazla reklam fırsatına teklif verebilirsiniz.
Open Measurement
Open Measurement, mobil uygulama ortamlarında yayınlanan reklamlar için bağımsız ölçüm ve doğrulama hizmetleri sağlayan üçüncü taraf tedarikçileri belirtmenize olanak tanır.
Bir yayıncının teklif isteğinde Açık Ölçüm'ü destekleyip desteklemediğini, 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 ederek belirleyebilirsiniz. Bu, biçime bağlı olarak Banner veya Video için battr özelliği altında bulunur.
Open Measurement sinyalleri içeren teklif isteklerini yorumlama hakkında daha fazla bilgi için Open Measurement SDK Yardım Merkezi makalesini inceleyin.
Örnek teklif istekleri
Aşağıdaki bölümlerde, farklı reklam türleri için örnek teklif istekleri gösterilmektedir.
[null,null,["Son güncelleme tarihi: 2026-01-20 UTC."],[],["Bid requests are HTTP POSTs using OpenRTB Protobuf, replacing the deprecated Google RTB protocol. Parsing involves `ParseFromString()` to access fields in the `BidRequest` object. Billing IDs, found in `BidRequest.imp.ext.billing_id` and `BidRequest.imp.pmp.deal.ext.billing_id`, must be specified in `BidResponse.seatbid.bid.ext.billing_id`. Key information comes from dictionary files. Bid URL macros dynamically insert `BidRequest` data. Complex bid requests can be broken into simpler, flattened requests per format or deal, such as skippable/non-skippable video ads, or video pods. Bidders get real-time feedback. The provided sample requests are used to help the process.\n"]]