Skip to main content

Spécifications de l'appel d'offres ouvert RTB

Cette page explique comment faire des appels d'offres

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

The following objects should be sent encoded as JSON in the request body:  

Demande d'offre

AttributNécessaire ?Description
àOuiType d'enchère, premier prix = 1 (int)
idOuiID unique de l'appel d'offres (chaîne de caractères)
diablotinOuiTableau d'objets Imp représentant les impressions proposées (objet).
siteOuiDétails via un objet Site sur le site web de l'éditeur (objet).
dispositifOuiDétails via un objet Device sur l'appareil de l'utilisateur auquel l'impression sera délivrée (objet).
utilisateurNonDétails via un objet Utilisateur sur l'utilisateur humain de l'appareil ; l'audience publicitaire (objet).
extNonPlaceholder pour les extensions d'OpenRTB.

diablotin

AttributNécessaire ?Description
idOuiID unique de l'impression dans cet appel d'offres (chaîne)
plancher de soumissionNonEnchère minimale pour cette impression (CPM) / clic (CPC) et devise du compte (float)
bidfloorcurNonDevise pour la valeur minimale de l'offre spécifiée en utilisant les codes alpha ISO-4217 (chaîne)
natifUniquement pour les images natives et pushUne opportunité d'objet natif (objet).
bannièreUniquement pour les bannièresUne opportunité d'objet de bannière (objet).
instlUniquement pour les pop, les liens directs et les images cliquées par courrielUne opportunité d'objet Fullscreen (objet).
vidéoUniquement pour la vidéoUne opportunité d'objet vidéo (objet)
sécuriséRecommandé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é (option recommandée). 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 (nombre entier)
elNonEmail encodé en Base64 (chaîne)
extNonEmplacement pour les extensions spécifiques à l'échange

bannière imp

AttributNécessaire ?Description
wOuiLargeur de la bannière (entier)
hOuiHauteur de la bannière (entier)
mimesNonListe des types de mime pris en charge (tableau de chaînes). Nous supportons : image/jpeg, image/jpg, image/png, image/png, image/gif, image/webp, video/mp4
extNonEmplacement pour les extensions spécifiques à l'échange (objet)

imp.banner.ext

AttributNécessaire ?Description
sortie_imageNonIndique le format de sortie pour les bannières d'images* (chaîne)
sortie_vidéoNonIndique le format de sortie pour les bannières vidéo* (chaîne)

*Définit le format du champ adm pour le format de la bannière. Les options sont xml ou html. La valeur par défaut est xml si le champ n'est pas fourni.

imp.instl

AttributNécessaire ?Description
instlOui0 = lien direct/clics e-mail, 1 = popunder

imp.native (pour les publicités natives et les publicités par notification push)

AttributNécessaire ?Description
demandeOuiCharge 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)
verNonVersion de l'API Dynamic Native Ads à laquelle request est conforme (chaîne)

imp.native.request

AttributNécessaire ?Description
verOuiVersion de la version de la balise native utilisée (chaîne de caractères)
contexteNonLe 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)
plcmttypeOuiLa 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)
plcmtcntNonLe nombre de placements identiques dans cette présentation. Max : 10 (entier) (entier)
actifsOuiUn 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)
seqNon0 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

AttributNécessaire ?Description
idOuiID unique de l'actif, attribué par l'échange. Généralement un compteur pour le tableau (entier) 1 : Image asset ID, 2 : Title asset ID, 3 : Description asset ID
requisNonDéfini à 1 si l'actif est obligatoire ou 0 si l'actif est facultatif (nombre entier)
plcmtcntNonNombre de placements identiques dans cette présentation (nombre entier)
imgOuiObjet d'image pour les actifs d'image** (objet JSON)
titreNonObjet Titre pour les actifs du titre** (objet JSON)
donnéesNonObjet de données pour le nom de la marque, la description, les évaluations, les prix, etc

*The amount of bids received for your Native request will be based on the value you set in "plcmtcnt". For example, a bid request with "plcmtcnt":3 will receive 3 different bid objects. You can find an example of this in the Response example page.

** Un seul des objets {img, title, data} doit être présent dans chaque objet de l'actif

imp.native.request.assets.img

AttributNécessaire ?Description
typeNonID 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)
wNonLargeur de l'image en pixels, facultatif (entier)
hNonHauteur de l'image en pixels, facultatif (entier)
wminOuiLargeur minimale requise de l'image en pixels (nombre entier)
hminOuiHauteur minimale requise de l'image en pixels (nombre entier)

*Dimensions de l'icône de notification push : 192px x 192px

imp.native.request.assets.title

AttributNécessaire ?Description
lenOuiLongueur maximale du texte de l'élément title. (entier)

imp.native.request.assets.data

AttributNécessaire ?Description
typeOuiID 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é)
lenNonLongueur maximale du texte dans la réponse de l'élément (nombre entier)

imp.video

AttributNécessaire ?Description
mimesNonListe des types de mime pris en charge (tableau de chaînes)
protocolesNonListe des protocoles de réponse aux appels d'offres vidéo pris en charge (tableau int)
sauterNonIndique si le lecteur permet de sauter la vidéo, 0 = non, 1 = oui
sauter aprèsNonNombre de secondes de lecture d'une vidéo avant que le saut ne soit activé ; applicable uniquement si la publicité peut être sautée
skipminNonLes 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

Remarque : Si vous indiquez uniquement "skip" dans la demande, mais pas "skipafter", la vidéo pourra être sautée au bout de 5 secondes, la réponse définissant "skipoffset" à 5. Si vous indiquez "skip" mais pas "skipmin", la vidéo pourra être sautée quelle que soit sa durée.


imp.ext

AttributNécessaire ?Description
video_ctaNonIndique si des CTA doivent être fournis, 0 = non, 1 = oui (valeur par défaut : 1)

To see an example of CTA, please check our Response example page.  

site

AttributNécessaire ?Description
idExigéeID unique du site (chaîne de caractères)
domaineExigéeNom de domaine du site (chaîne)
nomExigéeNom du site (chaîne de caractères)
chatNonID de la catégorie IAB (tableau de chaînes)
pageRecommandéURL complète de la page où l'annonce sera affichée (chaîne)
mots-clésNonLes 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.
extNonPlaceholder pour les extensions d'OpenRTB spécifiques à l'échange.

site.ext

AttributNécessaire ?Description
chat d'échangeNonID de la catégorie ExoClick personnalisée (nombre entier)
idzoneNonID de la zone publicitaire ExoClick personnalisée (entier)

application

AttributNécessaire ?Description
idExigéeID unique de l'application (chaîne)
chatNonID de la catégorie IAB (tableau de chaînes)
mots-clésNonLes 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 (chaîne)
éditeurNonDétails sur l'éditeur (objet)

Note : Vous ne pouvez pas envoyer l'objet "app" avec "site" ou vice versa.


app.publisher

AttributNécessaire ?Description
domaineRecommandéDomaine de premier niveau de l'éditeur (par exemple, "publisher.com") (chaîne)

dispositif

AttributNécessaire ?Description
uaOuiAgent utilisateur du navigateur (chaîne)
géoNonEmplacement de l'appareil supposé être l'emplacement actuel de l'utilisateur défini par un objet Geo.
ipOuiAdresse IP de l'utilisateur (chaîne)*
ipv6RecommandéAdresse IPv6 de l'utilisateur (chaîne)*
langueRecommandéLangue du navigateur utilisant ISO-639-1-alpha-2 (chaîne)
osNonSystème d'exploitation (chaîne)
jsNonPrise en charge de JavaScript, où 0 = non, 1 = oui (nombre entier)
extNonPlaceholder pour les extensions d'OpenRTB spécifiques à la bourse

Note : Vous ne devez inclure que ip ou ipv6 dans votre demande, pas les deux. Si vous utilisez ipv6, supprimez l'attribut ip, et vice versa. L'inclusion des deux peut provoquer des erreurs.


dispositif.geo

AttributNécessaire ?Description
paysNonPays ISO3

device.ext

AttributNécessaire ?Description
remote_addrNonAdresse IP principale de l'utilisateur (chaîne)
x_forwarded_forNonAdresse IP X-FORWARDED-FOR de l'utilisateur ou vide si non définie (chaîne)

utilisateur

AttributNécessaire ?Description
idOuiIdentifiant unique de l'utilisateur (chaîne)

Remarque : Si vous ne pouvez pas générer une chaîne d'identification de l'utilisateur, vous pouvez la laisser vide (""). La demande recevra une réponse si l'objet "user" est inclus dans la demande.


ext

AttributNécessaire ?Description
sousNonLe Sub ID. Il s'agit d'un nombre compris entre six et dix chiffres : Ne pas utiliser de zéros au début des sous-identifiants.
l'exportationNonLe type de réponse peut être "json" ou "xml" (chaîne). La valeur par défaut est "json".

Note: Sub IDs should be a number between 1 and Int32: Do not use zeroes at the beginning of Sub IDs.


Exemples

You can find a detailed list of Request examples in our example page