Anfrage verarbeiten
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Eine Echtzeitgebotsinteraktion beginnt, wenn Google eine Gebotsanfrage an Ihre Anwendung sendet. In diesem Leitfaden wird beschrieben, wie Sie Ihre Anwendung so programmieren, dass die Gebotsanfrage verarbeitet wird.
Anfrage zum Parsen
Google sendet eine Gebotsanfrage, die entweder im OpenRTB-JSON- oder im Protobuf-Format serialisiert und als Nutzlast einer HTTP-POST-Anfrage angehängt ist. Das empfangene Format hängt von der Konfiguration Ihres Endpunkts ab. Beispiel für eine Gebotsanfrage
Sie müssen diese Anfrage parsen, um die serialisierte BidRequest zu erhalten. Wenn Sie das Protobuf-Format verwenden, müssen Sie openrtb.proto und openrtb-adx.proto von der Seite Referenzdaten herunterladen und damit eine Bibliothek generieren, mit der die BidRequest-Nachricht geparst werden kann. Mit dem folgenden C++-Code wird beispielsweise eine Anfrage mit einem POST-Payload in einem String geparst:
Sobald Sie das BidRequest haben, können Sie es als Objekt verwenden und die benötigten Felder extrahieren und interpretieren. In C++ könnte das Durchlaufen von Deals in einer OpenRTB-`BidRequest` beispielsweise so aussehen:
Sie erhalten eine Gebotsanfrage, wenn das Anzeigeninventar eines Publishers auf eine oder mehrere Ihrer
Pre-Targeting-Konfigurationen ausgerichtet ist. BidRequest.imp.ext.billing_id wird mit den Abrechnungs-IDs aller infrage kommenden Käufer und relevanten Pretargeting-Konfigurationen gefüllt. Außerdem können Sie für Deal-Inventar mit BidRequest.imp.pmp.deal.ext.billing_id Abrechnungs-IDs finden, die mit den entsprechenden Käufern verknüpft sind. Beim Abgeben eines Gebots dürfen nur Abrechnungs-IDs von Käufern angegeben werden, die in der Gebotsanfrage enthalten sind.
Wenn in der Gebotsanfrage mehrere Abrechnungs-IDs enthalten sind, müssen Sie mit dem Feld BidResponse.seatbid.bid.ext.billing_id die Abrechnungs-ID des Käufers angeben, dem Sie Ihr Gebot zuordnen möchten.
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
}
...
}
}
...
}
...
Blockierte Kategorien ermitteln
Wenn Sie ein Gebot abgeben, dürfen für das enthaltene Creative keine Kategorien erkannt worden sein, die vom Publisher blockiert wurden. Andernfalls wird das Gebot aus der Auktion herausgefiltert.
Die blockierten Kategorien für eine Impression finden Sie im Feld BidRequest.bcat. Dieses Feld wird mit Kategorien aus der Taxonomie gefüllt, die für Ihr Konto konfiguriert ist.
Im folgenden Beispiel sehen Sie blockierte Kategorien basierend auf einer konfigurierten Anzeigenkategorietaxonomie:
Version 1.0 der IAB-Taxonomie für Inhalte
// Bid request{// Indicates the blocked categories using IAB Content 1.0 Taxonomy."bcat":["IAB9-9",// Cigars"IAB8-18"// Wine]"imp":{...}}
Google-Taxonomie für Anzeigenkategorien
// 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":{...}}
Wörterbuchdateien
In der Gebotsanfrage werden Kennungen verwendet, die in Wörterbuchdateien definiert sind. Diese sind auf der Seite Referenzdaten verfügbar.
URL-Makros für Gebote
Optional können einige Informationen aus BidRequest mithilfe von Makros in die URLs von Gebotsendpunkten eingefügt werden. Wenn Sie eine Endpunkt-URL mit einem oder mehreren Makros konfigurieren, werden diese erweitert, sofern die entsprechenden Informationen in der Gebotsanfrage enthalten sind. Das kann beispielsweise nützlich sein, wenn Sie den Lastenausgleich anhand von Informationen in der BidRequest durchführen möchten.
Wenden Sie sich an Ihren Account Manager, um Unterstützung für neue Makros anzufordern.
Macro
Beschreibung
%%GOOGLE_USER_ID%%
Wird durch die Google-Nutzer-ID in BidRequest.user.id ersetzt. Die Bieter-URL http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%% wird beispielsweise bei der Anfrage durch http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl ersetzt.
Wenn die Google-Nutzer-ID unbekannt ist, wird der leere String eingesetzt, mit einem Ergebnis ähnlich dem folgenden:
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
Wird durch 1 ersetzt, um anzugeben, dass die Gebotsanfrage von einem Mobilgerät stammt, oder durch 0, wenn dies nicht der Fall ist. Dies basiert auf dem Wert von BidRequest.device.devicetype, wobei Mobilgeräte durch HIGHEND_PHONE (4) oder Tablet (5) angegeben werden.
%%HAS_VIDEO%%
Wird durch 1 ersetzt, wenn die Gebotsanfrage Videoinventar enthält, andernfalls durch 0. Das hängt davon ab, ob BidRequest.imp.video in der Gebotsanfrage enthalten ist.
%%HOSTED_MATCH_DATA%%
Wird durch einen Wert basierend auf BidRequest.user.buyeruid ersetzt.
%%MOBILE_IS_APP%%
Wird durch 1 ersetzt, um anzugeben, dass die Gebotsanfrage für Inventar in mobilen Apps gilt. Andernfalls wird 0 verwendet. Dies hängt davon ab, ob BidRequest.app ausgefüllt ist.
App-ID anhand der Transaktions-URL ermitteln
Bei Transaktionen in mobilen Apps werden URLs gemeldet, die so aussehen:
mbappgewtimrzgyytanjyg4888888.com
Verwenden Sie einen Base32-Decoder, um den fettgedruckten Teil des Strings (gewtimrzgyytanjyg4888888) zu decodieren.
Sie können einen Onlinedecoder verwenden, müssen aber die Buchstaben in Großbuchstaben umwandeln und nachgestellte 8-Werte durch =-Werte ersetzen.
So wird dieser Wert decodiert:
GEWTIMRZGYYTANJYG4======
führt zu:
1-429610587
Der String 429610587 ist die App-ID für die iOS-App iFunny.
Ein weiteres Beispiel: Die gemeldete URL lautet:
mbappgewtgmjug4ytmmrtgm888888.com
Diesen Wert decodieren:
GEWTGMJUG4YTMMRTGM======
führt zu:
1-314716233
Das Ergebnis 314716233 ist die App-ID für die iOS-App TextNow.
Namen von mobilen Apps anhand der Transaktions-URL ermitteln
Hier ist ein Beispiel für das Abrufen des App-Namens. Die gemeldete URL lautet:
Das Ergebnis entspricht der Android-App slither.io.
Open Bidding-Felder
Gebotsanfragen, die an Anzeigenplattformen und Netzwerkbieter gesendet werden, die an Open Bidding teilnehmen, ähneln denen von Authorized Buyers, die an standardmäßigen Echtzeitgeboten teilnehmen. Open Bidding-Kunden erhalten eine kleine Anzahl zusätzlicher Felder und einige vorhandene Felder können alternative Verwendungszwecke haben. Dazu gehören:
OpenRTB
Details
BidRequest.imp.ext.dfp_ad_unit_code
Enthält den Ad Manager-Netzwerkcode des Publishers, gefolgt von der Anzeigenblockhierarchie, getrennt durch Schrägstriche.
Ein Beispiel dafür, wie das mit Formatierung aussehen könnte:
/1234/cruises/mars.
BidRequest.user.data.segment
Wiederholte Schlüssel/Wert-Paare, die vom Publisher an den Anzeigenplattform-Bieter gesendet werden.
Sie können festlegen, dass die Werte Schlüssel/Wert-Paare sind, die vom Publisher gesendet werden, wenn BidRequest.user.data.name auf “Publisher Passed” gesetzt ist.
Zulässige Anbieter deklarieren
Technologieanbieter, die Dienste wie Marktforschung, Remarketing und Anzeigenbereitstellung anbieten, können eine Rolle bei der Interaktion zwischen Käufern und Verkäufern spielen. Nur Anbieter, die von Google für die Teilnahme an Authorized Buyers-Interaktionen geprüft wurden, sind zulässig.
Um die BidRequest zu verstehen und Ihre BidResponse zu erstellen, müssen Sie die beiden verschiedenen Möglichkeiten zum Deklarieren von Technologieanbietern kennen:
Andere Anbieter können nur teilnehmen, wenn sie in der BidRequest angegeben sind:
Im BidRequest gibt das Feld BidRequest.imp.ext.allowed_vendor_type an, welche Anbieter der Verkäufer zulässt. Anbieter, die in der allowed_vendor_type gesendet werden, sind in der Wörterbuchdatei vendors.txt aufgeführt.
Beispiel für eine Gebotsanfrage
Die folgenden Beispiele sind für Menschen lesbare Beispiele für die Protobuf- und JSON-Anfragen.
So können Sie die Gebotsanfrage in ein Binärformat konvertieren, wie Sie es von der POST-Nutzlast in einer echten Anfrage erhalten würden (in C++). Dies gilt jedoch nicht für OpenRTB-JSON.
Echtzeit-Feedback ist für Authorized Buyers-Nutzer sowie für Anzeigenplattformen und Netzwerke verfügbar, die Open Bidding verwenden.
Echtzeit-Feedback wird in BidRequest.ext.bid_feedback auf Grundlage des Ergebnisses eines oder mehrerer Gebote, die Sie zuvor abgegeben haben, eingefügt. Es kann verwendet werden, um Details wie das Ergebnis des Gebots in der Auktion oder das Mindestgebot zu ermitteln, das erforderlich gewesen wäre, um die Auktion zu gewinnen. Wenden Sie sich an Ihren Account Manager, um Echtzeit-Feedback zu aktivieren.
Zusätzlich zu den Standardfeldern, die im Feedback zur Gebotsantwort gesendet werden, können Sie auch benutzerdefinierte Daten in der Gebotsantwort über das Feld BidResponse.seatbid.bid.ext.event_notification_token senden. Die event_notification_token sind beliebige Daten, die nur dem Bieter bekannt sind und die beim Debuggen helfen können, z. B. eine neue Targeting-ID oder eine Gebots-ID, die eine neue Taktik darstellt, oder Metadaten, die nur dem Bieter bekannt sind und mit dem Creative verknüpft sind. Weitere Informationen finden Sie in der OpenRTB Extensions Protocol Buffer file.
Wenn Authorized Buyers eine Gebotsanfrage an einen Bieter sendet, antwortet dieser mit einem BidResponse. Wenn der Bieter Echtzeit-Feedback aktiviert hat, sendet Authorized Buyers in einer nachfolgenden Gebotsanfrage Feedback zur Antwort in einer BidFeedback-Nachricht:
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];}
Das erste Feld, das Sie in dieser Meldung prüfen sollten, ist bid_feedback.creative_status_code. Die Bedeutung des Codes finden Sie in
creative-status-codes.txt. Wenn Sie das Gebot gewinnen, können Sie das Preis-Feedback deaktivieren. Weitere Informationen finden Sie unter Deaktivierung.
Das Echtzeit-Feedback enthält die Gebotsanfrage-ID und eine der folgenden Informationen:
Auktionsergebnis
Feedback in Echtzeit
Der Käufer hat kein Gebot abgegeben.
Nichts.
Der Käufer hat ein Gebot abgegeben, das herausgefiltert wurde, bevor es die Auktion erreicht hat.
Nachdem Sie ein Gebot in einer Erstpreisauktion abgegeben haben, erhalten Sie Echtzeit-Feedback, einschließlich der Felder minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner, wenn das Gebot nicht aus der Auktion herausgefiltert wurde. Anhand dieser Signale lässt sich die Gebotslogik so anpassen, dass Sie das Gebot erhöhen oder senken können, um den Impression zu gewinnen.
minimum_bid_to_win: Das Mindestgebot, das hätte abgegeben werden können, um die Echtzeitauktion zu gewinnen. Wenn Sie die Auktion gewonnen haben, ist dies das niedrigste Gebot, das Sie hätten abgeben können, um trotzdem zu gewinnen. Wenn Sie die Auktion verloren haben, ist dies das Höchstgebot.
sampled_mediation_cpm_ahead_of_auction_winner: Wenn es andere Netzwerke in der Vermittlungskette gibt, ist der Wert dieses Felds ein Preis, der ein Beispielgebot von einem der infrage kommenden Vermittlungsnetzwerke darstellt, das höher als das Gebot des Auktionsgewinners war. Er wird nach der erwarteten Ausfüllrate gewichtet. Dieser Wert wird auf 0 gesetzt, wenn keine der Netzwerke in der Vermittlungskette Anzeigen ausliefern sollen oder wenn der Publisher keine SDK-Vermittlung verwendet.
Funktionsweise
Um die Berechnungen zu beschreiben, mit denen die möglichen Werte für minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner ermittelt werden, müssen wir zuerst Folgendes definieren:
Im Folgenden sind die CPMs in der Vermittlungskette in absteigender Reihenfolge aufgeführt:
\[C_1, C_2, …, C_n\]
Die entsprechenden Fill-Raten für die CPMs in der Vermittlungskette sind:
\[f_1, f_2, …, f_n\]
Die folgende Funktion wird verwendet, um den erwarteten CPM und die zugehörige Wahrscheinlichkeit aus dem Vermittlungskettenelement \(i\)anhand der angegebenen Fillrate zu bestimmen:
\(X_i = \{C_i\) mit Wahrscheinlichkeit \(f_i\); \(0\) mit Wahrscheinlichkeit \(1 - f_i\}\)
Die endgültige Vermittlungskette sieht so aus:
\[\{C_1, C_2, …, C_K, W\}\]
Dabei ist \(W\) das erfolgreiche Gebot und \(C_K > W >= C_{K+1}\)
Der Mindestpreis wird als \(F\)angegeben.
Das zweitbeste Gebot wird als \(R\)bezeichnet.
Berechnungen für den Auktionsgewinner
Feld
Berechnung
minimum_bid_to_win
\(max\{F, R, X_{K+1}, …, X_n\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(\{C_i\) mit einer Wahrscheinlichkeit von \(\prod_{j=1}^{i-1}(1-f_j) \cdot f_i \div \prod_{j=1}^{K}(1-f_j)\}\)
Für \(1 <= i <= K\).
Berechnungen für den Auktionsverlierer
Feld
Berechnung
minimum_bid_to_win
\(max\{F, W\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(max\{X_1, …, X_K\}\)
Beispiel mit einer einfachen Mediationskette
Angenommen, ein Publisher verwendet sowohl Echtzeitgebote als auch eine SDK-Vermittlungskette:
SDK-Vermittlungskette
Erwarteter CPM
Ausführungsrate
Netzwerk 1
\(C_1 = $3.00\)
\(f_1 = 5\%\)
Netzwerk 2
\(C_2 = $2.00\)
\(f_2 = 45\%\)
Netzwerk 3
\(C_3 = $0.50\)
\(f_3 = 80\%\)
Netzwerk 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
Angenommen, das Ergebnis der RTB-Auktion ist Folgendes:
RTB-Auktion
CPM
Auktionsgewinner (W)
1,00 $
Zweitplatzierter in der Auktion (R)
0,05 $
Mindestpreis / Mindestpreis (F)
0 $
Gebot, mit dem die Auktion gewonnen wurde
Im Folgenden sehen Sie ein Beispiel dafür, wie Werte und Wahrscheinlichkeiten für minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner für ein gewonnenes Gebot berechnet werden.
Gebote, mit denen die Auktion nicht gewonnen wurde
Im Folgenden sehen Sie ein Beispiel dafür, wie Werte und Wahrscheinlichkeiten für minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner für verlorene Gebote berechnet werden.
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\%\)
Aufschlüsselung von Gebotsanfragen
Bei der Gebotsvereinfachung wird ein einzelnes komplexes BidRequest in mehrere Gebotsanfragen aufgeteilt, die an Ihre Anwendung gesendet werden. Wenn eine Gebotsanfrage vereinfacht wird, können Sie erkennen, welche Gebotsanfragen Teil des Originals waren, da sie im Feld BidRequest.ext.google_query_id denselben Wert haben.
Die Aufschlüsselung von Geboten ist standardmäßig aktiviert. Wenn Sie sie deaktivieren möchten, wenden Sie sich an Ihren Account Manager.
Anzeigenformate
Bei einigen Anzeigenmöglichkeiten sind mehrere Formate möglich. Bei der Gebotsaufschlüsselung wird jedes Format in einer separaten Gebotsanfrage gesendet. Attribute wie die infrage kommenden Abrechnungs-IDs sind für das in der Anfrage angegebene Format relevant.
Gebotsanfragen mit den folgenden Formaten werden in separate Gebotsanfragen aufgeschlüsselt:
Banner
Video
Audio
Nativ
Beispiel für die Vereinheitlichung von Anzeigenformaten
Unten sehen Sie ein Beispiel für eine vereinfachte OpenRTB-JSON-Gebotsanfrage ohne Abflachung des Anzeigenformats im Vergleich zu einer entsprechenden Gruppe von abgeflachten Anfragen:
Eine Anzeigenmöglichkeit für einen bestimmten Bieter kann neben der offenen Auktion auch für verschiedene Arten von Deals gelten. Bei der Aufschlüsselung von Gebotsanfragen für Deals wird eine Gebotsanfrage für die offene Auktion und eine für jeden Typ von Festpreis-Deal gesendet. In der Praxis können sich Anzeigenbeschränkungen zwischen Auktionen und Festpreis-Dealtypen unterscheiden. Für eine bestimmte Videoanzeigenmöglichkeit, die sowohl für die offene Auktion als auch für einen Festpreis-Deal verfügbar ist, erhält ein Bieter beispielsweise separate Gebotsanfragen, in denen sich Beschränkungen wie die maximale Anzeigendauer und die Frage, ob überspringbare Anzeigen zulässig sind, unterscheiden können. Durch die Glättung der Werbegelegenheit lassen sich die Anzeigenbeschränkungen für die offene Auktion und den Deal mit Festpreis leichter erkennen.
Überspringbarkeit und Videodauer
In der OpenRTB-Spezifikation gibt es keine separaten Felder zum Angeben der maximalen Videodauer für überspringbare und nicht überspringbare Anzeigen. Bei der Implementierung von Google wird die Gebotsglättung verwendet, um mithilfe der vorhandenen Felder BidRequest.video.maxduration und BidRequest.video.skip zwischen diesen zu unterscheiden.
Im Folgenden sehen Sie ein Beispiel dafür, wie Videoinventar vereinfacht wird, wenn die maximale Dauer einer nicht überspringbaren Anzeige 15 und die maximale Dauer einer überspringbaren Anzeige 60 ist.
Beispiel
max_ad_duration
skip (true ODER false)
Ursprüngliche Anfrage ohne Reduzierung
15
true
Aufgeschlüsselte Anfrage 1: Nicht überspringbar
15
false
Aufgeschlüsselte Anfrage 2: Überspringbar
60
true
Die Aufschlüsselung von Gebotsanfragen für überspringbare Videodauer erfolgt nur, wenn die folgenden Bedingungen erfüllt sind:
Die Anfrage erlaubt Videos.
Sowohl überspringbare als auch nicht überspringbare Videos sind zulässig. Die beiden maximalen Dauern unterscheiden sich.
Diese Anfrage kann für private oder offene Auktionen verwendet werden.
Wenn Sie diese Art der Aufschlüsselung deaktivieren möchten, wenden Sie sich an Ihren Technical Account Manager. Wenn diese Option deaktiviert ist und der Publisher sowohl überspringbare als auch nicht überspringbare Videoanzeigen mit unterschiedlichen maximalen Dauern je nach Überspringbarkeit zulässt, wird skip auf true und maxduration auf die kürzere Dauer zwischen den Beschränkungen für überspringbare und nicht überspringbare Anzeigen festgelegt.
Video pods
Gebotsanfragen für einen Video-Pod mit mehreren Anzeigen-Opportunities werden aufgeschlüsselt, sodass jede Gebotsanfrage für eine einzelne Anzeigen-Opportunity aus diesem Pod gilt.
So können Sie Gebote für mehrere Anzeigenmöglichkeiten für einen bestimmten Pod abgeben.
Open Measurement
Mit Open Measurement können Sie Drittanbieter angeben, die unabhängige Mess- und Überprüfungsdienste für Anzeigen bereitstellen, die in mobilen Apps ausgeliefert werden.
Sie können feststellen, ob ein Publisher Open Measurement in der Gebotsanfrage unterstützt, indem Sie prüfen, ob die Anzeigenmöglichkeit das Attribut OmsdkType:
OMSDK 1.0 ausschließt, das in Von Publishern ausschließbare Creative-Attribute enthalten ist. Sie finden sie im battr-Attribut für Banner oder Video, je nach Format.
Weitere Informationen zur Interpretation von Gebotsanfragen mit Open Measurement-Signalen finden Sie im Hilfeartikel Open Measurement SDK.
Beispiel für Gebotsanfragen
In den folgenden Abschnitten finden Sie Beispielanfragen für Gebote für verschiedene Anzeigentypen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2026-01-13 (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"]]