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 erfahren Sie, wie Sie Ihre Anwendung so programmieren, dass sie die Gebotsanfrage verarbeitet.
Anfrage parsen
Google sendet eine Gebotsanfrage, die entweder im OpenRTB-JSON- oder im Protobuf-Format serialisiert ist 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
Du musst 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. Im folgenden C++-Code wird beispielsweise eine Anfrage mit einer POST-Nutzlast in einem String geparst:
Sobald Sie die BidRequest haben, können Sie damit als Objekt arbeiten und die benötigten Felder extrahieren und interpretieren. In C++ könnte das Durchlaufen von Deals in einer OpenRTB-Gebotsanfrage 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 Konfigurationen für das Pretargeting ausgefüllt. Außerdem können Sie mit BidRequest.imp.pmp.deal.ext.billing_id die Abrechnungs-IDs für Deal-Inventar abrufen, die mit dem entsprechenden Käufer verknüpft sind. Beim Abgeben eines Gebots dürfen nur Abrechnungs-IDs von Käufern angegeben werden, die in der Gebotsanfrage enthalten sind.
Wenn die Gebotsanfrage mehrere Abrechnungs-IDs enthält, müssen Sie im Feld BidResponse.seatbid.bid.ext.billing_id die Abrechnungs-ID des Käufers angeben, dem Sie Ihr Gebot zuordnen möchten.
Wörterbuchdateien
Die Gebotsanfrage verwendet Kennungen, die in Wörterbuchdateien definiert sind. Diese sind auf der Seite Referenzdaten verfügbar.
URL-Makros für Bieter
Optional können einige Informationen aus der BidRequest mithilfe von Makros in Gebotsendpunkt-URLs eingefügt werden. Wenn Sie eine Endpunkt-URL mit einem oder mehreren Makros konfigurieren, werden diese Makros erweitert, wenn diese Informationen in der Gebotsanfrage vorhanden sind. Das kann beispielsweise dann nützlich sein, wenn Sie das Load Balancing basierend auf Informationen in der BidRequest ausfü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. Beispiel: Die Bieter-URL http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%% wird bei der Anfrage durch eine URL wie http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl ersetzt.
Wenn die Google-Nutzer-ID unbekannt ist, wird der leere String ersetzt. Das Ergebnis sieht dann in etwa so aus:
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
Wird durch 1 ersetzt, um anzugeben, dass die Gebotsanfrage von einem Mobilgerät stammt, andernfalls durch 0. Das hängt vom Wert von BidRequest.device.devicetype ab. Mobilgeräte werden durch HIGHEND_PHONE (4) oder Tablet (5) gekennzeichnet.
%%HAS_VIDEO%%
Wird durch 1 ersetzt, um anzugeben, dass die Gebotsanfrage Videoinventar enthält, andernfalls durch 0. Das hängt davon ab, ob BidRequest.imp.video in der Gebotsanfrage ausgefüllt ist.
%%HOSTED_MATCH_DATA%%
Wird durch einen Wert ersetzt, der auf BidRequest.user.buyeruid basiert.
%%MOBILE_IS_APP%%
Wird durch 1 ersetzt, um anzugeben, dass die Gebotsanfrage sich auf Inventar für mobile Apps bezieht, andernfalls durch 0. Das hängt davon ab, ob BidRequest.app ausgefüllt ist.
Mobile App-ID anhand der Transaktions-URL ermitteln
Für Transaktionen von mobilen Apps werden URLs wie diese erfasst:
mbappgewtimrzgyytanjyg4888888.com
Verwenden Sie einen Base32-Decoder, um den fett formatierten Teil des Strings (gewtimrzgyytanjyg4888888) zu decodieren.
Sie können einen Online-Decoder verwenden, müssen aber die Buchstaben großschreiben und abschließende 8 durch =-Werte ersetzen.
So decodieren Sie diesen Wert:
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
Dekodierung dieses Werts:
GEWTGMJUG4YTMMRTGM======
führt zu:
1-314716233
Das Ergebnis 314716233 ist die App-ID für die iOS-App TextNow.
Namen der mobilen App anhand der Transaktions-URL ermitteln
Hier 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 Open Bidding nutzen, ähneln denen von Authorized Buyers, die standardmäßige Echtzeitgebote verwenden. Open Bidding-Kunden erhalten einige zusätzliche Felder. Einige vorhandene Felder können auch anders verwendet werden. Dazu gehören:
OpenRTB
Details
BidRequest.imp.ext.dfp_ad_unit_code
Enthält den Ad Manager-Netzwerkcode des Publishers, gefolgt von der Anzeigenblockhierarchie, durch Schrägstriche getrennt.
Das würde beispielsweise so aussehen:
/1234/cruises/mars.
BidRequest.user.data.segment
Wiederholte Schlüssel/Wert-Paare, die vom Publisher an den Bieter der Anzeigenplattform gesendet werden.
Wenn BidRequest.user.data.name auf “Publisher Passed” gesetzt ist, handelt es sich bei den Werten um vom Publisher gesendete Schlüssel/Wert-Paare.
Zulässige Anbieter deklarieren
Technologieanbieter, die Dienstleistungen wie Recherche, 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 überprüft wurden, sind zulässig.
Um die BidRequest zu verstehen und Ihre BidResponse zu erstellen, müssen Sie sich mit den beiden Möglichkeiten zur Deklarierung von Technologieanbietern vertraut machen:
Andere Anbieter können nur teilnehmen, wenn sie in der BidRequest deklariert sind:
Unter 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 lesbare Beispiele für Protobuf- und JSON-Anfragen.
So wandeln Sie die Gebotsanfrage in eine binäre Form um, wie sie in der POST-Nutzlast einer echten Anfrage enthalten wäre (in C++). Hinweis: Dies gilt nicht für OpenRTB-JSON.
Echtzeitfeedback ist für Authorized Buyers sowie für Anzeigenplattformen und Netzwerke verfügbar, die Open Bidding verwenden.
Anhand des Echtzeit-Feedbacks wird BidRequest.ext.bid_feedback basierend auf dem Ergebnis eines oder mehrerer zuvor abgegebener Gebote ausgefüllt. So können Sie Details wie den Gewinner der Auktion oder das Mindestgebot ermitteln, das erforderlich gewesen wäre, um die Auktion zu gewinnen. Wenden Sie sich an Ihren Account Manager, um Echtzeitfeedback zu aktivieren.
Zusätzlich zu den Standardfeldern, die im Feedback zur Gebotsanfrage gesendet werden, können Sie über das Feld BidResponse.seatbid.bid.ext.event_notification_token auch benutzerdefinierte Daten in der Gebotsanfrage senden. event_notification_token ist ein beliebiger Datensatz, der nur dem Bieter bekannt ist und bei der Fehlerbehebung helfen kann. Beispiele: eine neue Ausrichtungs- oder Gebots-ID, die eine neue Taktik darstellt, oder Metadaten, die mit dem Creative verknüpft sind und nur dem Bieter bekannt sind. Weitere Informationen finden Sie in der OpenRTB-Erweiterungs-Protokollpufferdatei.
Wenn Authorized Buyers eine Gebotsanfrage an einen Bieter sendet, antwortet dieser mit einer BidResponse. Wenn der Bieter Echtzeitfeedback 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;//Theminimumbidvaluenecessarytohavewontheserver-sidecomponentof//theoverallauctiongiventhattherewasalsoaninterestgroupbidding//componenttotheoverallauctionwhichranusingtheProtectedAudience//API.ThevalueisexpressedinCPMofthebuyeraccountcurrency.The//minimumbidtowinfortheoverallauction,includingbidsfromthe//server-sideandtheon-deviceinterestgroupcomponents,ispopulatedin//theminimum_bid_to_winfieldofthesameBidFeedbackobject.optionaldoublesscminbidtowin=14;//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;}//ThetypeoftheBidFeedbackmessage.Googlewillsendseparate//BidFeedbackobjectsfor://a)Eachbidsubmittedonabidresponse//b)Eachbuyersubmittedonabidresponsetoparticpateinaninterest//groupbiddingcomponentoftheauctionrunusingtheProtectedAudience//API.optionalFeedbackTypefeedbacktype=15;//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;//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;}
In dieser Nachricht sollten Sie zuerst das Feld bid_feedback.creative_status_code prüfen. Die Bedeutung des Codes finden Sie in
creative-status-codes.txt. Wenn Sie das Gebot gewinnen, können Sie das Preisfeedback deaktivieren. Weitere Informationen finden Sie unter Deaktivierung.
Das Echtzeitfeedback enthält die Gebotsanfrage-ID und einen der folgenden Werte:
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 erreichte.
Nachdem Sie ein Gebot in einer Erstpreisauktion abgegeben haben, erhalten Sie Echtzeitfeedback, einschließlich der Felder minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner, sofern das Gebot nicht aus der Auktion herausgefiltert wurde. Anhand dieser Signale können Sie Ihre Gebotslogik so anpassen, dass Sie wissen, wie viel höher oder niedriger Ihr Gebot hätte sein müssen, um die Impression zu gewinnen.
minimum_bid_to_win: Das Mindestgebot, das hätte abgegeben werden können, um die Echtzeitgebots-Auktion zu gewinnen. Wenn Sie die Auktion gewonnen haben, ist dies das niedrigste Gebot, das Sie hätten abgeben können, um die Auktion zu gewinnen. Wenn Sie die Auktion verloren haben, ist dies das erfolgreiche Gebot.
sampled_mediation_cpm_ahead_of_auction_winner: Wenn sich in der Vermittlungsabfolge weitere Netzwerke befinden, ist der Wert dieses Felds ein Preis, der ein Beispielgebot aus einem der infrage kommenden Vermittlungsnetzwerke darstellt, das über dem Gebotspreis des Auktionssiegers lag, gewichtet mit der erwarteten Auslieferungsrate. Dieser Wert wird auf „0“ gesetzt, wenn keines der Netzwerke in der Vermittlungskette voraussichtlich eine Auslieferung vornehmen wird oder 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\]
Unten sehen Sie die entsprechenden Auslieferungsraten für die CPMs in der Vermittlungskette:
\[f_1, f_2, …, f_n\]
Mit der folgenden Funktion wird der erwartete CPM und seine Wahrscheinlichkeit aus dem Element „Vermittlungskette“ \(i\)anhand der angegebenen Auslieferungsrate ermittelt:
\(X_i = \{C_i\) mit Wahrscheinlichkeit \(f_i\); \(0\) mit Wahrscheinlichkeit \(1 - f_i\}\)
Die endgültige Vermittlungskette, die den Zuschlag erhält, ist:
\[\{C_1, C_2, …, C_K, W\}\]
wobei \(W\) das erfolgreiche Gebot ist und \(C_K > W >= C_{K+1}\)
Der Mindestpreis wird als \(F\)angegeben.
Das zweithöchste 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 Wahrscheinlichkeit \(\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 Verlierer der Auktion
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 Vermittlungskette
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\%\)
Network 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
Angenommen, die RTB-Auktion hat folgendes Ergebnis:
RTB-Auktion
CPM
Gewinner der Auktion (W)
1,00 $
Zweitplatzierter der Auktion (R)
0,05 $
Mindestpreis (F)
0 $
Gebot, mit dem die Auktion gewonnen wurde
Im Folgenden finden 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 einen erfolgreichen Gebot berechnet werden.
Im folgenden Beispiel wird gezeigt, wie Werte und Wahrscheinlichkeiten für minimum_bid_to_win und sampled_mediation_cpm_ahead_of_auction_winner für Gebote berechnet werden, die nicht berücksichtigt wurden.
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
Die Gebotsumwandlung beschreibt die Verarbeitung einer einzelnen komplexen BidRequest in mehrere Gebotsanfragen, die an Ihre Anwendung gesendet werden. Wenn eine Gebotsanfrage flachgelegt wird, können Sie erkennen, welche Gebotsanfragen Teil der ursprünglichen Anfrage 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
Für einige Anzeigenformate sind mehrere Formate zulässig. Bei der Gebotsumwandlung wird jedes Format in einer separaten Gebotsanfrage gesendet, bei der Attribute wie berechtigte Abrechnungs-IDs für das in der Anfrage angegebene Format relevant sind.
Gebotsanfragen mit den folgenden Formaten werden in separate Gebotsanfragen aufgeschlüsselt:
Banner
Video
Audio
Nativ
Beispiel für die Zusammenführung von Anzeigenformaten
Unten sehen Sie ein Beispiel für eine vereinfachte OpenRTB-Gebotsanfrage in JSON ohne Flattening des Anzeigenformats im Vergleich zu einer entsprechenden Gruppe von Flattening-Anfragen:
Eine Anzeigenbereitstellung für einen bestimmten Bieter kann neben der offenen Auktion auch für verschiedene Dealtypen gelten. Bei der Aufschlüsselung von Gebotsanfragen für Deals wird eine Gebotsanfrage für die offene Auktion und eine für jeden Festpreisdeal gesendet. In der Praxis können Anzeigeneinschränkungen zwischen Auktionen und Festpreisdealtypen variieren. Wenn beispielsweise eine bestimmte Videoanzeigenfläche sowohl für die offene Auktion als auch für einen Festpreisdeal verfügbar ist, erhält ein Bieter für jede Auktion unterschiedliche Gebotsanfragen, bei denen sich Einschränkungen wie die maximale Anzeigendauer und die Zulässigkeit überspringbarer Anzeigen unterscheiden können. Wenn Sie die Anzeigenfläche flach darstellen, können Sie die Anzeigeneinschränkungen für die offene Auktion und den Deal mit Festpreis leichter erkennen.
Überspringbarkeit und Videodauer
Die OpenRTB-Spezifikation enthält keine separaten Felder für die Angabe der maximalen Videodauer von überspringbaren und nicht überspringbaren Anzeigen. Bei der Google-Implementierung wird die Gebotsanpassung verwendet, um anhand der vorhandenen Felder BidRequest.video.maxduration und BidRequest.video.skip zwischen diesen zu unterscheiden.
Im folgenden Beispiel wird gezeigt, wie Videoinventar zusammengeführt wird, wenn die maximale Dauer einer nicht überspringbaren Anzeige 15 und die maximale Dauer einer überspringbaren Anzeige 60 ist.
Beispiel
max_ad_duration
skip (wahr ODER falsch)
Ursprüngliche Anfrage ohne Flattening
15
true
Aufgeschlüsselte Anfrage 1: Nicht überspringbar
15
false
Aufgeschlüsselte Anfrage 2: Überspringbar
60
true
Die Aufschlüsselung von Gebotsanfragen nach der Dauer überspringbarer Videos erfolgt nur, wenn folgende Bedingungen erfüllt sind:
In der Anfrage ist Videoinhalt zulässig.
Sowohl überspringbare als auch nicht überspringbare Videos sind zulässig. Die beiden maximalen Dauern unterscheiden sich.
Diese Anfrage ist für private oder offene Auktionen geeignet.
Sie können diese Art der Aufschlüsselung deaktivieren, indem Sie sich an Ihren Technical Account Manager wenden. Wenn die Funktion deaktiviert ist und der Publisher sowohl überspringbare als auch nicht überspringbare Videoanzeigen mit unterschiedlichen maximalen Dauern zulässt, die auf der Überspringbarkeit basieren, wird skip auf true und maxduration auf die kürzere Dauer zwischen den Einschränkungen für überspringbare und nicht überspringbare Anzeigen festgelegt.
Video-Pods
Gebotsanfragen für einen Video-Pod mit mehreren Werbechancen werden aufgeschlüsselt, sodass jede Gebotsanfrage für eine einzelne Werbechance aus diesem Pod gilt.
So können Sie auf mehrere Anzeigenflächen für einen bestimmten Anzeigen-Pod bieten.
Open Measurement
Mit Open Measurement können Sie Drittanbieter angeben, die unabhängige Analyse- und Überprüfungsdienste für Anzeigen in mobilen Apps anbieten.
Ob ein Publisher Open Measurement in der Gebotsanfrage unterstützt, können Sie daran erkennen, ob das Attribut OmsdkType:
OMSDK 1.0 in der Liste der vom Publisher auszuschließenden Creative-Attribute in der Anzeigenbereitstellung ausgeschlossen ist. Sie finden sie je nach Format unter dem Attribut battr für Banner oder Video.
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 Beispielgebotsanfragen für verschiedene Anzeigentypen.
[null,null,["Zuletzt aktualisiert: 2025-08-21 (UTC)."],[[["\u003cp\u003eBid requests are sent as HTTP POST requests with a binary payload in Protobuf format, and they are parsed into a \u003ccode\u003eBidRequest\u003c/code\u003e object for access.\u003c/p\u003e\n"],["\u003cp\u003eBilling IDs, which are essential for transactions, are provided in specific fields of the \u003ccode\u003eBidRequest\u003c/code\u003e and must be used in corresponding bids.\u003c/p\u003e\n"],["\u003cp\u003eReal-time feedback, available in subsequent bid requests, offers details like creative status codes and minimum bid amounts, including a custom \u003ccode\u003eevent_notification_token\u003c/code\u003e for debugging.\u003c/p\u003e\n"],["\u003cp\u003eFirst-price auction bidding models utilize \u003ccode\u003eminimum_bid_to_win\u003c/code\u003e and \u003ccode\u003esampled_mediation_cpm_ahead_of_auction_winner\u003c/code\u003e feedback signals to help adjust bidding strategies.\u003c/p\u003e\n"],["\u003cp\u003eBid flattening separates complex \u003ccode\u003eBidRequest\u003c/code\u003e data into multiple requests based on ad formats, deals, and video ad types, all identifiable by a shared \u003ccode\u003egoogle_query_id\u003c/code\u003e.\u003c/p\u003e\n"]]],["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"],null,[]]