Partager via


Service d’élément de ligne

Remarque

Cette page décrit le service d’élément de ligne pour les éléments de ligne standard (hérité). Si vous utilisez des éléments de ligne augmentés, consultez Service d’élément de ligne - ALI à la place.

Les éléments de ligne sous un ordre d’insertion représentent les stratégies convenues que vous allez exécuter pour l’annonceur. Après avoir configuré un élément de ligne et éventuellement (selon que l’annonceur utilise ou non des ordres d’insertion) l’associant à une ou plusieurs commandes d’insertion, vous pouvez créer des campagnes pour spécifier comment dépenser l’argent pour remplir votre contrat. Les éléments de ligne sont l’endroit où vous enregistrerez les « revenus réservés » à l’aide des revenue_type champs et revenue_value , qui décrivent le type de revenu (CPM, CPA, etc.) et le montant que vos annonceurs paieront.

Remarque

Les ordres d’insertion seront finalement obligatoires. Par conséquent, comme bonne pratique, Xandr vous encourage à commencer à utiliser des ordres d’insertion dans le cadre de l’implémentation de votre API.

Xandr suggère d’associer vos éléments de ligne à des ordres d’insertion pour conserver les données historiques de rythme et de performances sur les éléments de ligne dans un ordre d’insertion unique, et pour simplifier votre configuration pour les relations publicitaires de longue date en ajoutant des intervalles budgétaires à un ordre d’insertion. Les éléments de ligne peuvent être associés à un ou plusieurs ordres d’insertion, mais uniquement à ceux du même type (ordre d’insertion qui utilise des intervalles budgétaires ou qui ne le fait pas). Chaque élément de ligne est associé à une ou plusieurs campagnes enfants ; Les stratégies d’enchères et le ciblage des stocks sont ensuite définis au niveau de la campagne.

Remarque

Éléments de ligne transparents

Il existe deux types d’éléments de ligne : transparent et non transparent (hérité). La différence main entre les éléments de ligne transparents et non transparents est que les éléments de ligne transparents utilisent le tableau et les éléments de ligne non transparents ne le budget_intervals font pas. En termes de configuration, les différences main sont les suivantes :

  • Pour créer un élément de ligne fluide , vous devez :
    • Associez l’élément de ligne à chaque ordre d’insertion en spécifiant les ID des ordres d’insertion transparents parent dans le insertion_orders tableau. Chaque objet du tableau doit avoir un id champ dont la valeur correspond à l’un des ordres d’insertion transparent parent. Cela associe l’élément de ligne à chacun de ces ordres d’insertion. Vous ne pouvez pas associer des éléments de ligne transparente à des ordres d’insertion non transparents.
    • Utilisez le parent_interval_id champ dans le budget_intervals tableau pour spécifier chaque intervalle budgétaire défini sur tous les ordres d’insertion associés à l’élément de ligne. Cela détermine quand l’élément de ligne s’exécute.
    • Laissez les start_date champs et end_date (et tous les champs de budget ou de rythme) au niveau de l’objet élément de ligne de niveau supérieur défini nullsur .
    • Associez uniquement des éléments de ligne transparente à des ordres d’insertion transparents.

Vous devez également utiliser les champs associés au budget et au rythme dans le budget_intervals tableau pour spécifier le budget disponible pour l’élément de ligne au cours de chaque intervalle budgétaire et la façon dont les dépenses de ce budget doivent être rythmées.

  • Pour créer un élément de ligne non transparent , vous devez :
    • Utilisez les champs associés au budget et au rythme, ainsi que les start_date champs et end_date de l’objet d’élément de ligne main pour spécifier les dates pendant lesquelles l’ordre d’insertion doit s’exécuter, le budget disponible pendant ces dates et la façon dont les dépenses du budget doivent être rythmées.
    • Laissez tous les champs du budget_intervals champ (et tous les champs de son tableau) définis sur null. Vous ne pouvez pas associer des éléments de ligne non transparents à des commandes d’insertion transparentes.
    • Associez uniquement les éléments de ligne non transparents aux ordres d’insertion non transparents.

Les éléments de ligne transparents sont le modèle préféré. Vous devez utiliser le flux de travail d’élément de ligne transparent lors de la création d’éléments de ligne. Vous ne pouvez pas convertir un élément de ligne non transparent en ligne transparente ou lier des éléments de ligne non transparents à des commandes d’insertion transparentes (ou des articles de lignes transparentes en commandes d’insertion non transparentes).

Dans l’interface utilisateur, l’API budget_intervals est appelée « Périodes de facturation ».

À propos des Goals de performances

Les objectifs de performances sont également définis sur l’élément de ligne. Ils sont utilisés pour suivre et mesurer le rendement de la campagne lorsqu’un annonceur a articulé des objectifs de performance et quand les revenue_type et ne goal_type sont pas mesurés de la même façon. Par exemple, un revenue_type de "cpm" peut être mis en correspondance avec un goal_type de "ctr" , car l’annonceur souhaite mesurer la réalisation de l’objectif en termes de taux de clics, mais de paiement en CPM.

Pour définir des objectifs de performances pour les éléments de ligne avec goal_type"cpa", utilisez le goal_pixels tableau . Ce tableau contient des informations sur les objectifs de performance et les seuils. Pour définir des objectifs de performances pour les éléments de ligne avec ou goal_type"cpc""ctr", utilisez l’objet .valuation Cet objet contient le seuil d’objectif de performance, qui détermine le seuil d’enchère/sans enchère sur les campagnes optimisées, et la cible d’objectif de performance, qui représente le taux de clics ou de clics souhaités.

Pour en savoir plus sur les objectifs de performances, consultez Understanding Performance Goals dans la documentation de l’interface utilisateur.

API REST

HTTP, méthode Endpoint Description
POST https://api.appnexus.com/line-item?advertiser_id=ADVERTISER_ID
(élément de ligne JSON)
Ajoutez un nouvel élément de ligne.
PUT - https://api.appnexus.com/line-item?id=LINEITEM_ID& advertiser_id=ADVERTISER_ID
- https://api.appnexus.com/line-item?code=LINE-ITEM_CODE& advertiser_code=ADVERTISER_CODE
(élément de ligne JSON)
Modifier un élément de ligne existant.
GET - https://api.appnexus.com/line-item?advertiser_id=ADVERTISER_ID
- https://api.appnexus.com/line-item?code=LINE-ITEM_CODE& advertiser_code=ADVERTISER_CODE
Afficher tous les éléments de ligne d’un annonceur.
GET https://api.appnexus.com/line-item?id=1,2,3 Affichez plusieurs éléments de ligne par ID à l’aide d’une liste séparée par des virgules.
DELETE https://api.appnexus.com/line-item?id=1 Supprimer un élément de ligne spécifique identifiant par son ID.

Avertissement :
La suppression est récursive et permanente.
La suppression d’un élément de ligne entraîne également la suppression de tous les intervalles et fractionnements budgétaires associés. Les suppressions sont permanentes et ne peuvent pas être annulées.

Remarque :
Filtres de chaîne de requête utiles
- Vous pouvez filtrer les éléments de ligne en fonction du moment où ils ont été servis pour la première et la dernière fois. Cela est particulièrement utile lorsque vous approchez de votre limite d’objets et que vous devez identifier les éléments de ligne qui peuvent être supprimés du système. Pour plus d’informations, consultez Première exécution et Dernière exécution ci-dessous.
- Vous pouvez filtrer les lignes qui ne sont pas en service en raison de différentes conditions. Pour plus d’informations, consultez Alertes ci-dessous.
GET https://api.appnexus.com/line-item?search=SEARCH_TERM Recherchez des éléments de ligne avec des ID ou des noms contenant certains caractères.
DELETE - https://api.appnexus.com/line-item?id=LINEITEM_ID& advertiser_id=ADVERTISER_ID
- https://api.appnexus.com/line-item?code=LINE-ITEM_CODE& advertiser_code=ADVERTISER_CODE
Supprimer un élément de ligne.

Avertissement :
La suppression est récursive et permanente
La suppression d’un élément de ligne supprime également toutes ses campagnes enfants, suivis d’impression et clicktrackers. Les suppressions sont permanentes et ne peuvent pas être annulées. Bien que les objets supprimés continuent d’être disponibles dans les rapports, vous n’aurez plus de visibilité sur leurs paramètres spécifiques (par exemple, le budget des revenus et le suivi des éléments de ligne, le budget des coûts et le ciblage des campagnes).
GET https://api.appnexus.com/line-item/meta Découvrez les champs que vous pouvez filtrer et trier.

Champs JSON

Champ Type (Longueur) Description
id int ID de l’élément de ligne.
Obligatoire On :PUT, dans la chaîne de requête
code string (100) Code personnalisé pour l’élément de ligne. Le code peut contenir uniquement des caractères alphanumériques, des points, des traits de soulignement ou des tirets. Le code que vous entrez ne respecte pas la casse (les caractères en majuscules et en minuscules sont traités de la même façon). 2 objets au même niveau (par exemple, des éléments de ligne ou des campagnes) ne peuvent pas utiliser le même code par annonceur. Par exemple, les éléments de 2 lignes ne peuvent pas utiliser le code « XYZ », mais un seul élément de ligne et sa campagne enfant le peuvent.
Par défaut:null
name string (255) Nom de l’élément de ligne.
Obligatoire sur :POST
advertiser_id int ID de l’annonceur auquel appartient l’élément de ligne.
state enum État de l’élément de ligne. Valeurs possibles : "active" ou "inactive".
Par défaut:"active"
line_item_type enum Type d’élément de ligne. Les valeurs possibles sont les suivantes :
- "standard_v1": élément de ligne standard (non-ALI).
- "standard_v2": élément de ligne augmenté (ALI).
Note: Si vous créez un ali, consultez cette version de la documentation du service Élément de ligne , car différents paramètres de champ sont requis.
- "guaranteed_delivery": élément de ligne garanti (GDLI).
Par défaut:"standard_v1"
start_date Timestamp Date et heure auxquelles l’élément de ligne non transparent doit commencer à servir. Cette valeur reflète le fuseau horaire de l’annonceur.

Important: Si vous créez un élément de ligne transparente, ne définissez pas ce champ.

Par défaut:null (immédiatement)
end_date Timestamp Date et heure auxquelles l’élément de ligne non transparent doit cesser de servir. Cette valeur reflète le fuseau horaire de l’annonceur.

Important :
Si vous créez un élément de ligne transparente, ne définissez pas ce champ.

Par défaut:null (indéfiniment)

Important: Les dates sont inclusives ; par exemple, un end_date du 4 mai signifie que la campagne se déroule jusqu’à 23 :59 :59 le 4 mai.
timezone enum Fuseau horaire par lequel le budget et les dépenses sont comptés. Pour plus d’informations et les valeurs acceptées, consultez Fuseaux horaires d’API.

Remarque :
Tout PUT appel au advertiser service inclus set_child_timezone=true dans la chaîne de requête entraîne la substitution des paramètres de fuseau horaire sur les objets de niveau inférieur (par exemple, les ordres d’insertion, les éléments de ligne, les campagnes) par la valeur de fuseau horaire la plus récente pour cet annonceur.

Par défaut: »EST5EDT" ou le fuseau horaire de l’annonceur.
discrepancy_pct double Déconseillée.
publishers_allowed string Spécifie le type d’inventaire sur lequel enchérir avec cet élément de ligne. Valeurs possibles : real_time ou direct. Les campagnes en temps réel peuvent cibler les stocks exposés pour rtb par d’autres membres Xandr ou par nos partenaires d’approvisionnement d’inventaire. Les campagnes directes peuvent cibler uniquement l’inventaire des éditeurs au sein de votre réseau.
revenue_value double Montant versé au réseau par l’annonceur.

Remarque :
Ce champ doit être défini sous certaines conditions, mais peut ne pas l’être dans d’autres. En plus des POST/PUT exigences répertoriées dans la colonne Obligatoire sur , notez les points suivants :
- Le champ peut être rempli lorsque revenue_type a la valeur cpm, cpc, cpa, cost_plus_margin, cost_plus_cpm, est_cpm. Toutefois, si est"cpa", revenue_type ce champ sera ignoré, car le chiffre d’affaires est suivi via post_view_revenue ou post_click_revenue sur le pixel.
- Le champ peut ne pas être rempli lorsque revenue_type a la valeur "none" ou "vcpm".

Obligatoire sur :
POST / PUT, si revenue_type a la valeur "cpc".
POST / PUT, si revenue_type a la valeur "flat_fee".

Note: Si "flat_fee_type" est "daily" , il s’agit de la valeur payée par jour. Si "flat_fee_type" est "one_time" , il s’agit de la valeur payée à la date d’allocation finale.
revenue_type enum La façon dont l’annonceur a accepté de vous payer. Les valeurs possibles sont répertoriées ci-dessous.

Note: Si post_view_revenue ou post_click_revenue est défini pour n’importe quel pixel dans le pixels tableau, revenue_type doit être "cpa".

Ne revenue_type peut pas être défini sur une valeur incompatible avec les campagnes enfants de l’élément de ligne.
- "none": ne suivez pas le chiffre d’affaires de l’élément de ligne.
- "cpm": Paiement forfaitaire par 1000 impressions.
- "cpc": paiement forfaitaire par clic.
- "cpa": paiement forfaitaire par conversion.
- "cost_plus_cpm": coût multimédia (ce que vous dépensez en inventaire) plus un CPM supplémentaire.
- "cost_plus_margin": coût multimédia (ce que vous dépensez en inventaire) plus un pourcentage de ce que vous dépensez.
- "flat_fee": paiement forfaitaire que l’annonceur vous paiera à une date d’allocation spécifiée. Cette date peut être quotidienne ou à la fin du vol. Si vous payez aux éditeurs gérés un pourcentage de votre chiffre d’affaires, leur part sera payée à la date d’allocation, après quoi l’élément de ligne ne sera plus modifiable. Notez que les frais forfaitaires ne seront pas réservés à la date d’allocation, sauf si l’article de ligne a servi au moins 1 impression. Si vous définissez un revenue_type de flat_fee , vous devez spécifier une valeur pour flat_fee_type.
- "vcpm": (Serveur de publication uniquement) Paiement forfaitaire par 1 000 impressions visibles. Pour plus d’informations sur l’affichage, consultez Présentation de l’affichage.
- "est_cpm": paiement forfaitaire estimé par 1 000 impressions.

Par défaut:"none"
goal_type enum Pour les éléments de ligne qui utilisent des objectifs de performance, la façon dont l’annonceur souhaite mesurer l’optimisation de la campagne.
Valeurs possibles : "none", "cpc", "cpa"ou "ctr".

Par défaut:"none"
goal_value double Déconseillé. Utilisez valuation l’objet à la place. Pour plus d’informations, consultez Évaluation ci-dessous.
last_modified Timestamp Heure de la dernière modification de cet élément de ligne.
En lecture seule.
click_url string (1000) URL de clic à appliquer au niveau de l’élément de ligne.
currency string (3) Devise utilisée pour cet élément de ligne. Pour obtenir la liste des devises prises en charge, consultez service monétaire.

Note: Une fois l’élément de ligne créé, la devise ne peut pas être modifiée.
Il est recommandé d’aligner la devise sur la devise de facturation afin d’obtenir la meilleure expérience de devise locale possible.

Par défaut: Devise par défaut de l’annonceur.
require_cookie_for_tracking valeur booléenne Indique si vous souhaitez servir uniquement aux utilisateurs qui utilisent des cookies, afin d’effectuer le suivi des conversions (car l’attribution de conversion Xandr est basée sur des cookies). true indique que vous ne servirez pas aux utilisateurs non-cookies, car ils n’ont aucun potentiel pour l’attribution de conversion. false indique que vous servirez aux utilisateurs sans cookie et n’accepterez aucune attribution de conversion pour ces utilisateurs. Cet indicateur est appliqué uniquement lorsqu’un pixel de conversion a été appliqué. Par conséquent, le paramètre true n’exige pas de cookies pour un élément de ligne qui n’a pas de pixels de conversion.
profile_id int Vous pouvez associer un facultatif profile_id à cet élément de ligne. Un profil est un ensemble générique de règles pour le ciblage de l’inventaire. Pour plus d’informations, consultez service de profil.
member_id int ID du membre propriétaire de l’élément de ligne.
comments string Commentaires sur l’élément de ligne.
remaining_days int En lecture seule. Nombre de jours entre aujourd’hui et le end_date pour l’élément de ligne.

Note: Il s’agit null de si est start_date dans le futur ou si ou n’est start_dateend_date pas défini.
total_days int Nombre de jours entre et start_date pour end_date l’élément de ligne. Notez que cette valeur est null si ou n’est start_dateend_date pas défini.
En lecture seule Cette propriété est un pointeur vers l’élément DOM racine du composant WebPart.
manage_creative valeur booléenne Si truela valeur est , les créations sont gérées au niveau de l’élément de ligne. Si falsela valeur est , les créations sont gérées au niveau de la campagne.
Par défaut:false
advertiser objet Objet décrivant l’annonceur auquel cet élément de ligne est associé. Pour plus d’informations, consultez Annonceur ci-dessous.
En lecture seule Cette propriété est un pointeur vers l’élément DOM racine du composant WebPart.
flat_fee objet Paiement forfaitaire que l’annonceur vous paiera à une date d’allocation spécifiée. Cette date d’allocation peut être quotidienne ou à la fin du vol. Si vous payez aux éditeurs gérés un pourcentage de votre chiffre d’affaires, leur part sera payée à la date d’allocation, après quoi l’élément de ligne ne sera plus modifiable. Notez que les frais forfaitaires ne seront pas réservés à la date d’allocation, sauf si l’article de ligne a servi au moins 1 impression. Pour plus d’informations, consultez Frais forfaitaires ci-dessous.
Obligatoire Sur :POST/PUT, si revenue_type a la valeur "flat_fee".
flat_fee_type string Les frais forfaitaires peuvent être payés quotidiennement ou à la date de fin du vol. Les valeurs disponibles sont :
- one_time: Les frais seront payés à la date d’allocation finale. La valeur associée revenue_value est la valeur à payer à cette date. Le vol ne peut pas durer plus d’un mois.
- daily: les frais seront payés quotidiennement. Les frais associés revenue_value sont les frais quotidiens, et non les frais pour l’intégralité du vol.
Par défaut:one_time
Obligatoire Sur :POST/PUT, si revenue_type a la valeur "flat_fee".
labels tableau Étiquettes facultatives appliquées à l’élément de ligne. Actuellement, quatre étiquettes sont disponibles : "Trafficker", "Sales Rep"et "Campaign Type". Pour plus d’informations, consultez Étiquettes ci-dessous.

Remarque :
Vous pouvez créer des rapports sur les étiquettes d’éléments de ligne avec les rapports Analyse réseau et Analyse des annonceurs réseau. Par exemple, si vous utilisez l’étiquette "Trafficker« » pour spécifier le nom du trafiquant responsable de chaque élément de ligne, vous pouvez exécuter le rapport Analyse réseau filtré par "trafficker_for_line_item" pour vous concentrer sur les éléments de ligne dont un trafiquant particulier est responsable ou regroupé par "trafficker_for_line_item" pour classer les performances de vos trafiquants.
broker_fees tableau Commissions que le réseau doit transmettre aux courtiers lors de la diffusion d’une publicité. Ces commissions sont déduites du chiffre d’affaires réservé (le montant que le réseau reçoit de l’annonceur) et sont généralement destinées à l’échange d’une relation avec l’annonceur. Il peut s’agir d’un pourcentage du chiffre d’affaires ou d’un CPM plat. Pour plus d’informations, consultez Frais de broker ci-dessous.

Remarque :
Les frais de broker au niveau de l’article remplacent les frais de broker au niveau de l’ordre d’insertion.
pixels tableau d’objets Pixels de conversion utilisés pour le type de revenu CPA. Les revenus post-clic et post-affichage peuvent être spécifiés. Vous ne pouvez attacher que 20 pixels à un élément de ligne. Si vous avez besoin d’en joindre d’autres, contactez votre consultant ou votre support technique pour l’implémentation Xandr.
Pour plus d’informations, consultez Pixels et l’exemple ci-dessous pour obtenir un exemple de format.
Par défaut:null
insertion_orders tableau d’objets Objets contenant des métadonnées pour les ordres d’insertion auxquels cet élément de ligne est associé. Pour plus d’informations, consultez Commandes d’insertion ci-dessous.

Remarque :
Une fois qu’un élément de ligne est associé à un ordre d’insertion transparent, il ne peut pas être associé à un ordre d’insertion non transparent. Seules les commandes d’insertion transparente peuvent être associées à des éléments de ligne transparente. Seules les commandes d’insertion non transparentes peuvent être associées à des éléments de ligne non transparents.
goal_pixels tableau Pour un élément de ligne avec le goal_type"cpa", pixels utilisés pour le suivi des conversions, ainsi que les revenus après affichage et après clic. Pour plus d’informations, consultez Pixels d’objectif et l’exemple ci-dessous pour obtenir un exemple de format.
imptrackers tableau d’objets Suivis d’impression tiers associés à l’élément de ligne. Pour plus d’informations, consultez Impression Tracker Service.
En lecture seule.
clicktrackers tableau d’objets Suivis de clics tiers associés à l’élément de ligne. Pour plus d’informations, consultez Service de suivi de clic.
En lecture seule.
campaigns tableau d’objets Campagnes associées à l’élément de ligne. Pour plus d’informations, consultez Campagnes ci-dessous.

Remarque :
Pour associer une campagne à un élément de ligne, utilisez le line_item_id champ dans le service Campaign. Notez que pas plus de 500 campagnes peuvent être associées à un seul élément de ligne.
En lecture seule.
valuation objet Pour un élément de ligne avec ou goal_type"cpc""ctr", le seuil d’objectif de performance, qui détermine le seuil d’enchère/non sur les campagnes optimisées, et la cible d’objectif de performance, qui représente le taux de clics ou de clics souhaités. Pour plus d’informations, consultez Évaluation ci-dessous.
creatives tableau d’objets Éléments créatifs associés à l’élément de ligne. Pour plus d’informations, consultez Créations ci-dessous.
budget_intervals tableau d’objets Remarque :
Ce tableau est uniquement pertinent pour et requis pour les éléments de ligne transparente (si l’élément de ligne n’est pas transparent, laissez ce champ défini sur null).

Les intervalles budgétaires permettent d’attacher plusieurs intervalles de date à un élément de ligne, chacun avec les valeurs budgétaires correspondantes. Pour plus d’informations, consultez Intervalles budgétaires ci-dessous.

Remarque :
Si vous utilisez budget_intervals, les champs suivants ne doivent pas être utilisés sur l’objet line-item :
- lifetime_pacing
- lifetime_budget
- lifetime_budget_imps
- enable_pacing
- lifetime_pacing_span
- allow_safety_pacing
- daily_budget
- daily_budget_imps
- lifetime_pacing_pct
roadblock objet Paramètres de blocage pour l’élément de ligne. Pour plus d’informations, voir Roadblock ci-dessous.
lifetime_budget double Budget de durée de vie en revenus. La devise revenue est définie par le currency champ . Si vous ne souhaitez pas allouer le budget d’élément de ligne à ce budget_interval, définissez ce champ sur 0.

Note: Applicable uniquement aux éléments de ligne non transparents.

Si vous définissez également le lifetime_budget_imps champ, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.

Par défaut:null (illimité)
lifetime_budget_imps int Budget de durée de vie dans les impressions.
lifetime_budget_imps fonctionne comme une durée de vie "catch-all" ou "cap" pour le budget d’impression total d’un élément de ligne. Un élément de ligne ne dépassera pas le nombre d’impressions définies pour ce champ, et si le nombre d’impressions remises est supérieur à celui défini pour ce champ, l’élément de ligne cessera d’enchérir.
Si vous ne souhaitez pas allouer le budget d’élément de ligne à ce budget_interval, définissez ce champ sur 0.

Note: Applicable uniquement aux éléments de ligne non transparents.
Si vous définissez également le lifetime_budget champ, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.

Par défaut:null (illimité)
daily_budget double Budget quotidien en recettes. La devise revenue est définie par le currency champ .

Note: Applicable uniquement aux éléments de ligne non transparents.

Si vous définissez également le daily_budget_imps champ, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.
Par défaut:null (illimité)
daily_budget_imps int Budget quotidien dans les impressions.

Note: Applicable uniquement aux éléments de ligne non transparents.
Si vous définissez également le lifetime_budget champ, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.

Par défaut:null (illimité)
enable_pacing valeur booléenne Si truela valeur est , les dépenses quotidiennes budgétées sont réparties uniformément tout au long d’une journée. Applicable uniquement s’il existe un budget quotidien. C’est pourquoi la valeur par défaut true est si le budget quotidien est défini ; sinon, il est défini par défaut sur null.

Note: Applicable uniquement aux éléments de ligne non transparents.
Par défaut:null
allow_safety_pacing valeur booléenne Si truela valeur est , les dépenses par minute sont limitées à un maximum de 1 % du budget de durée de vie et de 5 % du budget quotidien.

Note: Applicable uniquement aux éléments de ligne non transparents.
lifetime_pacing valeur booléenne Si truela valeur est , l’élément de ligne tente de dépenser son budget de durée de vie globale uniformément par rapport aux dates de vol de l’élément de ligne. Si true, vous ne pouvez pas définir un daily_budget, vous ne pouvez pas définir enable_pacing sur false, et vous devez d’abord établir un lifetime_budget, un start_dateet un end_date pour l’élément de ligne.

Note: Applicable uniquement aux éléments de ligne non transparents.

Par défaut:null
lifetime_pacing_span int En cas d’événement sous-dépensé, cela indique le nombre de jours pendant lesquels le montant sous-dépensé sera distribué.

Note: Applicable uniquement aux éléments de ligne non transparents.

Par défaut:null (3 jours)
lifetime_pacing_pct double Nombre entier double compris entre 50 et 150 compris, utilisé pour définir le rythme tout au long d’un intervalle budgétaire. Les valeurs possibles peuvent être n’importe quel double compris entre 50 et 150 sur l’échelle suivante :
- 50: Rythme en retard
- 100: Rythme uniformément
- 150: Rythme en avance sur la planification

Remarque :
Avis alpha-bêta
Ce champ ou cette fonctionnalité fait partie de la fonctionnalité actuellement en phase Alpha ou Bêta. Il est donc susceptible d’être modifié.

Applicable uniquement aux éléments de ligne non transparents.

Par défaut:100
payout_margin double Marge de paiement sur les éléments de ligne de l’offre de performances.
insertion_order_id int ID de l’ordre d’insertion actif actuel (le cas échéant). Doit ajouter include_insertion_order_id=true pour retourner ce champ dans un GET appel. Pour plus d’informations, consultez Service de commande d’insertion.

Note: Seules les commandes d’insertion transparente peuvent être associées à des éléments de ligne transparente. Seules les commandes d’insertions non transparentes peuvent être associées à des éléments de ligne non transparents.
stats objet L’objet stats est déconseillé (depuis le 17 octobre 2016). Utilisez plutôt le service de rapports pour obtenir des informations statistiques.
all_stats tableau Pour afficher les rapports rapides pour tous les intervalles disponibles (aujourd’hui, hier, les 7 derniers jours, durée de vie), transmettez all_status=true la chaîne de requête d’une GET requête.
En lecture seule.
object_stats objet Nombre total de campagnes actives et inactives sous l’élément de ligne.
En lecture seule.
first_run Timestamp Date et heure auxquelles l’élément de ligne a eu sa première impression, actualisée toutes les heures. Cette valeur reflète le fuseau horaire UTC. Pour inclure ces informations dans une GET réponse, transmettez flight_info=true la chaîne de requête. Pour plus d’informations sur la façon de filtrer les éléments de ligne en fonction du moment où ils sont servis pour la première fois, consultez Première exécution et dernière exécution ci-dessous.
En lecture seule.
last_run Timestamp Date et heure auxquelles l’élément de ligne a eu sa dernière impression, actualisée toutes les heures. Cette valeur reflète le fuseau horaire UTC. Pour inclure ces informations dans une GET réponse, transmettez flight_info=true la chaîne de requête. Pour plus d’informations sur la façon de filtrer les éléments de ligne en fonction du moment où ils ont été servis pour la dernière fois, consultez Première exécution et dernière exécution ci-dessous.
En lecture seule.
expected_pacing double Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
total_pacing double Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
has_pacing_dollars enum Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
has_pacing_imps enum Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
imps_pacing_percent int Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
rev_pacing_percent int Déconseillée.
Attention:
L’objet stats et Quickstats sont dépréciés (depuis le 17 octobre 2016).
alerts objet Conditions qui empêchent l’élément de ligne de servir. Il existe deux types d’alertes : les pauses et les avertissements. Les pauses sont considérées comme intentionnelles et pilotées par l’utilisateur, tandis que les avertissements sont considérés comme involontaires. Notez qu’à l’heure actuelle, il n’y a aucun avertissement pour les éléments de ligne. Pour récupérer des éléments de ligne en fonction des pauses, vous devez transmettre certains paramètres de chaîne de requête dans la GET requête. Pour plus d’informations, notamment une liste complète des pauses possibles, consultez Alertes ci-dessous.
En lecture seule.
creative_distribution_type enum Lorsque plusieurs créations de la même taille sont acheminées via un élément de ligne, le paramètre de ce champ est utilisé pour déterminer la stratégie de rotation créative qui sera utilisée. Notez que les créations doivent être gérées sur l’élément de ligne pour pouvoir utiliser ce champ. Valeurs autorisées :
- even: valeur par défaut. Utilisez l’algorithme d’optimisation de la création Xandr standard, où l’évaluation de chaque créatif est calculée indépendamment et le créatif le mieux évalué est choisi pour servir.
- weighted: la rotation créative est basée sur un poids fourni par l’utilisateur.
- ctr-optimized: Le créatif avec le CTR le plus élevé offre le plus.
Par défaut:"even"
is_archived valeur booléenne Indique si l’élément de ligne a été automatiquement archivé parce qu’il n’est pas utilisé. Une fois la valeur définie truesur , la valeur ne peut pas être modifiée et les seuls appels qui peuvent être effectués sur l’objet d’élément de ligne sont GET et DELETE.

Remarque :
Si un élément de ligne est automatiquement archivé, son profil ainsi que toutes ses campagnes (et leurs profils) sont également archivés et les seuls appels qui peuvent être effectués sur ces objets sont GET et DELETE. En outre, une fois archivé, l’élément de ligne ne peut pas être associé à des commandes d’insertion.

Par défaut:false
En lecture seule.
archived_on Timestamp Date et heure auxquelles l’élément de ligne a été archivé (c’est-à-dire truequand le is_archived champ a été défini sur ).
Par défaut:null
En lecture seule.
priority int Pour la stratégie d’achat direct, la priorité pour les campagnes qui achètent votre propre inventaire managé. La priorité doit être définie sur l’objet de campagne.
Par défaut:5

Annonceur

Champ Type Description
id int Identificateur unique de cet annonceur.
name chaîne Nom de l’annonceur associé à l’ID unique ci-dessus.

Étiquettes

Vous pouvez utiliser le service d’étiquette en lecture seule pour afficher toutes les étiquettes possibles pour les éléments de ligne, les annonceurs, les ordres d’insertion, les campagnes et les éditeurs. Ce service vous permet également d’afficher les étiquettes qui ont déjà été appliquées à vos objets.

Champ Type Description
id int ID de l’étiquette. Valeurs possibles : 7, 8, 11.
name enum Nom de l’étiquette. Valeurs possibles : "Trafficker", "Sales Rep"ou "Campaign Type".
En lecture seule.
value string (100) Valeur affectée à l’étiquette. Par exemple, pour l’étiquette "Sales Rep" , il peut s’agir d’un nom tel que "Michael Sellers".

Frais de répartiteur

Lorsqu’un réseau utilise un répartiteur pour servir une impression, il paie des frais au répartiteur pour ce service. Cette valeur varie selon les réseaux, les courtiers et les campagnes. Par conséquent, le réseau doit spécifier le montant qu’il paiera chaque répartiteur qu’il utilise. Cette opération peut également être effectuée au niveau de la campagne (service de campagne) ou au niveau de l’ordre d’insertion (service d’ordre d’insertion).

Pour créer ou modifier des répartiteurs, reportez-vous au service Broker.

Champ Type Description
broker_id int ID du répartiteur.
broker_name chaîne Nom du répartiteur.
En lecture seule.
payment_type enum Type de paiement au répartiteur.
Valeurs possibles : "cpm" ou "revshare".

Note: Ne payment_type peut être défini sur "cpm" que si a la revenue_type valeur "cpm". Où revenue_type est défini sur "cpa" ou "cpc", payment_type doit être défini sur "revshare".
value double Valeur du paiement, en fonction du type de paiement.
description string (255) Description en forme libre de l’entrée des frais de courtier.

Create des frais de broker

$ cat add-LI-broker-fees.json
{
    "line-item":
        {
    "broker_fees":[
        {
            "broker_id": 145,
                "payment_type": "cpm",
                "value": "1.00",
                "description": "Smart JMS fee"
            }]
    }
}

$ curl -b cookies -c cookies -X PUT -d @add-LI-broker-fees.json 'https://api.appnexus.com/line-item?id=152083&advertiser_id=11'

{
    "response":{
        "status":"OK",
        "id":"152083",
        "count":1,
        "start_element":0,
        "num_elements":100,

        }
}

Modifier des frais de broker

$ cat modify-LI-broker-fee.json
{
"line-item" :
{ "broker_fees": [
    {
    "broker_id": 145,
        "payment_type": "cpm",
    "value": "2.00",
        "description": "Extra JMS fee"
        }]
    }
}

$ curl -b cookies -c cookies -X PUT -d @modify-broker-fee.json $ curl -b cookies -c cookies -X PUT -d @modify-LI-broker-fee.json 'https://api.appnexus.com/line-item?id=152083&advertiser_id=11' | json-pp

{
    "response":{
        "status":"OK",
        "id":"152083",
        "count":1,
        "start_element":0,
        "num_elements":100,
     }
}

Pixels

Chaque objet du pixels tableau inclut les champs suivants :

Champ Type Description
id int ID du pixel de conversion.
state enum État du pixel. Valeurs possibles : "active" ou "inactive".
post_click_revenue double Valeur de chiffre d’affaires post-clic pour le pixel.
post_view_revenue double Valeur de chiffre d’affaires de l’affichage post pour le pixel.
name string Nom du pixel de conversion.
En lecture seule.
trigger_type enum Type d’événement requis pour une conversion avec attributs. Valeurs possibles : "view", "click"ou "hybrid".
En lecture seule.

Ordres d’insertion

Champ Type Description
id int ID unique de l’ordre d’insertion.

Remarque :
Une fois qu’un élément de ligne est associé à un ordre d’insertion transparent, il ne peut pas être associé à un ordre d’insertion non transparent. Seules les commandes d’insertion transparente peuvent être associées à des éléments de ligne transparente. Seules les commandes d’insertions non transparentes peuvent être associées à des éléments de ligne non transparents.
state enum État de cet ordre d’insertion : "active" ou "inactive".
code string Code personnalisé facultatif utilisé pour identifier cet ordre d’insertion.
name string Nom de cet ordre d’insertion.
advertiser_id int Identificateur unique de l’annonceur associé à cet ordre d’insertion.
start_date date Date de début de cet ordre d’insertion.
end_date date Date de fin de cet ordre d’insertion.
timezone enum Fuseau horaire auquel cet ordre d’insertion est associé. Pour obtenir la liste des valeurs autorisées, consultez Fuseaux horaires d’API. La valeur par défaut est "EST5EDT" ou le fuseau horaire de l’annonceur.
last_modified date Date à laquelle cet objet d’ordre d’insertion a été mis à jour pour la dernière fois.
currency enum Type de devise associé à cet ordre d’insertion. Pour obtenir la liste des devises prises en charge, consultez Service monétaire.
budget_intervals tableau d’objets Métadonnées pour les intervalles de budget de l’ordre d’insertion associé. Les intervalles budgétaires permettent d’attacher plusieurs intervalles de date à un ordre d’insertion, chacun avec les valeurs budgétaires correspondantes. Pour plus d’informations, consultez Insertion Order Service.

Campagnes

Chaque objet du campaigns tableau inclut les champs suivants.

Champ Type Description
id int ID de la campagne.
En lecture seule.
name string Nom de la campagne.
En lecture seule.
state enum État de la campagne. Valeurs possibles : "active", "inactive"ou "parent_inactive".
En lecture seule.
inventory_type enum Type d’inventaire ciblé par cette campagne. Valeurs possibles : "real_time", "direct"ou "both". "Real-time" inclut tout inventaire tiers non géré par votre réseau qui a été activé pour la revente, y compris les partenaires fournisseurs externes tels que Microsoft Advertising Exchange et Google Ad Manager. "Direct" inclut uniquement l’inventaire géré par votre réseau.
En lecture seule.
cpm_bid_type enum Stratégie d’appel d’offres pour l’achat d’inventaires tiers par impression. Valeurs possibles : "base", "average", "clearing", "predicted"ou "margin". La moyenne équivaut au prix moyen estimé (EAP) ; la compensation équivaut au prix net estimé (ECP) ; prédit signifie que vous définissez un objectif DEP ou un objectif CPA.
En lecture seule.
priority int Pour la stratégie d’achat direct, la priorité pour les campagnes qui achètent votre propre inventaire managé.
Valeur par défaut :5 .
start_date date Date de début de la campagne.
end_date date Date de fin de la campagne.
creative_count int Nombre de créations associées à la campagne.
profile_id int ID du profil associé à la campagne.

Évaluation

L’objet d’évaluation est utilisé pour définir des objectifs de performances pour les éléments de ligne avec ou goal_type"cpc""ctr". Il contient le seuil d’objectif de performance, qui détermine le seuil d’enchère/sans enchère sur les campagnes optimisées, et l’objectif de performance cible, qui représente le taux de clics ou de clics souhaité.

L’objet valuation contient les champs suivants :

Champ Type Description
min_margin_pct decimal Pour les éléments de ligne avec revenue_type"cpm", "cpa"ou "cpc" la marge minimale PCT.
Par défaut:null
goal_threshold decimal Pour les éléments de ligne avec ou goal_type"cpc""ctr", le seuil d’objectif de performance, qui détermine le seuil d’enchère/aucune enchère sur les campagnes optimisées.
Par défaut:null
goal_target decimal Pour les éléments de ligne avec ou goal_type"cpc""ctr", la cible d’objectif de performances, représentant le taux de clics ou de clics souhaité.
Par défaut:null
performance_mkt_managed valeur booléenne Si truela valeur est , l’élément de ligne est un élément de ligne de la Place de marché des performances qui achète sur l’inventaire managé. Ce champ s’applique uniquement lorsque revenue_type a la valeur "cpc" ou "cpa".
Par défaut:false
campaign_group_valuation_strategy enum Remarque :
Avis alpha-bêta
Ce champ ou cette fonctionnalité fait partie de la fonctionnalité actuellement en phase Alpha ou Bêta. Il est donc susceptible d’être modifié.

Pour les éléments de ligne avec revenue_type“cpm”, “cpc”ou “cpa”, détermine la stratégie d’optimisation des objectifs de performances qui sera appliquée. Les valeurs possibles sont les suivantes :
- “prospecting”: pour utiliser l’optimisation standard de Xandr.
- "retargeting": pour optimiser vers un segment de reciblage utilisateur. Si vous sélectionnez ce paramètre, vous devez également associer un segment de reciblage utilisateur à l’élément de ligne. Pour créer des segments d’utilisateur, consultez le service Segment. Pour associer des segments de reciblage utilisateur à l’élément de ligne, consultez Service de profil.

Par défaut:null

Créatifs

Chaque objet du creatives tableau inclut les champs suivants. Pour obtenir des informations sur "id" les champs ou "code" , vous pouvez utiliser creative service.

Champ Type Description
is_expired valeur booléenne Si truela valeur est , la création a expiré. Si falsela valeur est , le créatif est actif.
En lecture seule.
is_prohibited oolean Si truela valeur est , le créatif tombe dans une catégorie interdite sur la plateforme Xandr.
En lecture seule.
width int Largeur du créatif.
En lecture seule.
audit_status enum Audit status du créatif. Valeurs possibles : "no_audit", "pending", "rejected", "audited"ou "unauditable".
En lecture seule.
name chaîne En lecture seule. Nom du créatif.
pop_window_maximize valeur booléenne Si truela valeur est , la balise de l’éditeur agrandit la fenêtre. Uniquement pertinent pour les créations au format "url-html" et "url-js". Si pop_window_maximize a la truevaleur , ni ne heightwidth doit être défini sur le créatif.
En lecture seule.
height int La hauteur du créatif.
En lecture seule.
state enum État du créatif. Valeurs possibles : "active" ou "inactive".
En lecture seule.
format enum Format du fichier créatif. Valeurs possibles : "url-html", "url-js", "flash", "image", "raw-js""raw-html", "iframe-html"ou "text".
En lecture seule.
is_self_audited valeur booléenne Si truela valeur est , le créatif est auto-audité.
En lecture seule.
id int ID du créatif. ou idcode est requis lors de la mise à jour de l’association créative.
weight int(10) Poids fourni par l’utilisateur qui détermine la stratégie de rotation créative pour les créations de même taille gérées au niveau de l’élément de ligne. Pour utiliser ce champ, la valeur de creative_distribution_type doit être "weighted". Valeur autorisée : entier supérieur 0 à et inférieur ou égal à 1000.
code chaîne Code personnalisé pour le créatif. ou idcode est requis lors de la mise à jour de l’association créative.

Intervalles budgétaires

Remarque

Ce tableau est utilisé uniquement pour les éléments de ligne transparente.

Les intervalles de budget sur les éléments de ligne transparente doivent être des copies des intervalles budgétaires définis dans leurs ordres d’insertion parents. Les intervalles de budget sur l’élément de ligne auront automatiquement les mêmes start_date intervalles end_date budgétaires et que leurs intervalles de budget d’ordre d’insertion correspondants, mais doivent avoir des budgets distincts. Ceux-ci fonctionnent comme des « sous-budgets » spécifiques à l’élément de ligne du budget sur l’intervalle budgétaire de l’ordre d’insertion correspondant.

Les intervalles de budget des éléments de ligne sont créés (et liés à leurs intervalles de budget d’ordre d’insertion) par le parent_interval_id champ . Lorsque vous créez un élément de ligne fluide, vous devez remplir le budget_intervals tableau avec des références à tous les intervalles budgétaires sur toutes les commandes d’insertion que vous associez à cet élément de ligne (les commandes d’insertion sont associées à des éléments de ligne via le insertion_orders tableau dans le service d’élément de ligne). Pour ce faire, ajoutez au tableau des objets qui contiennent un seul champ, parent_interval_id, dont la valeur est un intervalle budgétaire d’ordre d’insertion dont l’élément de ligne doit hériter. Consultez Ajouter un élément de ligne fluide avec des intervalles budgétaires dans la section Exemples ci-dessous.

Tenez également compte des points suivants lors de l’utilisation du budget_interval tableau :

  • Les plages de dates (par exemple, start_date, end_date) d’intervalles de budget différents sur le même élément de ligne ne peuvent pas se chevaucher.
  • Les intervalles de budget sur l’élément de ligne peuvent avoir des budgets de durée de vie illimités (c’est-à-dire null, si ces champs de budget sont définis sur ).
  • Les intervalles budgétaires ne peuvent pas être utilisés si les champs de budget du niveau le plus élevé de l’objet insertion_order lui-même sont définis.
  • Les modifications apportées aux intervalles budgétaires au niveau de l’ordre d’insertion sont propagées aux intervalles budgétaires correspondants au niveau des éléments de ligne (par exemple, la suppression d’un intervalle budgétaire dans l’ordre d’insertion supprime également cet intervalle budgétaire sur tous les éléments de ligne qui l’utilisent).
  • Si vous augmentez le budget pour l’intervalle budgétaire de l’élément de ligne, vous devez d’abord augmenter le budget pour l’intervalle budgétaire dans l’ordre d’insertion parent (sinon, vous risquez de ne pas disposer d’un budget suffisant). Pour plus d’informations, consultez Insertion Order Service.

Chaque objet du budget_intervals tableau contient les champs suivants.

Champ Type Description
id int ID de l’intervalle budgétaire de l’élément de ligne.
start_date Timestamp Date de début de l’intervalle budgétaire, héritée de l’ordre d’insertion. Le format est YYYY-MM-DD hh:mm:ss.
end_date Timestamp Date de fin de l’intervalle budgétaire, héritée de l’ordre d’insertion. Le format doit être YYYY-MM-DD hh:mm:ss (hh :mm :ss doit être défini sur 23 :59 :59).

Note: Si le end_date de l’intervalle budgétaire de l’ordre d’insertion parent a été défini null sur (par exemple, aucune date de fin), l’élément end_date sur la ligne doit être défini sur une valeur non null.
timezone string Fuseau horaire par lequel le budget et les dépenses sont comptés. Pour obtenir la liste des valeurs de fuseau horaire acceptables, consultez Fuseaux horaires d’API. La valeur par défaut est "EST5EDT" ou le fuseau horaire de l’annonceur.

Remarque :
Tout PUT appel au advertiser service inclus set_child_timezone=true dans la chaîne de requête entraîne la substitution des paramètres de fuseau horaire sur les objets de niveau inférieur (par exemple, les ordres d’insertion, les éléments de ligne, les campagnes) par la valeur de fuseau horaire la plus récente pour cet annonceur.
parent_interval_id int ID de l’intervalle budgétaire de l’ordre d’insertion parent. Il s’agit du id champ dans le budget_intervals tableau dans l’ordre d’insertion. Obligatoire pour que l’intervalle budgétaire de l’élément de ligne hérite des valeurs des start_date champs et end_date dans l’intervalle budgétaire de l’ordre d’insertion.
lifetime_budget double Budget de la durée de vie en revenus pour l’intervalle de budget. La devise revenue est définie par le currency champ sur l’objet insertion_order . Définissez ce champ sur 0 si vous ne souhaitez pas que l’élément de ligne passe pendant cet intervalle budgétaire.
Ce champ est null défini par défaut sur (illimité).

Remarque :
Si vous définissez également le lifetime_budget_imps champ dans ce tableau, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.
lifetime_budget_imps int Budget de durée de vie dans les impressions pour l’intervalle de budget.

Note: Si vous ajoutez des éléments de ligne à cet ordre d’insertion, toutes les dépenses déjà associées à ces éléments de ligne avant leur ajout à l’ordre d’insertion ne sont PAS comptabilisées dans le budget de durée de vie de l’ordre d’insertion. Seules les dépenses qui se produisent lorsque l’élément de ligne est un enfant de l’ordre d’insertion sont comptabilisées. Définissez ce champ sur 0 si vous ne souhaitez pas que l’élément de ligne passe pendant cet intervalle budgétaire.

Ce champ est null défini par défaut sur (illimité).

Remarque :
Si vous définissez également le lifetime_budget champ dans ce tableau, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.
lifetime_pacing valeur booléenne Si truela valeur est , l’élément de ligne tente d’accélérer le budget de durée de vie uniformément sur l’intervalle budgétaire. Si true la valeur est , vous devez définir lifetime_budget ou lifetime_budget_imps.
daily_budget double Budget quotidien en recettes pour l’intervalle budgétaire. La devise revenue est définie par le currency champ sur l’objet insertion_order .

Note: Si vous ajoutez des éléments de ligne à cet ordre d’insertion, toutes les impressions associées à ces éléments de ligne lorsqu’ils sont ajoutés à l’ordre d’insertion ne sont PAS comptabilisées dans le budget de durée de vie de l’ordre d’insertion. Seules les impressions qui se produisent lorsque l’élément de ligne est un enfant de l’ordre d’insertion sont comptabilisées.

Ce champ est null défini par défaut sur (illimité).

Remarque :
Si vous définissez également le daily_budget_imps champ dans ce tableau, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.
daily_budget_imps int Budget quotidien dans les impressions.
Ce champ est null défini par défaut sur (illimité).

Remarque :
Si vous définissez également le daily_budget champ, le budget épuisé en premier entraîne l’arrêt des dépenses. La meilleure pratique consiste à définir un seul de ces champs.
enable_pacing valeur booléenne Si truela valeur est , les dépenses seront rythmées au cours de la journée. Applicable uniquement s’il existe un daily_budget.

Pixels d’objectif

Le goal_pixels tableau est utilisé lors de l’utilisation goal_type"cpa" de et contient des informations sur les objectifs de performance et les seuils.

Chaque objet du goal_pixels tableau inclut les champs suivants :

Champ Type Description
id int ID du pixel de conversion.
state enum État du pixel. Valeurs possibles : "active" ou "inactive".
post_click_goal double Déconseillé. Utilisez post_click_goal_target et post_click_goal_threshold à la place.
post_view_goal double Déconseillé. Utilisez post_view_goal_target et post_view_goal_threshold à la place.
trigger_type enum Type d’événement requis pour une conversion avec attributs. Valeurs possibles : "view", "click"ou "hybrid".
En lecture seule.
post_click_goal_target double Valeur de l’objectif d’annonceur post-clic pour le pixel.
post_view_goal_target double Valeur d’objectif d’annonceur post-affichage pour le pixel. (Comparable à goal_value pour goal_type"cpc" et "ctr".)
post_click_goal_threshold double Seuil d’objectif d’annonceur post-clic pour le pixel, qui détermine le seuil d’enchère/non sur les campagnes optimisées. Impossible d’activer sans un ensemble de cibles. (Comparable à goal_threshold dans l’objet d’évaluation pour goal_type"cpc" et "ctr".)
post_view_goal_threshold double Seuil d’objectif d’annonceur post-affichage pour le pixel, qui détermine le seuil d’enchère/aucune enchère sur les campagnes optimisées. Impossible d’activer sans un ensemble de cibles. (Comparable à goal_threshold dans l’objet d’évaluation pour goal_type"cpc" et "ctr".)

Objectif de livraison

Cette section s’applique uniquement aux clients Publisher Ad Server.

Champ Type Description
delivery_goal tableau d’objets Pour les éléments de ligne De livraison garantie uniquement. Pour les éléments de ligne de livraison garantie, l’indicateur de performance le plus important est que l’élément de ligne livre son budget dans sa totalité et uniformément sur les dates de vol. Pour atteindre ces fins, ces éléments de ligne ont un associé .delivery_goal Ces éléments de ligne fournissent leurs objectifs d’impression ou de pourcentage uniformément sur les dates de vol. Ce tableau spécifie exactement les objectifs de l’élément de ligne.
Pour plus d’informations sur les éléments de ligne de livraison garantie, consultez Livraison garantie.
Par défaut:null

Remarque

Le delivery_goal tableau contient des informations sur l’objectif de livraison attaché à cet élément de ligne. Les éléments de ligne de livraison garantis tenteront de livrer par rapport aux objectifs d’impression ou de pourcentage.

Pour que les articles de ligne de livraison garantie puissent être servis, il existe un certain nombre de validations différentes qui doivent être effectuées. Les validations changent en fonction du type d’objectif de livraison ; ils sont décrits ci-dessous.

Pour voir comment créer un élément de ligne De livraison garantie et sa campagne associée (d’une manière qui réussit les validations décrites dans cette section), consultez l’exemple Create un élément de ligne de livraison garanti.

Champ Type Description
id int ID unique généré automatiquement de cet objectif de livraison.
type string Type d’objectif de livraison. Valeurs autorisées :
- "impressions": Les articles de ligne de livraison garantis avec des objectifs d’impression tenteront de servir le nombre spécifié d’impressions uniformément selon leurs dates de vol. Si l’objectif type de livraison est "impressions", le budget doit être défini au niveau de l’élément de ligne.
- "percentage": actuellement, l’objectif de pourcentage n’est disponible que pour les éléments de ligne garantis « exclusifs ».
Note: Si l’objectif type de livraison est "percentage", l’élément de ligne ne peut pas avoir de budget.
disallow_non_guaranteed valeur booléenne Lorsque truela valeur est , cet élément de ligne est toujours utilisé sur les articles de ligne non garantis participant à la même enchère (gérée).
percentage int Si le type d’objectif de livraison est "percentage", il s’agit du pourcentage réel auquel l’article de ligne Livraison garantie servira. Les valeurs autorisées sont les entiers 0 <= n <= 100. Si le de l’objectif de type livraison est "impressions", ce champ doit être null.
reserved valeur booléenne Ce champ est obligatoire. Lorsque truela valeur est , l’inventaire de cet élément de ligne est « réservé » ; en d’autres termes, l’article de ligne est défini pour acheter un nombre garanti ou un pourcentage d’impressions sur l’inventaire d’un vendeur pendant son vol.

Note: Vous ne pourrez pas définir un élément de state ligne garanti sur , "active" sauf si ce champ a la truevaleur .
guaranteed_delivery_version int Cet indicateur temporaire indique la version de l’algorithme de rythme de remise garantie utilisée. Il peut être défini au niveau du membre ou de l’élément de ligne. L’indicateur sera supprimé lorsque la nouvelle version (2) de l’algorithme sera publiée à l’échelle de la plateforme. Valeurs autorisées :
- 1
- 2
Par défaut:null

Validations sur les éléments de ligne de livraison garantie

Pour qu’un article de ligne de livraison garantie soit servi, vous devez créer l’élément de ligne et l’associer à une ou plusieurs campagnes. Les campagnes ne sont pas créées automatiquement lorsque vous configurez l’élément de ligne Livraison garantie.

Les autres validations sur les éléments de ligne de livraison garantie sont les suivantes :

  • L’élément de ligne doit avoir un et end_datevalidestart_date.
  • lifetime_pacing doit être défini sur true.
  • enable_pacing doit être défini sur false.
  • manage_creative doit être défini sur true.
  • allow_safety_pacing doit être défini sur false.
  • Le de inventory_type la campagne associée doit être "direct".
  • Si le type d’objectif de livraison est "impressions", le budget doit être défini au niveau de l’élément de ligne.
  • Si le type d’objectif de remise est "impressions", les lifetime_budget champs et daily_budgetne doivent pas être définis.
  • Si le type d’objectif de remise est "impressions", lifetime_budget_imps doit être défini.
  • Si le type d’objectif de livraison est "percentage", un budget ne peut pas être associé à l’élément de ligne.
  • Le de l’élément de revenue_type ligne doit être l’un des éléments suivants :
    • "cpm"
    • "flat_fee"
  • Le de l’élément de publishers_allowed ligne doit être défini sur "direct".
  • Si vous associez une seule campagne à un élément de start_date ligne, cette campagne et end_date doit être définie sur null.

Stats

L’objet stats est déconseillé (depuis le 17 octobre 2016). Utilisez plutôt le service de rapports pour obtenir des informations statistiques.

Première et dernière exécution

Pour inclure les first_run champs et last_run dans une GET réponse, transmettez flight_info=true la chaîne de requête. Vous pouvez également filtrer les éléments de ligne en fonction du moment où ils ont été servis en premier et en dernier, comme suit :

Récupérer uniquement les éléments de ligne qui n’ont jamais été servis

Transmettez never_run=true la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&never_run=true'

Remarque

Vous pouvez utiliser never_run=true en combinaison avec d’autres filtres, mais notez qu’il s’agit toujours d’une relation OR. Par exemple, si vous transmettez never_run=true et min_first_run=2012-01-01 00:00:00 dans la chaîne de requête, vous recherchez les éléments de ligne qui n’ont jamais servi les éléments de ligne OR qui ont servi pour la première fois le ou après le 01-01-2012.

Récupérer uniquement les éléments de ligne qui ont été servis pour la première fois à ou après une date spécifique

Transmettez min_first_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&min_first_run=2012-01-01 00:00:00'

Récupérer uniquement les éléments de ligne qui ont été servis pour la première fois à ou avant une date spécifique

Transmettez max_first_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&max_first_run=2012-08-01 00:00:00'

Récupérer uniquement les éléments de ligne qui ont été servis pour la première fois dans une plage de dates spécifique

Transmettez min_first_run=YYYY-MM-DD HH:MM:SS&max_first_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&min_first_run=2012-01-01 00:00:00&max_first_run=2012-08-01 00:00:00'

Récupérer uniquement les éléments de ligne qui ont été servis pour la dernière fois à ou après une date spécifique

Transmettez min_last_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&min_last_run=2012-01-01 00:00:00'

Récupérer uniquement les éléments de ligne qui ont été servis pour la dernière fois ou avant une date spécifique

Transmettez max_last_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&max_last_run=2012-08-01 00:00:00'

Récupérer uniquement les éléments de ligne qui ont été servis pour la dernière fois dans une plage de dates spécifique

Transmettez min_last_run=YYYY-MM-DD HH:MM:SS&max_last_run=YYYY-MM-DD HH:MM:SS la chaîne de requête.

curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=100&flight_info=true&min_last_run=2012-01-01 00:00:00&max_last_run=2012-08-01 00:00:00'

Les champs de type date peuvent également être filtrés par nmin et nmax . Le nmin filtre vous permet de rechercher des dates null ou postérieures à la date spécifiée, et le nmax filtre vous permet de rechercher des dates null ou antérieures à la date spécifiée.

Alertes

Ce champ vous informe des conditions qui empêchent l’élément de ligne de servir. Il existe deux types d’alertes : les pauses et les avertissements. Les pauses sont considérées comme intentionnelles et pilotées par l’utilisateur, tandis que les avertissements sont considérés comme involontaires.

Remarque

Pour l’instant, il n’y a aucun avertissement pour les éléments de ligne.

Pour récupérer des éléments de ligne en fonction des pauses, vous devez transmettre certains paramètres de chaîne de requête dans la GET requête. Consultez les cas d’usage ci-dessous avec des paramètres de chaîne de requête et des exemples. Notez que vous pouvez utiliser ces paramètres de chaîne de requête lors de la récupération de tous les éléments de ligne ou d’éléments de ligne spécifiques, mais les exemples ci-dessous ne couvrent que la récupération de tous les éléments de ligne, car c’est là que cette fonctionnalité offre le plus de valeur.

Récupérer tous les éléments de ligne et afficher les alertes

Transmettez show_alerts=true la chaîne de requête. Ce paramètre ajoute l’objet alerts à chaque élément de ligne de la réponse, que l’élément de ligne ait des pauses ou non.

Remarque

Pour chacun des cas d’usage ci-dessous, vous devez passer show_alerts=true si vous souhaitez que l’objet alerts s’affiche dans la réponse.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?show_alerts=true'

{
    "response": {
        "status": "OK",
        "line-items": [

            {
                "id": 45047,
                "code": null,
                "name": "Line Item 1",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-04-01 00:00:00",
                "end_date": "2012-05-01 00:00:00",
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 4,
                            "message": "Flight end date is in the past."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 45048,
                "code": null,
                "name": "Line Item 2",
                "advertiser_id": 35081,
                "state": "inactive",
                "start_date": "2012-05-21 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 46308,
                "code": null,
                "name": "Test Line Item",
                "advertiser_id": 45278,
                "state": "inactive",
                "start_date": "2012-06-06 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        },
                        {
                            "id": 128,
                            "message": "All campaigns under this line item are inactive."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            ...
        ],
        ...
        }
    }
}

Récupérer uniquement les éléments de ligne qui ont au moins une pause

Transmettez show_alerts=true&pauses=true la chaîne de requête.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?show_alerts=true&pauses=true'

{
    "response": {
        "status": "OK",
        "line-items": [
            {
                "id": 45047,
                "code": null,
                "name": "Line Item 1",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-04-01 00:00:00",
                "end_date": "2012-05-01 00:00:00",
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 4,
                            "message": "Flight end date is in the past."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 45048,
                "code": null,
                "name": "Line Item 2",
                "advertiser_id": 35081,
                "state": "inactive",
                "start_date": "2012-05-21 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 46308,
                "code": null,
                "name": "Line Item 6",
                "advertiser_id": 45278,
                "state": "inactive",
                "start_date": "2012-06-06 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        }   
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            ...
        ],
        ...
        }
    }
}

Récupérer uniquement les éléments de ligne qui n’ont pas de pauses

Transmettez show_alerts=true&pauses=false la chaîne de requête.

$ curl -b cookies -c cookies 'https://api.appnexus.com/campaign?show_alerts=true&pauses=false'

{
    "response": {
        "status": "OK",
        "line-items": [
            {
                "id": 45054,
                "code": null,
                "name": "Line Item 7",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-04-01 00:00:00",
                "end_date": "2012-05-01 00:00:00",
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [

                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 45057,
                "code": null,
                "name": "Line Item 9",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-05-21 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [

                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 46345,
                "code": null,
                "name": "Line Item 12",
                "advertiser_id": 45278,
                "state": "active",
                "start_date": "2012-06-06 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [

                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            ...
        ],
        ...
        }
    }
}

Récupérer uniquement les éléments de ligne qui ont une pause spécifique

Transmettez show_alerts=true&pauses=PAUSE_ID la chaîne de requête. Pour les ID de pause, consultez le tableau Pauses ci-dessous.

Dans cet exemple, nous utilisons l’ID 2 de pause pour récupérer tous les éléments de ligne avec des dates de début de vol ultérieures.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?show_alerts=true&pauses=2'

{
    "response": {
        "status": "OK",
        "line-items": [
            {
                "id": 45047,
                "code": null,
                "name": "Line Item 5",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-11-01 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 2,
                            "message": "Flight start is in the future."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 45048,
                "code": null,
                "name": "Line Item 7",
                "advertiser_id": 35081,
                "state": "active",
                "start_date": "2012-10-15 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 2,
                            "message": "Flight start is in the future."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },

            ...
        ],
        ...
        }
    }
}

Récupérer uniquement les éléments de ligne qui ont au moins deux pauses spécifiques

Transmettez show_alerts=true&pauses=SUM_OF_PAUSE_IDS la chaîne de requête. Pour les ID de pause, consultez le tableau Pauses ci-dessous.

Dans cet exemple, nous ajoutons l’ID 1 de pause et l’ID 2 de pause pour récupérer tous les éléments de ligne définis sur inactifs et dont la date d’état de vol est ultérieure.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?show_alerts=true&pauses=3'

{
    "response": {
        "status": "OK",
        "line-items": [
            {
                "id": 45047,
                "code": null,
                "name": "Line Item 3",
                "advertiser_id": 35081,
                "state": "inactive",
                "start_date": "2012-11-01 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        },
                        {
                            "id": 2,
                            "message": "Flight start is in the future."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },
            {
                "id": 45048,
                "code": null,
                "name": "Line Item 7",
                "advertiser_id": 35081,
                "state": "inactive",
                "start_date": "2012-10-15 00:00:00",
                "end_date": null,
                ...
                "alerts": {
                    "warnings": [

                    ],
                    "pauses": [
                        {
                            "id": 1,
                            "message": "State is set to inactive."
                        },
                        {
                            "id": 2,
                            "message": "Flight start is in the future."
                        }
                    ],
                    "warnings_last_checked": null,
                    "pauses_last_checked": "2012-07-27 19:01:07"
                }
            },

            ...
        ],
        ...
        }
    }
}

Pauses

ID Description
1 L’état est défini sur inactif.
2 Le vol commence à l’avenir.
4 La fin du vol est dans le passé.
128 Toutes les campagnes sous cet élément de ligne sont inactives.

Forfait

L’objet flat_fee contient les champs suivants.

Champ Type Description
flat_fee_status enum Le status du déboursement forfaitaire des frais. Valeurs possibles : "pending", "processing", "allocated"ou "error".
En lecture seule.
flat_fee_allocation_date Timestamp Date à laquelle les recettes forfaitaires sont prévues pour être allouées aux éditeurs.
Exemple :"2012-06-08 00:00:00" . Cette valeur est null si est flat_fee_type quotidienne.
flat_fee_adjustment_id int ID pour tous les ajustements requis pour ce montant forfaitaire.

Barrage

Les obstacles ne peuvent être définis qu’à un seul niveau, élément de ligne ou campagne. Si un obstacle a été défini sur une campagne, il ne peut pas être défini sur l’élément de ligne parent. Les obstacles peuvent être appliqués uniquement pour l’inventaire managé et ne peuvent pas être activés lorsque vous travaillez avec un inventaire tiers.

Champ Type Description
type enum Type de barrage. Les valeurs admises sont les suivantes :
- no_roadblock: aucun blocage n’est défini au niveau de l’élément de ligne.
- normal_roadblock: l’élément de ligne sert si le nombre de créations est supérieur ou égal au nombre d’emplacements publicitaires disponibles.
- partial_roadblock: l’élément de ligne sert quand au moins un créatif de chaque taille correspond à un emplacement publicitaire éligible.
- exact_roadblock: l’élément de ligne sert lorsque le nombre de créations est égal au nombre d’emplacements publicitaires disponibles.
master_width int Largeur du master créatif. Définissez cette valeur uniquement lors de l’utilisation d’un blocage au niveau de la page. Pour le blocage standard, omettez ce champ ou définissez la valeur sur 0. (Ne définissez pas la valeur sur null.)
master_height int La hauteur de la master créative. Définissez cette valeur uniquement lors de l’utilisation d’un blocage au niveau de la page. Pour le blocage standard, omettez ce champ ou définissez la valeur sur 0. (Ne définissez pas la valeur sur null.)

Le master créatif est le créatif dont la taille correspond à master_height et master_width spécifiée dans l’objet roadblock. Si plusieurs créations correspondent à cette taille, le système en choisit une comme master.

Le master créatif est utilisé pour le blocage au niveau de la page, où une impression est enregistrée pour l’ensemble des créations livrées pour le barrage. Cette impression enregistrée est basée sur le master créatif. Cela signifie que si le master créatif ne sert pas, aucune impression n’est enregistrée. Si vous souhaitez utiliser un blocage de niveau créatif, où chaque création fournie est comptée comme une impression, laissez les master_width valeurs et master_height vides.

Exemples

Ajouter un élément de ligne fluide avec des intervalles de budget

Dans cet exemple, nous allons créer un élément de ligne fluide inactif, "Lauren's Line Item", qui utilise des intervalles budgétaires. Nous avons déjà créé une commande (238174) d’insertion avec des périodes de facturation auxquelles nous voulons associer le nouvel élément de ligne. Les intervalles budgétaires de l’élément de ligne sont associés à ceux de l’ordre d’insertion par le biais du parent_interval_id champ dans le budget_intervals tableau de l’élément de ligne.

$ cat line-item
{
    "line-item": {
        "name": "Lauren's Line Item",
        "state": "inactive",
        "insertion_orders": [
            {
                "id": 238174
            }
        ],
        "budget_intervals": [
            {
                "parent_interval_id": 1377
            },
            {
                "parent_interval_id": 1378
            }
        ]
    }
}
$ curl -b cookies -X POST -d @line-item.json "https://api.appnexus.com/line-item?&advertiser_id=599314"
{
  "response": {
    "status": "OK",
    "count": 1,
    "id": 2304063,
    "start_element": 0,
    "num_elements": 100,
    "line-item": {
      "id": 2304063,
      "code": null,
      "name": "Lauren's Line Item",
      "advertiser_id": 599314,
      "state": "inactive",
      "start_date": null,
      "end_date": null,
      "timezone": "EST5EDT",
      "discrepancy_pct": 0,
      "publishers_allowed": "all",
      "revenue_value": 0,
      "revenue_type": "cpm",
      "goal_type": "none",
      "goal_value": null,
      "last_modified": "2015-09-02 14:17:50",
      "click_url": null,
      "currency": "USD",
      "require_cookie_for_tracking": true,
      "profile_id": null,
      "member_id": 958,
      "comments": null,
      "remaining_days": null,
      "total_days": null,
      "manage_creative": false,
      "advertiser": {
        "id": 599314,
        "name": "Cindy's Adv"
      },
      "flat_fee": null,
      "delivery_goal": null,
      "labels": null,
      "broker_fees": null,
      "pixels": null,
      "insertion_orders": [
        {
          "id": 238174,
          "state": "inactive",
          "code": null,
          "name": "LH Test IO",
          "advertiser_id": 599314,
          "start_date": null,
          "end_date": null,
          "timezone": "EST5EDT",
          "last_modified": "2015-09-02 13:56:56",
          "currency": "USD",
          "budget_intervals": [
            {
              "id": 1377,
              "object_id": 238174,
              "object_type": "insertion_order",
              "start_date": "2015-09-02 00:00:00",
              "end_date": "2015-09-10 00:00:00",
              "timezone": "EST5EDT",
              "lifetime_budget": 1000,
              "lifetime_budget_imps": null,
              "lifetime_pacing": false,
              "enable_pacing": false,
              "daily_budget_imps": null,
              "daily_budget": null
            },
            {
              "id": 1378,
              "object_id": 238174,
              "object_type": "insertion_order",
              "start_date": "2015-09-10 00:00:00",
              "end_date": "2015-09-18 00:00:00",
              "timezone": "EST5EDT",
              "lifetime_budget": 1000,
              "lifetime_budget_imps": null,
              "lifetime_pacing": false,
              "enable_pacing": false,
              "daily_budget_imps": null,
              "daily_budget": null
            }
          ]
        }
      ],
      "goal_pixels": null,
      "imptrackers": null,
      "clicktrackers": null,
      "campaigns": null,
      "valuation": {
        "performance_mkt_managed": false,
      },
      "creatives": null,
      "budget_intervals": [
        {
          "id": 1379,
          "object_id": 2304063,
          "object_type": "campaign_group",
          "start_date": "2015-09-02 00:00:00",
          "end_date": "2015-09-10 00:00:00",
          "timezone": "EST5EDT",
          "parent_interval_id": 1377,
          "budget_allocation": null
        },
        {
          "id": 1380,
          "object_id": 2304063,
          "object_type": "campaign_group",
          "start_date": "2015-09-10 00:00:00",
          "end_date": "2015-09-18 00:00:00",
          "timezone": "EST5EDT",
          "parent_interval_id": 1378,
          "budget_allocation": null
        }
      ],
      "lifetime_budget": null,
      "lifetime_budget_imps": null,
      "daily_budget": null,
      "daily_budget_imps": null,
      "enable_pacing": null,
      "allow_safety_pacing": null,
      "lifetime_pacing": null,
      "lifetime_pacing_span": null,
      "lifetime_pacing_pct": null,
      "payout_margin": null
    }
  }
}

Ajouter un élément de ligne non transparent

Dans cet exemple, nous allons créer un nouvel élément de ligne et associer un pixel de conversion à notre nouvel élément de ligne.

Remarque

Nous n’avons pas encore lié les campagnes à cet élément de ligne ; est donc campaigns défini sur null.

$ cat line-item
{
    "line-item": {
    "name": "Weekday French Speakers Q3 2012",
    "state": "inactive",
    "comments": "The name says it all -- that's who we're trying to advertise to",
    "daily_budget": null,
    "revenue_type": "cpa",
    "code": "wfspq312",
    "pixels": [
        {
        "id": "123456",
        "state": "inactive",
        "post_view_revenue": null,
        "post_click_revenue": "30.000000"
        }
    ],
    "start_date": "2011-11-04 00:00:00",
    "lifetime_budget": null,
    "end_date": null,
    "enable_pacing": null,
    "allow_safety_pacing": null,
    "publishers_allowed": "all",
    "campaigns": null
    }
}
curl -b cookies -c cookies -X POST -d @line-item "https://api.appnexus.com/line-item?advertiser_id=51"

Ajouter un élément de ligne avec un objectif de performance DECP

Dans cet exemple, nous allons créer un élément de ligne avec un objectif de performance AUT. Nous définissons un seuil d’objectif de coût par clic de 2,34 $ et un objectif (à des fins de création de rapports) de 2 ,00 $.

$ cat line-item
{
    "line-item": {
    "name": "Weekday French Speakers Q3 2012",
    "state": "inactive",
    "comments": "The name says it all -- that's who we're trying to advertise to",
    "daily_budget": null,
    "revenue_type": "cpm",
    "goal_type": "cpc",
    "valuation": {
        "goal_target":2.00,
        "goal_threshold":2.34
    }
    "lifetime_budget": null,
    "end_date": null,
    "enable_pacing": null,
    "allow_safety_pacing": null,
    "publishers_allowed": "all",
    "campaigns": null
    }
}
curl -b cookies -c cookies -X POST -d @line-item "https://api.appnexus.com/line-item?advertiser_id=51"

Ajouter un élément de ligne avec un objectif de performance CPA

Dans cet exemple, nous allons créer un élément de ligne avec un objectif de performance CPA. Nous définissons un seuil d’objectif de l’ACP de 4,56 $ et un objectif (pour les rapports) de 4,00 $.

$ cat line-item
{
    "line-item": {
    "name": "Weekday French Speakers Q3 2012",
    "state": "inactive",
    "comments": "The name says it all -- that's who we're trying to advertise to",
    "daily_budget": null,
    "revenue_type": "cpm",
    "goal_type": "cpa",
    "pixels": [
        {
        "id": "123456",
        "state": "inactive",
        "post_view_revenue": null,
        "post_click_revenue": "30.000000"
        }
    ],
    "goal_pixels":[
        {
        "id":"123456",
        "post_view_goal_threshold":4.56,
        "post_view_goal_target":4.00
        }
    ].
    "lifetime_budget": null,
    "end_date": null,
    "enable_pacing": null,
    "allow_safety_pacing": null,
    "publishers_allowed": "all",
    "campaigns": null
    }
}
curl -b cookies -c cookies -X POST -d @line-item "https://api.appnexus.com/line-item?advertiser_id=51"

Ajouter un élément de ligne d’offre de performances

Dans cet exemple, nous allons créer un article de ligne d’offre de performances qui achète à la fois l’inventaire managé et l’inventaire inter-réseau sur une base DEP.

$ cat line-item
{
    "line-item": {
        "name": "US CA",
        "state": "inactive",
        "daily_budget": null,
        "revenue_type": "cpc",
        "revenue_value": "5.00",
        "goal_type": "none",
        "valuation": {
            "performance_mkt_managed": true,
        },
        "lifetime_budget": null,
        "end_date": null,
        "enable_pacing": null,
        "allow_safety_pacing": null,
        "publishers_allowed": "all",
        "campaigns": null,
        "manage_creative": true,
        "payout_margin": 0.2
    }
}
curl -b cookies -c cookies -X POST -d @line-item "https://api.appnexus.com/line-item?advertiser_id=51"

Afficher un élément de ligne

Pour afficher un élément de ligne spécifique, nous devons transmettre les ID de l’élément de ligne et de l’annonceur via la chaîne de requête. Un pixel de conversion est déjà configuré pour cet élément de ligne.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?id=164532&advertiser_id=52049'

{
    "response": {
    "status": "OK",
    "line-item": {
        "id": 164532,
        "code": "wfspq312",
        "name": "Weekday French Speakers Q3 2012",
        "advertiser_id": 52049,
        "state": "inactive",
        "start_date": "2011-11-04 00:00:00",
        "end_date": null,
        "timezone": "EST5EDT",
        "discrepancy_pct": 0,
        "lifetime_budget": null,
        "lifetime_budget_imps": null,
        "daily_budget": null,
        "daily_budget_imps": null,
        "enable_pacing": null,
        "allow_safety_pacing": null,
        "publishers_allowed": "all",
        "revenue_value": 0,
        "revenue_type": "cpa",
        "pixels": [
        {
            "id": "39688",
            "state": "inactive",
            "post_view_revenue": null,
            "post_click_revenue": "30.000000"
        }
        ],
        "campaigns": null,
        "insertion_orders": null,
        "goal_type": "none",
        "goal_value": null,
        "goal_pixels": null,
        "last_modified": "2012-06-19 20:29:38",
        "all_stats": null,
        "click_url": null,
        "currency": "USD",
        "require_cookie_for_tracking": true,
        "labels": null,
        "advertiser": {
        "id": 52049,
        "name": "Cody's Great Advertiser"
        },
        "broker_fees": null,
        "profile_id": null,
        "member_id": 1282,
        "flat_fee": null,
        "imptrackers": null,
        "clicktrackers": null,
        "comments": "The name says it all -- that's who we're trying to advertise to",
        "is_malicious": false,
        "remaining_days": null,
        "total_days": 60
    },
    "count": 1,
    "start_element": null,
    "num_elements": null
    }
}

Afficher tous les éléments de ligne d’un annonceur

Contrairement aux exemples ci-dessus, deux campagnes sont attachées à cet élément de ligne, ainsi qu’un goal_pixels tableau. Notez que même si cet annonceur n’a qu’un seul élément de ligne, il est retourné via le line-items tableau JSON.

$ curl -b cookies -c cookies 'https://api.appnexus.com/line-item?advertiser_id=51'

{
   "response":{
      "status":"OK",
      "line-items":[
         {
            "id":2,
            "code":null,
            "name":"Default Line Item",
            "advertiser_id":51,
            "state":"active",
            "start_date":null,
            "end_date":null,
            "timezone":"EST5EDT",
            "lifetime_budget":null,
            "lifetime_budget_imps":null,
            "daily_budget":null,
            "daily_budget_imps":null,
            "enable_pacing":false,
            "publishers_allowed":"all",
            "lifetime_spend":null,
            "lifetime_imps":null,
            "daily_spend":null,
            "daily_imps":null,
            "revenue_value":null,
            "revenue_type":null,
            "pixels":[
               {
                  "id":"934",
                  "state":"active",
                  "post_view_revenue":null,
                  "post_click_revenue":null
               }
            ],
            "campaigns":[
               {
                  "id":"21999",
                  "name":"My second campaign",
                  "state":"inactive"
               },
               {
                  "id":"21180",
                  "name":"My first campaign",
                  "state":"active"
               }
            ],
            "goal_type":"cpa",
            "goal_value":null,
            "goal_pixels":[
               {
                  "id":934,
                  "state":"active",
                  "post_view_goal":1,
                  "post_click_goal":2
               }
            ],
            "labels" [
               {
                  "value: "First Contact",
                  "id": 7,
                  "name": "Trafficker"
               },
               {
                  "value: "Second Contact",
                  "id": 8,
                  "name": "Sales Rep"
               },
            "last_modified":"2010-06-09 19:32:56",
            "comments": null
            "is_malicious": false,
            "remaining_days": null,
            "total_days": 30
         }
      ],
      "count":1,
      "start_element":null,
      "num_elements":null
   }
}

Modifier un intervalle budgétaire sur un élément de ligne transparente

Remarque

Ne modifiez pas les valeurs des start_date champs ou end_date dans l’intervalle budgétaire sur l’élément de ligne. L’élément de ligne hérite de ses dates d’intervalle budgétaire de l’ordre d’insertion parent.

$ cat modify-budget-interval
{
    "line-item": {
        "budget_intervals": [
            {
                "parent_interval_id": 197186,
                "id": 219368,
                "lifetime_budget": 100
            },
            {
                "parent_interval_id": 197187,
                "id": 219369,
                "lifetime_budget": 100
            }
        ]
    }
}
curl -b cookies -X PUT -d @modify-budget-interval "https://api.appnexus.com/line-item?advertiser_id=608591&id=3319754"
{
  "response": {
    "status": "OK",
    "count": 1,
    "id": "3319754",
    "start_element": 0,
    "num_elements": 100,
    "line-item": {
      "id": 3319754,
      "code": null,
      "name": "Seamless Line Item Test",
      "advertiser_id": 608591,
      "state": "active",
      "start_date": null,
      "end_date": null,
      "timezone": "EST5EDT",
      "discrepancy_pct": 0,
      "publishers_allowed": "all",
      "revenue_value": 0,
      "revenue_type": "cpm",
      "goal_type": "none",
      "goal_value": null,
      "last_modified": "2016-09-01 17:44:32",
      "click_url": null,
      "currency": "USD",
      "require_cookie_for_tracking": true,
      "profile_id": null,
      "member_id": 958,
      "comments": null,
      "remaining_days": null,
      "total_days": null,
      "manage_creative": false,
      "creative_distribution_type": null,
      "line_item_type": "standard_v1",
      "prefer_delivery_over_performance": false,
      "advertiser": {
        "id": 608591,
        "name": "Don Test Advertiser"
      },
      "flat_fee": null,
      "delivery_goal": null,
      "labels": null,
      "broker_fees": null,
      "pixels": null,
      "insertion_orders": [
        {
          "id": 379643,
          "state": "inactive",
          "code": null,
          "name": "Seamless Insertion Order Test",
          "advertiser_id": 608591,
          "start_date": null,
          "end_date": null,
          "timezone": "EST5EDT",
          "last_modified": "2016-08-30 15:23:07",
          "currency": "USD",
          "budget_intervals": [
            {
              "id": 197186,
              "object_id": 379643,
              "object_type": "insertion_order",
              "start_date": "2016-09-01 00:00:00",
              "end_date": "2016-09-30 00:00:00",
              "timezone": "EST5EDT",
              "lifetime_budget": null,
              "lifetime_budget_imps": null,
              "daily_budget_imps": null,
              "daily_budget": null,
              "enable_pacing": false,
              "lifetime_pacing": false,
              "lifetime_pacing_pct": null
            },
            {
              "id": 197187,
              "object_id": 379643,
              "object_type": "insertion_order",
              "start_date": "2016-10-01 00:00:00",
              "end_date": "2016-10-31 00:00:00",
              "timezone": "EST5EDT",
              "lifetime_budget": null,
              "lifetime_budget_imps": null,
              "daily_budget_imps": null,
              "daily_budget": null,
              "enable_pacing": false,
              "lifetime_pacing": false,
              "lifetime_pacing_pct": null
            }
          ]
        }
      ],
      "goal_pixels": null,
      "imptrackers": null,
      "clicktrackers": null,
      "campaigns": null,
      "valuation": {
        "min_margin_pct": null,
        "max_avg_cpm": null,
        "min_avg_cpm": null,
        "goal_target": null,
        "goal_threshold": null,
        "no_revenue_log": false,
        "performance_mkt_managed": false,
        "bid_price_pacing_enabled": false,
        "bid_price_pacing_lever": 0,
        "goal_confidence_threshold": null
      },
      "creatives": null,
      "budget_intervals": [
        {
          "id": 219368,
          "object_id": 3319754,
          "object_type": "campaign_group",
          "start_date": "2016-09-01 00:00:00",
          "end_date": "2016-09-30 00:00:00",
          "timezone": "EST5EDT",
          "parent_interval_id": 197186,
          "lifetime_budget": 100,
          "lifetime_budget_imps": null,
          "lifetime_pacing": false,
          "enable_pacing": true,
          "daily_budget_imps": null,
          "daily_budget": null
        },
        {
          "id": 219369,
          "object_id": 3319754,
          "object_type": "campaign_group",
          "start_date": "2016-10-01 00:00:00",
          "end_date": "2016-10-31 00:00:00",
          "timezone": "EST5EDT",
          "parent_interval_id": 197187,
          "lifetime_budget": 100,
          "lifetime_budget_imps": null,
          "lifetime_pacing": false,
          "enable_pacing": true,
          "daily_budget_imps": null,
          "daily_budget": null
        }
      ],
      "expected_value_model": null,
      "custom_models": null,
      "inventory_discovery": null,
      "inventory_discovery_budget": null,
      "incrementality": null,
      "lifetime_budget": null,
      "lifetime_budget_imps": null,
      "daily_budget": null,
      "daily_budget_imps": null,
      "enable_pacing": null,
      "allow_safety_pacing": null,
      "lifetime_pacing": null,
      "lifetime_pacing_span": null,
      "lifetime_pacing_pct": null,
      "payout_margin": null
    },
    "dbg_info": {
      ...
    }
  }
}

Remarque

Cette section s’applique uniquement aux clients Publisher Ad Server. Create un article de ligne de livraison garanti.

La création d’un élément de ligne de livraison garantie nécessite que votre combinaison élément de ligne/campagne réponde à toutes les validations décrites dans la section Objectif de livraison ci-dessus. Notez que vous devez également associer l’élément de ligne à un profil de ciblage.

Dans cet exemple, nous allons créer un élément de ligne, puis une campagne associée à cet élément de ligne.

Créez toujours l’élément de ligne en premier. Pour éviter une condition de concurrence dans l’API, créez d’abord votre élément de ligne, puis la campagne associée.

$ cat guaranteed-delivery-line-item.json
     
{
    "line-item": {
        "name": "Rich's Second Guaranteed Line Item - Impressions Delivery Goal",
        "state": "inactive",
        "lifetime_budget_imps": 10000,
        "lifetime_pacing": true,
        "enable_pacing": false,
        "manage_creative": true,
        "allow_safety_pacing": false,
        "delivery_goal": {
            "type": "impressions",
            "disallow_non_guaranteed": true
        },
        "daily_budget": null,
        "revenue_type": "cpm",
        "start_date": "2015-05-15 00:00:00",
        "end_date": "2015-05-20 00:00:00",
        "lifetime_budget": null,
        "publishers_allowed": "direct",
        "campaigns": null
    }
}

$ curl -b cookies -X POST -d @guaranteed-delivery-line-item.json 'https://api.appnexus.com/line-item?advertiser_id=561703'

Maintenant que nous avons un élément de ligne De livraison garantie, nous devons créer la campagne associée :

$ cat campaign.json


{
    "campaign": {
         "state": "inactive",
         "name": "Rich's Guaranteed Campaign",
         "advertiser_id": 41884,
         "line_item_id": 232854,
         "inventory_type": "direct"
    }
}

$ curl -b cookies -X POST -d @campaign.json 'https://api.appnexus.com/campaign?advertiser_id=561703'

N’oubliez pas que si vous associez une seule campagne à un élément de ligne, et start_dateend_date pour la campagne doivent tous deux avoir la valeur null.

Supprimer un élément de ligne

curl -b cookies -X DELETE "https://api.appnexus.com/line-item?id=5851054&advertiser_id=5413231"
{"response":
    {
        "status":"OK",
        "count":1,
        "start_element":null,
        "num_elements":null,
        "dbg_info":
            {
                "warnings":[],
                "version":"1.0.190",
                "output_term":"not_found"}
            }
    }
}