Prüfen Sie eine Gebotsantwort auf fehlende Felder, falsch typisierte Preise und vergessene Makros.
OpenRTB-Bid-Response-Validator
Prüfen Sie eine Gebotsantwort auf fehlende Felder, falsch typisierte Preise und vergessene Makros.
Der OpenRTB-Bid-Response-Validator läuft vollständig in Ihrem Browser, sodass Antworten mit echten Deal-Ids und Preisen auf Ihrem Gerät geprüft werden.
Die Gebotsantwort ist die kurze Hälfte des OpenRTB-Dialogs, und fast alles, was daran schiefgeht, ist strukturell und nicht raffiniert: ein Gebot ohne impid, das es an eine Impression bindet, ein Preis als String, ein Creative ohne Advertiser-Domain oder eine Win-Notice ohne Auktionspreis-Makro, die dadurch den falschen Zuschlagspreis meldet. Dieser Validator durchläuft die Antwort wie eine Exchange und trennt die von der Spezifikation geforderten Felder von jenen, die Käufer und Publisher in der Praxis ablehnen. Jeder Befund trägt einen JSON-Pfad und zeigt auf das betroffene Gebot.
Funktionen
Prüft Pflichtfelder auf Antwort-, Seatbid- und Gebotsebene
Fehler, Warnungen und Hinweise getrennt, jeweils mit JSON-Pfad
Typprüfung bei Preis, Maßen, adomain und den Id-Feldern
Versionsbewusste Behandlung von mtype, das mit OpenRTB 2.6 kam
Meldet Win-Notices ohne Preismakro und unsichere Benachrichtigungs-URLs
Prüft No-Bid-Antworten und ihre nbr-Codes
Erkennt doppelte Gebots-Ids und mehrere Gebote auf dieselbe Impression
Referenztabellen für No-Bid-Gründe und Medientypen
So verwendest du OpenRTB-Bid-Response-Validator
Fügen Sie das JSON ein, das Ihr Bidder zurückgegeben hat
Wählen Sie die Protokollversion der Exchange
Arbeiten Sie zuerst die Fehler ab, dann die Warnungen
Nutzen Sie den JSON-Pfad jedes Befunds, um das Gebot zu finden
error seatbid[0].bid[0].price — price has to be a number, not a string
Ein Preis in Anführungszeichen ist der häufigste Grund, warum ein Gebot stillschweigend verworfen wird.
Häufige Fehler & Fehlerbehebung
Das Gebot ist hier gültig, die Exchange verwirft es dennoch. — Exchanges ergänzen eigene Anforderungen: eine bekannte Seat-Id, Kategorien aus einer bestimmten Taxonomie oder ein bereits freigegebenes Creative. Ziehen Sie deren Integrationsleitfaden hinzu.
Eine Warnung zu adomain bei einer Eigenwerbung. — Füllen Sie es trotzdem aus. Publisher blocken nach Advertiser-Domain, und ein Gebot ohne sie fliegt oft heraus, bevor irgendetwas anderes betrachtet wird.
mtype wird bei einer 2.5-Integration bemängelt. — Es kam mit OpenRTB 2.6, eine 2.5-Exchange ignoriert es. Stellen Sie die Versionsauswahl auf das tatsächlich genutzte Protokoll; das Senden schadet nicht.
Ein leeres seatbid-Array ergibt nur eine Warnung. — Weil es zulässig, aber wenig hilfreich ist. Sauber lehnt man mit HTTP 204 ab oder mit einer Antwort samt nbr-Code, damit die Exchange den Grund protokollieren kann.
Häufig gestellte Fragen
Welche Felder sind in einer OpenRTB-Gebotsantwort Pflicht?
Die Antwort braucht eine id, die die Anfrage-Id zurückgibt. Jedes Gebot braucht id, eine zur Impression passende impid, einen Preis und Markup als adm oder nurl. Alles Weitere ist laut Spezifikation optional.
Was bedeutet das Feld nbr?
No-Bid-Grund. Ein ganzzahliger Code, der erklärt, warum kein Gebot kam – 2 für ungültige Anfrage, 8 für unbekannten Nutzer – damit eine Exchange auswerten kann, warum ein Bidder passt.
Warum braucht nurl das AUCTION_PRICE-Makro?
Weil die Exchange bei einem Zuschlag den Zuschlagspreis dort einsetzt. Ohne das Makro feuert die Win-Notice ohne Preis, und Ihre Logs verzeichnen das Gebot statt des tatsächlich Gezahlten.
Was unterscheidet adm von nurl?
adm trägt das Creative inline in der Antwort; nurl ist eine URL, die die Exchange bei einem Zuschlag abruft. Inline ist heute die Norm, weil es einen Roundtrip aus dem Renderpfad nimmt.
Ersetzt mtype etwas aus 2.5?
Es macht explizit, was zuvor abgeleitet wurde. In 2.5 ergab sich der Medientyp aus dem Objekt der Impression, was bei Multiformat-Impressions scheiterte; in 2.6 nennt ihn das Gebot direkt.