Open RTB 2.4 Spécifications de l'appel d'offres
Cette page décrit les différents éléments des demandes RTB que vous recevrez pour enchérir.
En-têtes de l'appel d'offres
- En-tête HTTP de la version de l'OpenRTB : x-openrtb-version : 2.4
- Keep-Alive HTTP Header : Connection : Keep-Alive
- Contenu JSON : Content-Type : application/json
- En-tête de codage des données : Accept-Encoding
Demande d'offre
Lors de la demande d'offres pour un contexte spécifique, la plateforme effectuera une requête HTTP avec un délai d'attente de 300ms et enverra l'objet suivant encodé en JSON dans le corps de la requête. Il est recommandé d'utiliser le protocole HTTP en raison du temps de latence supplémentaire lors de l'utilisation du protocole HTTPS.
| Attribut | Description |
|---|
| à | Type d'enchère, premier prix = 1 (int) |
| id | ID unique de l'appel d'offres (chaîne de caractères) |
| diablotin | Objet représentant l'impression offerte (objet). |
| site | Détails via un objet Site sur le site web de l'éditeur (objet). |
| dispositif | Détails via un objet Device sur l'appareil de l'utilisateur auquel l'impression sera délivrée (objet). |
| utilisateur | Détails via un objet Utilisateur sur l'utilisateur humain de l'appareil ; l'audience publicitaire (objet). |
| ext | Emplacement pour les extensions spécifiques à l'échange. |
diablotin
| Attribut | Description |
|---|
| id | ID unique de l'impression dans cet appel d'offres (chaîne) |
| plancher de soumission | Enchère minimale pour cette impression (CPM) / ce clic (CPC) et devise du compte, facultatif (flottant). |
| bidfloorcur | Devise pour la valeur minimale de l'offre spécifiée en utilisant les codes alpha ISO-4217, facultatif (chaîne) |
| natif | Un objet Native ; nécessaire si cette impression est proposée en tant qu'opportunité publicitaire native (objet). |
| bannière | Un objet bannière ; nécessaire si cette impression est proposée comme une opportunité de bannière publicitaire (objet). |
| instl | Un objet interstitiel ; nécessaire si cette impression est proposée comme une opportunité publicitaire interstitielle ou popunder(objet).(objet). |
| sécurisé | Indicateur permettant de savoir si l'impression nécessite des ressources créatives et des balises URL HTTPS sécurisées, où 0 = non sécurisé, 1 = sécurisé. En cas d'omission, l'état de sécurité est inconnu, mais la prise en charge HTTP non sécurisée peut être supposée, facultatif (nombre entier) |
| el | Email encodé en Base64 (chaîne) |
bannière imp
| Attribut | Description |
|---|
| w | Largeur de la bannière en pixels (nombre entier). |
| h | Hauteur de la bannière en pixels (nombre entier). |
| mimes | Types MIME pris en charge. Exemples de valeurs : image/jpg, image/png, video/mp4, image/webp. |
imp.instl
| Attribut | Description |
|---|
| instl | Indicateur précisant si la publicité est un popunder/interstitiel (nombre entier) : 1=vrai, 0=faux |
imp.native (Native & Push Notifications)
| Attribut | Description |
|---|
| demande | Charge utile de la demande conforme à la spécification Native Ad - une chaîne encodée JSON de la demande Native Ads comprenant son objet natif de premier niveau (objet JSON) |
| ver | Version de l'API Dynamic Native Ads à laquelle request est conforme (chaîne) |
imp.native.request
| Attribut | Description |
|---|
| ver | Version de la version de la balise native utilisée (chaîne de caractères) |
| contexte | Le contexte dans lequel la publicité apparaît. Dans ce cas, il s'agit de 1 (Contexte centré sur le contenu, tel qu'un fil d'actualité, un article, une galerie d'images, une galerie vidéo ou similaire), facultatif (nombre entier) |
| plcmttype | La conception/le format/la mise en page de l'unité publicitaire proposée. Actuellement, nous prenons en charge 4 (Widget de recommandation) et 500 (Notification push) (nombre entier) |
| plcmtcnt | Nombre de placements identiques dans cette présentation (nombre entier) |
| actifs | Un tableau d'objets Asset. Toute réponse à une offre doit être conforme au tableau d'éléments exprimé dans la demande d'offre (tableau d'objets JSON) |
| seq | 0 pour la première annonce, 1 pour la deuxième, etc. Notez que ce paramètre ne doit généralement pas être utilisé en combinaison avec plcmtcnt - soit vous mettez aux enchères plusieurs emplacements identiques (auquel cas plcmtcnt>1, seq=0), soit vous organisez des enchères séparées pour des éléments distincts dans le flux (auquel cas plcmtcnt=1, seq=>=1) |
imp.native.request.assets
| Attribut | Description |
|---|
| id | Identifiant unique de l'actif, attribué par la bourse. Typiquement un compteur pour le tableau (entier) |
| requis | Défini à 1 si l'actif est requis ou 0 si l'actif est facultatif** (nombre entier) |
| plcmtcnt | Nombre de placements identiques dans cette présentation (nombre entier) |
| img | Objet image pour les actifs image* (objet JSON) |
| titre | Objet Titre pour les actifs du titre (objet JSON) |
| données | Objet de données pour le nom de la marque, la description, les évaluations, les prix, etc |
| vidéo | Objet vidéo pour les ressources vidéo. Voir la définition de l'objet de requête vidéo. Notez que les publicités vidéo in-stream (c'est-à-dire preroll, etc.) ne font pas partie des publicités natives. Les publicités natives peuvent contenir une vidéo en tant que création publicitaire (objet). |
* Un seul des objets {img, title, data} doit être présent dans chaque objet de l'actif
** Les actifs sont marqués comme nécessaires selon la configuration de la zone de l'éditeur où votre annonce peut être affichée
imp.native.request.assets.img
| Attribut | Description |
|---|
| type | ID de type de l'élément d'image pris en charge par l'éditeur. Nous prenons en charge les éléments suivants : 1 (Image d'icône) (entier), 3 (Large image preview for the ad) (entier) |
| w | Largeur de l'image en pixels, facultatif (entier) |
| h | Hauteur de l'image en pixels, facultatif (entier) |
| wmin | Largeur minimale requise de l'image en pixels (nombre entier) |
| hmin | Hauteur minimale requise de l'image en pixels (nombre entier) |
imp.native.request.assets.title
| Attribut | Description |
|---|
| len | Longueur maximale du texte de l'élément title. (entier) |
imp.native.request.assets.video
| Attribut | Description |
|---|
| mimes | Liste des types MIME pris en charge (tableau de chaînes). |
| minduration | Durée minimale de la publicité vidéo en secondes (nombre entier). |
| maxduration | Durée maximale de la publicité vidéo en secondes (nombre entier). |
| protocoles | Liste des protocoles de réponse aux appels d'offres vidéo pris en charge (tableau d'entiers). |
| linéarité | Indique si l'impression doit être linéaire, non linéaire, etc. |
| boxe autorisée | Indique si le letter-boxing d'un contenu 4:3 dans une fenêtre 16:9 est autorisé (nombre entier). |
imp.native.request.assets.data
| Attribut | Description |
|---|
| type | ID de type de l'élément pris en charge par l'éditeur (nombre entier). Nous prenons en charge les éléments suivants : 1 (sponsored - message "Sponsored By" dans lequel la réponse doit contenir le nom de la marque du sponsor), 2 (desc - texte descriptif associé au produit ou au service faisant l'objet de la publicité) |
| len | Longueur maximale du texte dans la réponse de l'élément (nombre entier) |
imp.video
| Attribut | Description |
|---|
| mimes | Liste des types de mime pris en charge (tableau de chaînes) |
| protocoles | Liste des protocoles de réponse aux appels d'offres vidéo pris en charge (tableau int) |
| sauter | Indique si le lecteur permet de sauter la vidéo, 0 = non, 1 = oui |
| sauter après | Nombre de secondes de lecture d'une vidéo avant que le saut ne soit activé ; applicable uniquement si la publicité peut être sautée |
| skipmin | Les vidéos d'une durée totale supérieure à ce nombre de secondes peuvent être ignorées ; cette règle ne s'applique que si l'annonce est ignorée |
Note: Si l'éditeur indique "skip" dans la demande, mais pas "skipafter", la vidéo pourra être sautée au bout de 5 secondes. Si l'éditeur indique "skip" mais pas "skipmin", la vidéo pourra être ignorée quelle que soit sa durée.
site
| Attribut | Description |
|---|
| id* | ID unique du site (chaîne de caractères) |
| domaine* | Nom de domaine du site (chaîne) |
| chat | ID de la catégorie IAB (tableau de chaînes) |
| page | URL complète de la page où l'annonce sera affichée (chaîne) |
| mots-clés | Les mots-clés peuvent être utilisés pour s'assurer que les zones d'annonces reçoivent le bon type de publicité. Les mots-clés doivent être une chaîne de mots séparés par des virgules |
| ext | Placeholder pour les extensions d'OpenRTB spécifiques à l'échange. |
*Ces attributs sont obligatoires pour les formats Direct Link et Email Clicks.
site.ext
| Attribut | Description |
|---|
| chat d'échange | ID de la catégorie ExoClick personnalisée (nombre entier) |
| idzone | ID de la zone publicitaire ExoClick personnalisée (entier) |
| mot-clé | Mot-clé correspondant s'il y en a un (chaîne) |
L'attribut idzone est utilisé pour identifier dans ExoClick la source d'où provient le trafic.
dispositif
| Attribut | Description |
|---|
| ua | Agent utilisateur du navigateur (chaîne) |
| géo | Emplacement de l'appareil supposé être l'emplacement actuel de l'utilisateur défini par un objet Geo. |
| ip | Adresse IP de l'utilisateur (chaîne)* |
| ipv6 | Adresse IPv6 de l'utilisateur (chaîne)* |
| langue | Langue du navigateur utilisant ISO-639-1-alpha-2 (chaîne) |
| os | Système d'exploitation (chaîne) |
| js | Prise en charge de JavaScript, où 0 = non, 1 = oui (nombre entier) |
| ext | Placeholder pour les extensions d'OpenRTB spécifiques à la bourse |
dispositif.geo
| Attribut | Description |
|---|
| pays | Pays ISO3 |
device.ext
| Attribut | Description |
|---|
| remote_addr | Adresse IP principale de l'utilisateur (chaîne) |
| x_forwarded_for | Adresse IP X-FORWARDED-FOR de l'utilisateur ou vide si non définie (chaîne) |
utilisateur
| Attribut | Description |
|---|
| id | Identifiant unique de l'utilisateur (chaîne) |
ext
| Attribut | Nécessaire ? | Description |
|---|
| sous | Non | Le sub sera un nombre entier représentant l'ID de la zone d'où provient la demande. |
regs.ext
| Attribut | Description |
|---|
| dsaapply | Drapeau indiquant si l'ASD est appliquée à la demande. 1 = Obligatoire (int) |
| dsa | Extension pour les informations de transparence de l'ASD (objet) |
regs.ext.dsa
| Attribut | Description |
|---|
| requis | Drapeau indiquant si les informations DSA doivent être mises à disposition. 0 = Non requis, 1 = Pris en charge, les réponses aux appels d'offres avec ou sans objet DSA seront acceptées, 2 = Requis, les réponses aux appels d'offres sans objet DSA ne seront pas acceptées, 3 = Requis, les réponses aux appels d'offres sans objet DSA ne seront pas acceptées, l'éditeur est une plateforme en ligne (int) |
| datatopub | L'éditeur peut avoir besoin des données de transparence à des fins d'audit. 0 = ne pas envoyer les données de transparence, 1 = envoi facultatif des données de transparence, 2 = envoyer les données de transparence (int) |
Note : *Si vous recevez dsaapply : 1 et required : 2 ou 3, il est obligatoire d'ajouter des attributs dsa avec des valeurs dans la réponse, sinon la réponse sera rejetée.
Exemples
Vous trouverez une liste complète de tous les types de demandes que vous pouvez recevoir sur notre page d'exemple de demande d'annonceur.