Dies ist die Version 2.1.0 (August 2017) des Vungle OpenRTB 2.3 Integrationsleitfadens. In diesem Artikel erhalten Sie weitere Informationen über die Integration von Vungle Exchange unter Verwendung von OpenRTB 2.3.
Inhalt
- 1. Anfrage und Antwort
- 2. Anfrage
- 2.1 Erforderliche und optionale Felder
- 2.2 Protokoll-Verhandlung
- 2.3 Header anfordern
- 2.4 BidRequest-Objekt
- 3. Rückgabe
- 3.1 Erforderliche und optionale Felder
- 3.2 Antwort-Header
- 3.3 Antwort-Status-Code
- 3.4 Gebotssignalisierung "kein Gebot"
- 3.5 BidResponse-Objekt
- 4. Beispiele
- 5. Angaben über Werbungs-Markup
- 6. Makro-Substitution
1. Anfrage und Antwort
1.1 Einheit
Alle Einheiten in diesem Bereich entsprechen einer Teilmenge der OpenRTB 2.3.1-Spezifikation. Falls Felder oder Anforderungen fehlen, beziehen Sie sich direkt auf die Spezifikation.
1.2 Erweiterung
Um Werbungen besser bereitzustellen, bietet Vungle Exchange Informationen, die über das standardmäßige OpenRTB-Protokoll hinausgehen. Diese Erweiterungen überschneiden sich nicht mit der vorhandenen OpenRTB-Implementierung, sondern erweitern diese vielmehr. Die Erweiterungen sind in einzelne Objekte unterteilt, wo es sich am ehesten anbietet.
Alle Erweiterungsfelder sind in einem JSON-Objekt mittels eines Erweiterungsfelds der ersten Ebene mit dem Namen 'vungle'
unter dem OpenRTB 'ext'
-Objekt eingeschlossen. Zur Vereinfachung wird in den nachfolgenden Abschnitten dieses Dokuments das Feld 'vungle'
ausgelassen. Es folgt das Beispiel eines OpenRTB JSON-Objekts, das Vungle Erweiterungen enthält:
{
...
"ext": {
"vungle": {
// Einzelne Erweiterungsfelder in verschiedenen Reihen unten.
}
}
}
Beispielsweise könnte ein Objekt zur Gebotsanforderung der obersten Ebene wie folgt aussehen:
{
"id": "572c3535ab0af400011a721a",
"imp": [{<impression object>}],
"app": {<application object>},
"device": {<device object>},
"user": {<user object>},
"at": 2,
"tmax": 2000,
"cur": ["USD"],
"bcat": ["IAB7-3"],
"badv": ["google.com"],
"ext": {
"vungle": {
"badvid": ["2f00ca35ab0abe4df11da700c"]
}
}
}
1.3 Versionen
Mit der Zeit werden einige Felder obsolet. Um ein Höchstmaß an Kompatibilität zu gewährleisten, beachtet Vungle Exchange daher alle "veralteten" Felder, die in der aktuellsten OpenRTB-Spezifikation von Vungle angegeben werden. Alle "veralteten" Felder sind bei der nächsten Aktualisierung der Spezifikation zur Entfernung vorgesehen. Zu diesem Zeitpunkt muss Vungle Exchange die veralteten Felder nicht mehr unterstützen.
Alle entfernten Felder verbleiben weiterhin in der Spezifikation, wobei sie mit "entfernt" markiert werden, womit gekennzeichnet wird, dass das entsprechende Feld nicht mehr unterstützt wird. Wir verwenden die "entfernt"-Kennzeichnung, um eine Spezifikationssemantik zu erzwingen: Jedes Feld bleibt nach seiner Definition in der Hinsicht einzigartig, als dass es für die Lebensdauer der Spezifikation definiert wurde. Dies bedeutet, dass das Feld 'id'
nach seinem Ablauf und einer Entfernung aus einer bestimmten Spezifikation nicht in künftigen Revisionen mit einer anderen Bedeutung wiederverwendet wird.
1.3.1 Semantische Versionen
Spezifikationsversionen folgen zudem den Semver 2.0.0-Richtlinien wie folgt:
- Eine wichtige Versionsaktualisierung kann die Rückwärtskompatibilität verhindern. Beispielsweise wird ein Feld, das in Version X "veraltet" ist, in Version X+1 "entfernt".
- Kleinere Versionsaktualisierungen sollten die Rückwärtskompatibilität nicht beeinträchtigen. Beispielsweise wird ein verwendetes Feld als "veraltet" markiert oder ein erforderliches Feld als nicht erforderlich und veraltet markiert.
- Eine Patch-Versionsaktualisierung darf die Rückwärtskompatibilität nicht beeinträchtigen (z.B. die Korrektur eines Tippfehlers in der Spezifikationsbeschreibung).
1. Anfrage
2.1 Erforderliche und optionale Felder
Hinweise über die Spalte "Erforderlich" in den nachfolgenden Abschnitten:
- Ja: Bei Stromabwärts-Verbrauch eines solchen Felds kann immer ein gut formatierter und nicht leerer Wert auf Grundlage des angegebenen Typs erwartet werden.
- Nein: Eine Verwendung stromabwärts sollte die Anwesenheit oder Gültigkeit eines solchen Felds nicht erwarten. Eine Verbraucherbestätigung ist für diesen Wert erforderlich; für den Typ nicht erforderlich.
- Standard: Alle nicht erwähnten Felder in OpenRTB 2.3.1 sind standardmäßig nicht erforderlich.
2.2 Protokoll-Verhandlung
Vungle Exchange unterstützt die Kommunikation über HTTP/2 durch Protokollverhandlung; anderenfalls ist der Standard HTTP/1.1.
2.3 Header anfordern
Jede Gebotsanfrage verfügt entsprechend dem OpenRTB-Protokoll über die folgenden, angepassten HTTP-Header:
X-OpenRTB-Version: 2.3
Zusätzlich zu angepassten HTTP-Headern fügt Vungle Exchange zudem die folgenden Standard-Header bei:
Content-Type: application/json; charset=utf-8
Accept: application/json
Letztendlich fügt Vungle Exchange einen angepassten Header zur Angabe der OpenRTB-Spezifikationsrevision von Vungle bei:
X-Vungle-OpenRTB-Version: 2
2.4 BidRequest-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes |
Gebotsanfrage-ID, die von Vungle Exchange generiert wird (z.B. '570b0eb14e67c98f761a0ca0'). |
imp |
object array |
yes | Weiteres unter Impression-Objekt. |
app |
object | yes | Weiteres unter Anwendungsobjekt. |
device |
object | yes | Weiteres unter Geräteobjekt. |
at |
integer | yes |
Typ der Auktion; beispielsweise '2' für Auktion mit zweitem Preis. Vungle Exchange betreibt nur Auktionen mit zweitem Preis. Deshalb nimmt dieser Wert immer '2' an. |
tmax |
integer | yes |
Maximale Zeit in Millisekunden zur Abgabe einer vollständigen Gebotsantwort; dieser Wert nimmt immer '250' ein. |
cur |
string array | no |
Liste bei der zur Auktion zugelassenen Währungen als ISO-4217-Alpha; z.B. ["USD", "CNY", "EUR"]. Aktuell unterstützen wir nur "USD". |
bcat |
string array | no | Siehe OpenRTB 2.3.1, Abschnitt 5.1. |
regs |
object | no | Siehe OpenRTB 2.3.1, Abschnitt 3.2.16. |
test |
integer | no |
Ob die Auktion sich im Testmodus (1) oder im Live-Modus (0) befindet; Testauktionen können nicht abgerechnet werden. |
2.4.1 Impression-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes | Impressions-ID, die von Vungle Exchange generiert wird (z.B. '3a06eb14e67c98f761add01'). |
displaymanager |
string | yes | Anzeige-Manager der Versorgerseite; Vungle verwendet dieses Feld zur Angabe der verwendeten SDK-Technologie, da wir zwischen den SDK-Mobilplattformen unterscheiden; z.B. 'Vungle' for iOS, 'VungleDroid' for Android, and 'VungleWindows' für Windows, gefolgt von der SDK-Version im nächsten Feld. |
displaymanagerserver |
string | yes | Anzeigemanager-Version der Versorgerseite; Vungle verwendet dies zur Angabe der SDK-Version; z.B. '3.3.1'. |
bidfloor |
float | yes | Minimaler Gebotspreis für ein zugelassenes Gebot; z.B. '8.72'. |
bidfloorcur |
string | yes | Währungen für die Impression als ISO-4217-Alpha; z.B. 'USD'. |
video |
object | no | Weiteres unter Videoobjekt. |
tagid |
string | no | Platzierungsreferenz-ID, die sich auf die angegebene Impression bezieht; beispielsweise 'placement_name_1af44fda'. |
instl |
integer | no | Ob die Impression Vollbild/zwischengeschaltet ist (1) oder nicht (0). Aktuell unterstützt Vungle Exchange nur Vollbild/zwischengeschaltet (1). |
secure |
integer | no | Markierung zur Angabe, ob die Impression Kreativ-Assets und -Markups mit sicherer HTTPS-URL benötigt, wobei 0 = unsicher und 1 = sicher. |
ext |
object | no | Vungle erfordert immer sichere (1) Assets und Markups. |
2.4.2 Video-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
mimes |
string array | yes | Unterstützte Inhalts-MIME-Typen. Vungle Exchange unterstützt nur ["video/mp4"]. |
h |
integer | yes | Höhe des Videos. |
w |
integer | yes | Breite des Videos. |
minduration |
integer | no | Minimale Anzahl an Sekunden während denen das Video abgespielt werden muss. |
maxduration |
integer | no | Maximale Anzahl an Sekunden während denen das Video abgespielt werden darf. |
delivery |
integer array | no | Liste an unterstützten Methoden zur Videoübermittlung: (progressiv oder Stream). Siehe OpenRTB 2.3.1, Abschnitt 5.13. |
minbitrate |
integer | no | Minimale Gebotsrate in kbps. Vungle Exchange unterstützt aktuell nur 250. |
maxbitrate |
integer | no | Maximale Gebotsrate in kbps; z.B. 500. |
protocols |
integer array | no | Siehe OpenRTB 2.3.1, Abschnitt 5.8; z.B. [2, 5]. |
boxingallowed |
integer | no | Ob das Einrahmen des Videos erlaubt ist (1) oder nicht (0). Der Wert hierfür nimmt immer '1' ein. |
playbackmethod |
integer array | no | Siehe OpenRTB 2.3.1, Abschnitt 5.9. |
startdelay |
integer | no | Siehe OpenRTB 2.3.1, Abschnitt 5.10. Der Wert hierfür nimmt immer '0' ein. |
2.4.3 Anwendungsobjekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes | Exchange-spezifische ID. Bei Vungle entspricht dies der App Store-ID; z.B. '3709293'. Diese ID ist für den DSP vielleicht bedeutungslos, kann aber vom DSP zum Vergleichen und Überprüfen von Berichtbeschwerden verwendet werden. |
bundle |
string | yes | Die einzigartige Markt-ID; dies ist ein Plattform-spezifischer Anwendungs-Identifikator, der für die Anwendung einzigartig und unabhängig von Vungle Exchange sein sollte. – Bei Android sollte dies ein Bündel- oder Paketname sein (z.B. 'com.supercell.hayday'). –Bei iOS ist es eine nummerische ID. |
publisher |
object | yes | Weiteres unter Herausgeber-Objekt. |
name |
string | no | Anwendungsname; z.B. 'Hay Day'. |
storeurl |
string | no | App Store-URL; z.B. 'https://itunes.apple.com/us/app/hay-day/id506627515?mt=8#'. |
cat |
string array | no | Siehe OpenRTB 2.3.1, Abschnitt 5.1. |
privacypolicy |
integer | no | Ob die Anwendung über eine Datenschutzrichtline verfügt (1) oder nicht (0). Vungle Exchange unterstützt bei diesem Feld nur '1'. |
paid |
integer | no | Ob die Anwendung kostenpflichtig ist (1) oder nicht (0). |
keywords |
string | no | Kommagetrennte Liste an Tags für die Herausgeber-Anwendung. |
ext |
object | no | BESCHREIBUNG |
2.4.4 Anwendungserweiterung
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
altid |
string | no | Eine sekundäre ID, die spezifisch für Vungle Exchange ist und die Herausgeberanwendung einmalig identifiziert; z.B. '3a06eb14e67c98f761add01'. |
sdk |
object | no | Weiteres unter SDK-Erweiterungsobjekt. |
wtags |
string array | no | Whitelist mit Tags der Herausgeberanwendung. |
btags |
string array | no | Blacklist mit Tags der Herausgeberanwendung. |
bundleid |
string | no | Identifikator für Bündel oder Paket der Anwendung. |
tags |
string array | no | Veraltet; Verwenden Sie Schlüsselwörter. |
2.4.5 SDK-Erweiterung
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
name |
string | yes | Ein String, der eine SDK-Familie des SDK-Agenten identifiziert, der auf der Host-Anwendung installiert ist. Zum Beispiel 'VungleDroid', 'Vungle', or 'VungleWindows'. |
ver |
string | yes | Ein String, der die Version des SDK-Agenten identifiziert, der auf der Host-Anwendung installiert ist. |
plugin |
string | no | Name des SDK-Plug-ins, mit dem der SDK-Agent gebaut wird; z.B. 'native', 'unity'. |
pluginver |
string | no | Version des SDK-Plug-ins, mit dem der SDK-Agent gebaut wird; z.B. '1.0'. |
2.4.6 Herausgeber-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes | Herausgeber-ID, die von Vungle Exchange generiert wird (z.B. '570ffeb14e67998f761a791c'). |
name |
string | no | Herausgebername; z.B. 'Supercell Oy'. |
cat |
string array | no | Siehe OpenRTB 2.3.1, Abschnitt 5.1. |
2.4.7 Geräte-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
ua |
string | yes | User-Agent des Gerätebrowsers, z.B. 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1'. |
ip |
string | yes | Nicht erforderlich, wenn das ipv6-Feld vorhanden ist. Dies ist die IP-Adresse der Impression; z.B. '212.14.27.104'. |
ipv6 |
string | yes | Nicht erforderlich, wenn das IP-Feld vorhanden ist. Dies ist die IPv6-Adresse der Impression; z.B. '3ffe:1900:4545:3:200:f8ff:fe21:67cf'. |
h |
integer | yes | Bildschirmhöhe des Geräts in Pixeln. |
w |
integer | yes | Bildschirmbreite des Geräts in Pixeln. |
connectiontype |
string | yes | Siehe OpenRTB 2.3.1, Abschnitt 5.18. |
ifa |
string | yes | ID, die für die Verwendung durch den Werber reserviert ist; z.B. 'e4fe9bdecaa047b6908dffba3fa184f2'. |
geo |
object | no | Weiteres unter Geo-Objekt. |
make |
string | no | Gerätemarke. |
model |
string | no | Gerätemodell. |
os |
string | no | Geräte-Betriebssystem; z.B. 'iOS', 'Android'. Enum-Wert von: –'iOS' – 'Android' – 'Windows' |
osv |
string | no | Betriebssystem-Version des Geräts; z.B '9.1', '8.0' |
dnt |
integer | no | Ob im Gerät "Schutz vor Aktivitäten-Verfolgung" aktiviert ist (1) oder nicht (0). |
lmt |
integer | no | Ob im Gerät "Begrenzte Werbungsverfolgung" aktiviert ist (1) oder nicht (0). |
devicetype |
string | no | Siehe OpenRTB 2.3.1, Abschnitt 5.17. |
language |
string | no | Gerätesprache als ISO-639-1-Alpha-2; z.B. 'en'. |
carrier |
string | no | Netzbetreiber oder ISP; z.B. 'VERIZON'. |
ext |
object | no | Weiteres unter Geräteerweiterungsobjekt. |
2.4.8 Geräte-Erweiterung
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
tz |
string | no | Zeitzoneneinstellungen des Geräts als Zonenname in der IANA-Zeitzonendatenbank; z.B. 'America/Los_Angeles'. |
vungleua |
string | no | Veraltet; Verwenden Sie Application.ext.vungle.sdk |
sdcard |
integer | no | Ob bei Android-Geräten SD-Karten-Speicher verfügbar ist (1) oder nicht (0). |
volume |
float | no | Wert zwischen 0 und 1, der das prozentuale Volumen des Geräts angibt. |
muted |
integer | no | 0 = false 1 = true; Aufzählung erforderlich. |
idfv |
string | no |
Anbieter-ID bei iOS-Geräten; ein alphanumerischer String, der ein Gerät einzigartig mit dem App-Anbieter in Verbindung bringt; z.B. '00000000-0001-4d3a-8f98-233623cd8d12'. Ein einzelnes Gerät kann unterschiedliche IDFV-Werte enthalten, je nachdem ob die Anwendung in der Gebotsanfrage zu einem anderen Anbieter gehört. |
marketplace |
string | no |
Der App-Marktplatz, der auf dem Gerät installiert ist. Mögliche Werte:
|
is_sideload_enabled |
integer | no | Boolean-Marker, der anzeigt, ob das Gerät die Installation von Anwendungen von "unbekannten" Quellen zulässt. Im Fall von '1' (true) sind Apps aus unbekannten Marktplätzen erlaubt. Im Fall von '0' (false) sind sie es nicht. |
2.4.9 Geo-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
country |
string | yes | Ländercode als ISO-3166-1-Alpha-3; z.B. 'USA'. |
lat |
float | no | Geographische Breite des Geräts; z.B. '[-90, 90]'. |
long |
float | no | Geographische Länge des Geräts; z.B. '[-180, 180]'. |
type |
integer | no | Siehe OpenRTB 2.3.1, Abschnitt 5.16. |
region |
string | no | Regionscode als ISO-3166-2; bei USA ein Bundesstaaten-Code aus zwei Buchstaben; z.B. 'CA'. |
city |
string | no | Frei formatierbarer Stadtname. |
zip |
string | no | Postleitzahl. |
utcoffset |
integer | no | Lokalzeit als Anzahl +/- an Minuten ausgehend von UTC. |
2.4.10 Regs-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
coppa |
integer | no | Marker, der angibt, ob diese Anfrage den COPPA-Richtlinien von der FTC der USA obliegt, wobei 0 = nein and 1 = ja. |
ext |
object | no | Platzhalter für Vungle Exchange-spezifische Erweiterungen von OpenRTB. |
2.4.11 PMP-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
private_auction |
integer | no | Gibt die Zulassung von Sitzen zur Auktion an, die im direkte Händel-Objekt benannt werden; wobei 0 = alle Gebote werden erlaubt; 1= Gebote sind auf die angegebenen Händel und deren Bedingungen beschränkt. |
deal |
object array | no | Array von Handelsobjekten (Abschnitt 3.2.18), die bestimmte auf diese Impression zutreffende Händel übermitteln. |
ext |
object | no | Platzhalter für Vungle Exchange-spezifische Erweiterungen von OpenRTB. |
3. Rückgabe
3.1 Erforderliche und optionale Felder
Hinweise über die Spalte "Erforderlich" im Abschnitt "Antwort":
- Ja: Vungle Exchange nimmt an, dass ein erforderliches Feld immer wie angegeben formatiert, nicht leer und vom angegebenen Typ ist; ungültige Werte können zur Nicht-Zulassung zur Auktion führen.
- Empfohlen: Vungle Exchange verwendet das Feld, um beim Auktionsvorgang zu helfen, falls der Wert des Felds wie angegeben formatiert ist; ein fehlendes oder ungültiges Feld wirkt sich nicht negativ auf die Zulassung zur Auktion aus.
- Nein: Vungle Exchange setzt die Anwesenheit des Felds nicht voraus.
- Standard: Alle nicht erwähnten Felder in OpenRTB 2.3.1 erfordern standardmäßig 'No'. Zudem müssen alle Felder zum angegebenen Typ passen, oder sie können sich negativ auf die Eignung zur Auktion auswirken.
3.2 Antwort-Header
Der Antwort-Header muss den "Content Type"-Header mit einem der akzeptierten Werte aus den Anforderungs-Headern oben beinhalten. Zum Beispiel,
Content-Type: application/json
3.3 Antwort-Status-Code
Alle Antworten müssen entweder 200 oder 204 sein. Ein anderer HTTP-Antwortcode kann sich negativ auf die Eignung des DSPs zur Auktion auswirken.
3.4 Gebotssignalisierung "kein Gebot"
Es wird DSPs empfohlen, einen Grund für das ausbleibende Gebot zu versenden, falls nicht geboten wird. Diese Information kann Vungle Exchange beim Auffinden und Beheben potentieller Integrationsprobleme unterstützen. Die Angabe bei ausbleibendem Gebot sollte der OpenRTB 2.3.1-Spezifikation in Abschnitt 7.4 gerecht werden. Eine gut formatierte Angabe mit Begründung bei ausbleibendem Gebot sollte wie folgt aussehen:
{"id": "1234567890", "seatbid": [], "nbr": 2}
3.5 BidResponse-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes | BidRequest-ID, die von Vungle Exchange generiert wird (z.B. '570ffeb14e67998f761a791c'). Dies muss der ID im BidRequest-Objekt entsprechen. |
bidid |
string | no | Eine einzigartige, vom Bieter generierte Antwort-ID zur Unterstützung bei der Protokollierung/Aufzeichnung. |
cur |
string | no | Gebotswährung als ISO-4217-Alpha-Codes. Aktuell unterstützt Vungle Exchange nur USD und behandelt jeden Wert als USD. |
seatbid |
object array | yes | Array von seatbid-Objekten; 1+ erforderlich, falls ein Gebot abgegeben werden soll. |
nbr |
integer | no | Ein Grund für ein ausbleibendes Gebot, wie unter 5.19 in der OpenRTB 2.3.1-Spezifikation angegeben. |
ext |
object | no |
3.5.1 SeatBid-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
seat |
string | no | ID des Bieter-Sitzes in dessen Namen das Gebot abgegeben wird. Siehe OpenRTB 2.3.1. |
bid |
object array | yes | Weiteres unter Bid-Objekt. Mindestens ein Gebot muss vorhanden sein. |
3.5.2 Gebots-Objekt
Feld | Typ | Erforderlich | Beschreibung |
---|---|---|---|
id |
string | yes | Gebots-ID, die von einzelnen DSPs generiert wird. |
impid | string | yes | Impressions-ID, die sich auf die Impression der Gebotsanfrage bezieht, auf dies sie bietet. Muss der ID im Impressionsobjekt der Gebotsanforderung entsprechen. |
price |
float | yes | Gebotspreis in der Währung des CPM; z.B. '10.30'. |
nurl |
string | no | URL zur Gewinnbenachrichtigung, die von Vungle Exchange bei gewinnendem Gebot gerufen wird. |
adm |
string | yes | Werbungs-Markup, das nach gewonnener Auktion angeboten wird. Siehe Abschnitt Angaben über Werbe-Markup. |
cid |
string | empfohlen | Kampagnen-ID, durch DSP weitergegeben. |
crid |
string | empfohlen | Kreativ-ID, durch DSP weitergegeben. |
adomain |
string array | empfohlen | Werber-Domänen zur Blocklist-Überprüfung; z.B. ["supercell.com"]. |
bundle |
string | empfohlen | Die einzigartige Markt-ID; dies ist ein Plattform-spezifischer Anwendungs-Identifikator, der für die Anwendung einzigartig und unabhängig von Vungle Exchange sein sollte. – Bei Android sollte dies ein Bündel- oder Paketname sein (z.B. 'com.supercell.hayday'). –Bei iOS ist es eine nummerische ID. |
h |
integer | empfohlen | Höhe des Kreativs. |
w |
integer | empfohlen | Breite des Kreativs. |
cat |
string array | no | IAB-Inhaltskategorien; siehe OpenRTB 2.3.1, Abschnitt 5.1. |
iurl |
string | no | URL zur Benachrichtigung über Verlust. |
dealid |
string | no | Bezug auf die deal.id vom BidRequest-Objekt, falls dieses Gebot zu einem Direkthandel eines Privatmarktplatzes gehört. |
adid |
string | no | ID einer vorgeladenen Werbung zur Bereitstellung, falls ein Gebot gewinnt. |
ext |
object | no |
4. Beispiele
4.1 Anfragenbeispiel
{
"id": "58ed309efa8936087efd1349",
"imp": [{
"id": "58ed309efa8936087efd134a",
"video": {
"mimes": ["video/mp4"],
"minduration": 5,
"maxduration": 30,
"protocols": [2, 5],
"w": 1080,
"h": 1920,
"startdelay": 0,
"linearity": 1,
"minbitrate": 250,
"maxbitrate": 2500,
"boxingallowed": 1,
"playbackmethod": [1, 2, 3, 4],
"delivery": [1, 2],
"pos": 7
},
"displaymanager": "Vungle",
"displaymanagerver": "3.3.5",
"instl": 1,
"bidfloor": 15,
"bidfloorcur": "USD"
}],
"app": {
"id": "56b8e577819502560b000033",
"name": "test-pub-app-name",
"bundle": "1045826890",
"storeurl": "https://itunes.apple.com/us/app/id1234567?mt=8",
"cat": [
"IAB1"
],
"privacypolicy": 1,
"publisher": {
"id": "test-pub-app-id",
"name": "test-pub-app-name",
"cat": [
"IAB1"
]
},
"ext": {
"vungle": {
"altid": "5fff577819502560b000033",
"btags": ["real money gambling", "social casino"],
"wtags": ["targeted tag", "social"]
}
}
},
"device": {
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 8_4 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Mobile/12H141",
"geo": {
"lat": 47.46,
"lon": -122.16,
"type": 1,
"country": "USA",
"region": "WA",
"city": "San Francisco",
"zip": "94103"
},
"dnt": 0,
"lmt": 0,
"ip": "192.168.1.1",
"devicetype": 1,
"make": "Samsung",
"model": "SM-J200G",
"connectiontype": 2,
"os": "iOS",
"osv": "8.0",
"w": 1080,
"h": 1920,
"js": 1,
"language": "en",
"ifa": "test-ifa",
"ext": {
"vungle": {
"isSdCardAvailable": 1,
"vungleua": "VungleDroid/3.3.5",
"tz": "Europe/Kaliningrad",
"sdcard": 1,
"volume": 0.13333334,
"muted": 1
}
}
},
"bcat": ["IAB7-3", "IAB7-5", "IAB7-28", "IAB7-29", "IAB7-30", "IAB7-39", "IAB7-41", "IAB7-42"],
"at": 2,
"cur": ["USD"],
"tmax": 250
}
4.2 Beispielantwort
{
"id": "58ed309efa8936087efd1349",
"bidid": "5508",
"cur": "USD",
"seatbid": [
{
"seat": "7735",
"bid": [
{
"id": "5508",
"impid": "58ed309efa8936087efd134a",
"price": 50,
"nurl": "http://bidder.com/won?price=${AUCTION_PRICE}",
"adm": "http://bidder.com/vast?id=${AUCTION_ID}",
"cid": "554d550b418461cc3700014d",
"crid": "57767c29a63510e75f000073"
}
]
}
]
}
5. Angaben über Werbungs-Markup
Vungle Exchange unterstützt primär drei Typen von Markups: VAST, MRAID und das proprietäre Vungle Werbungs-Markup. Während jedes über seine eigenen Spezifikationen auf hohem Niveau verfügt, muss es zur Betrachtung als gültiges Markup aus Leistungsgründen auch den untenstehenden zusätzlichen Anforderungen gerecht werden.
5.1 VAST
Das folgende Tag muss in den ersten 100 Bytes des 'adm'
-Felds oder im Inhalt der 'nurl'
-Antwort erscheinen:
<VAST version="2.0">
5.2 Makro-Substitution
Vungle Exchange unterstützt eine Makro-Substitution für den Auktionspreis im nurl
-Feld des Gebots-Objekts in der Gebotsantwort. Zum Beispiel:
"nurl": "http://bidder.com/won?price=${AUCTION_PRICE}"