Partager via


Service Fractionnements

Avertissement

La segment[]condition n’est plus utilisée et a été déconseillée le 21 août 2022. Lorsque vous configurez le ciblage pour les nouveaux éléments de ligne, utilisez Le groupe de segments (segment_group). Place.

Le service Splits crée et modifie des fractionnements programmables pour les éléments de ligne augmentée. Lorsque vous créez un élément de ligne, vous spécifiez l’inventaire que vous souhaitez cibler, le budget que vous souhaitez dépenser pendant le vol, la façon dont vous souhaitez suivre le chiffre d’affaires et comment utiliser l’optimisation Xandr. Les fractionnements programmables peuvent cibler d’autres sous-ensembles de cet inventaire total, allouer le budget spécifié à différentes cibles, définir des critères d’enchères et distribuer des créations. Le ciblage sur l’élément de ligne agit comme un filtre ; les impressions doivent correspondre aux critères spécifiés par l’élément de ligne avant d’être transmises aux fractionnements. Pour plus d’informations sur le fonctionnement des fractionnements, consultez Présentation des fractionnements dans la documentation de l’interface utilisateur.

Le service Splits vous permet de spécifier :

  • Conditions de ciblage
  • Règles d’appel d’offres
  • Allocation budgétaire
  • Quels sont les créatifs associés à un fractionnement.

Remarque

L’utilisation de fractionnements avec des modèles personnalisés n’est actuellement pas prise en charge. Vous recevrez une erreur si vous tentez de créer ou de modifier des fractionnements sur un élément de ligne auquel un modèle personnalisé est attaché.

API REST

Le service Splits fonctionne un peu différemment de la plupart des autres services d’API de Xandr. Par défaut, le service de fractionnement budgétaire (Fractionnements) crée ou modifie tous les fractionnements sur l’élément de ligne en même temps au lieu de créer ou de modifier un seul fractionnement. Au lieu de créer un seul fractionnement, le service crée un budget-splitter objet (tableau) associé à l’élément de ligne. Le budget-splitter tableau contient au moins deux fractionnements et doit répondre aux exigences suivantes :

  • La somme de l’allocation budgétaire pour tous les fractionnements sur un élément de ligne doit toujours être égale à 100. Cela garantit que toutes les impressions d’un élément de ligne sont comptabilisées par au moins un fractionnement.
  • Chaque fractionnement doit se voir attribuer une priorité, ce qui détermine le fractionnement auquel une impression entrante sera affectée si l’impression répond aux exigences de ciblage pour plusieurs fractionnements. La même priorité ne peut pas être utilisée pour plusieurs fractionnements.
  • Un fractionnement doit être défini comme fractionnement par défaut. Il s’agit du fractionnement de secours auquel les impressions seront affectées si elles ne remplissent pas les conditions des autres fractionnements. Le fractionnement par défaut est appelé « Reste d’élément de ligne » dans l’interface utilisateur.
  • Le fractionnement par défaut doit être nommé "Default" ou et "default" apparaître comme le dernier fractionnement répertorié dans le budget-splitter tableau. Il ne peut pas être affecté à des conditions ou à une stratégie d’allocation limitée (contrainte), car elle est destinée à servir de secours si d’autres conditions ne s’appliquent pas. Toutefois, vous pouvez allouer 0 % de votre budget au fractionnement par défaut, ce qui signifie qu’il ne servira jamais.
  • Le fractionnement par défaut peut uniquement avoir un modificateur d’enchère de "1" ou null.
  • Un ordre doit être attribué au fractionnement par défaut, mais quel que soit l’ordre qui lui est attribué, il sera classé en dernier.

La POST méthode n’est pas prise en charge pour le service Split.

Pour modifier un fractionnement individuel, vous devez utiliser la PATCH méthode décrite dans les exemples ci-dessous.

Remarque

Vous ne pouvez pas utiliser la PATCH méthode pour modifier l’allocation fractionnée. Étant donné que la somme de l’allocation budgétaire pour tous les fractionnements d’un élément de ligne doit être égale à 100, il n’est pas valide de modifier l’allocation sur une division sans modifier l’allocation sur au moins un autre fractionnement.

Contrairement à d’autres services d’API Xandr, le JSON du budget-splitters tableau n’apparaît pas dans un wrapper nommé d’après l’objet . Il apparaît simplement sous la forme d’un tableau sans nom. Par exemple, il s’agit du fichier JSON permettant de créer un budget-splitters tableau avec trois fractionnements :

Exemple d’objet de fractionnement budgétaire

[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 2,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 1,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "expected_value": 0.5,
        "is_default": true,
        "name": "Default",
        "order": 3
    }
HTTP, méthode Endpoint Description
PUT https://api.appnexus.com/budget-splitter/LINE-ITEM-ID/splits
(JSON de fractionnement du budget)
Ajoutez des fractionnements à un élément de ligne qui n’en a aucun.
GET https://api.appnexus.com/budget-splitter/LINE-ITEM-ID/splits Afficher tous les fractionnements d’un élément de ligne.
PUT https://api.appnexus.com/budget-splitter/LINE-ITEM-ID/splits
(JSON de fractionnement du budget)
Mettre à jour tous les fractionnements d’un élément de ligne.
DELETE https://api.appnexus.com/budget-splitter/LINE-ITEM-ID/splits Supprimer tous les fractionnements d’un élément de ligne. Cela supprime définitivement tous les fractionnements de l’élément de ligne. Les informations relatives au trafic des fractionnements passés apparaissent toujours dans les rapports.
PATCH https://api.appnexus.com/budget-splitter/LINE-ITEM-ID/splits
(split-update JSON)

L’ID de fractionnement doit apparaître dans le code JSON de la mise à jour fractionnée.
Modifier un fractionnement unique.

Champs JSON

Champ Type Description
id int ID du fractionnement.
Exemple : "id":21197314

Valeur par défaut : nombre généré automatiquement.
Obligatoire Sur : PUT//PATCHDELETE, au format JSON.
name string (255) Nom auquel vous attribuez le fractionnement.
Exemple : "name":"Split 123"

Remarque : le fractionnement par défaut doit être nommé "Default" ou "default".
is_default valeur booléenne Spécifie s’il s’agit du fractionnement par défaut, qui est utilisé lorsqu’une impression ne répond pas aux exigences de ciblage pour les autres fractionnements. Chaque élément de ligne doit avoir un seul fractionnement par défaut. Le fractionnement par défaut doit être nommé "Default" ou et "default" ne peut pas avoir de conditions. Les valeurs possibles sont "true" et "false".
Exemple : "is_default":true
conditions tableau Conditions de ciblage pour le fractionnement. Une condition est spécifiée par un tableau contenant un champ, un opérateur et une valeur.
Exemple :
"conditions":[{"field":"city","operator":"in","value":[196646]}]

Pour plus d’informations, consultez Conditions ci-dessous.
active valeur booléenne Spécifie la status d’un fractionnement. Les valeurs possibles sont : "true" ou "false".
Exemple :
"active":true
order int Priorité de ce fractionnement dans le budget_splitters tableau. Dans l’interface utilisateur, ce champ est appelé "Priority".
Si une impression répond aux exigences de ciblage pour plusieurs fractionnements, la priorité détermine le fractionnement auquel l’impression sera affectée. Par exemple, supposons que Fractionner A (priorité 1) cible "domain=cnn.com" et Fractionner B (priorité 2) cible "city=Boston", et qu’une impression est disponible auprès d’un utilisateur de Boston qui visite cnn.com. L’impression sera affectée à Fractionner A, car elle a une priorité plus élevée que Fractionner B.

Vous ne pouvez pas définir la même priorité pour plusieurs fractionnements.

L’ordre peut commencer à n’importe quelle valeur, tant que les valeurs sont séquentielles. Par exemple, l’ordre pour trois fractionnements peut être 0, 1ou 42 , , 5. 6
Exemple : "order":1
allocation_percent int Pourcentage du budget d’élément de ligne affecté à ce fractionnement. L’allocation pour chaque fractionnement doit être comprise entre 0 et 100. La somme des pourcentages d’allocation pour tous les fractionnements d’un élément de ligne doit être égale à 100.
Exemple : "allocation_percent":30
allocation_strategy enum Spécifie comment gérer les conflits entre l’objectif d’allocation fractionnée et l’objectif de livraison d’élément de ligne. Les valeurs possibles sont les suivantes :
- "unconstrained" - La livraison d’éléments de ligne est prioritaire sur l’allocation. Lorsqu’un élément de ligne avec des fractionnements non bloqués est en cours de livraison, les fractionnements non captés sont autorisés à dépasser l’objectif d’allocation pour atteindre l’objectif de livraison d’élément de ligne. Dans l’interface utilisateur, cet état est appelé « uncapped ».
- "constrained" - L’allocation est prioritaire sur la livraison. Même lorsque les articles de ligne sont en sous-livraison, les fractionnements limités ne sont pas autorisés à dépasser l’objectif d’allocation pour aider l’article de ligne à atteindre son objectif de livraison. Cela permet d’éviter un dépassement de charge sur un fractionnement, mais peut entraîner la sous-livraison de l’élément de ligne. Dans l’interface utilisateur, cet état est appelé « limité ».
Pour plus d’informations, consultez Présentation des fractionnements dans la documentation de l’interface utilisateur.
Exemple :
"allocation_strategy":"unconstrained"

Par défaut : "unconstrained"
bid_modifier float Nombre utilisé pour modifier l’enchère pour ce fractionnement. Un modificateur d’enchère ne peut être appliqué à un fractionnement que lorsque le type de revenu réservé de l’élément de ligne est CPM et que l’optimisation n’est pas activée. La valeur du modificateur d’offre sera multipliée par le chiffre d’affaires réservé par CPM pour servir de CPM maximal que le fractionnement peut soumissionner.
Exemple : "bid_modifier":1.25

Remarque :
- Le fractionnement par défaut peut uniquement avoir un modificateur d’enchère de "1" ou null. Les fractionnements inactifs doivent se voir attribuer un modificateur d’enchère de "0".
- Le bid_modifier champ n’est pas utilisé par GDALI.
expected_value float Valeur attendue de l’impression pour ce fractionnement. Une valeur attendue doit être incluse pour chaque fractionnement lorsque le type de revenu réservé de l’élément de ligne est cost plus ou dCPM et que l’optimisation n’est pas activée. La valeur attendue sert de valeur CPM maximale que le fractionnement peut enchérir.
Exemple : "expected_value":10.50

Remarque : Le expected_value champ n’est pas utilisé par GDALI.
creatives tableau Optional. Les ID des créatifs à servir sur ce fractionnement.
Exemple :
"creatives":[{"creative_id":123},{"creative_id":456}]
creative_macros tableau de chaînes Optional. Toutes les macros créatives ajoutées au créatif servi.
Pour plus d’informations, consultez Creative Macro Check Service.

Remarque : Le creative_macros champ n’est pas utilisé par GDALI.
user_test_group_percent int Facultatif. Cible des groupes distincts d’utilisateurs par fractionnement pour les tests A/B.

Remarque :
Lorsque le fractionnement du reste de l’élément de ligne a la valeur ou a une allocation budgétaire supérieure à "active" 0 %, le reste de l’élément de ligne inclut toujours le pool restant d’utilisateurs non ciblés par les autres fractionnements. En outre, le fractionnement du reste de l’élément de ligne inclut toujours les utilisateurs sans cookie.

Si vous ne souhaitez pas servir les utilisateurs sans cookie :
- Si vous utilisez des allocations, sur le fractionnement par défaut, définissez allocation_percent sur "0".
- Si vous n’utilisez pas d’allocations, sur le fractionnement par défaut, définissez active sur "false".

Conditions

Une condition est spécifiée par un tableau contenant un champ, un opérateur et une valeur. Par exemple, pour créer une condition qui cible les impressions du États-Unis, la condition est la suivante :

"conditions": [
  {
    "field": "country",
    "operator": "=",
    "value": [
      233
    ]
  }
]

Catégories personnalisées

Évaluez les impressions en fonction de catégories personnalisées spécifiques présentes.

Champ Opérateur Valeur
content_category =, in, not_in ID de catégorie personnalisée. Utilisez le service de catégorie de contenu pour récupérer les ID de catégorie personnalisés.

Avertissement : Les catégories personnalisées doivent être ciblées uniquement sur l’inventaire managé.

Clé-valeur

Évaluez les impressions en fonction de clés-valeurs spécifiques présentes.

Champ Opérateur Valeur
key_group and, or Tableau de conditions imbriqué qui spécifie des groupes de clés. Chaque tableau de groupes de clés comprend des ID de clé, des actions ("include" ou "exclude") et des valeurs :

Avertissement : Les clés-valeurs doivent être ciblées uniquement sur l’inventaire managé.

- key_id : ID de la clé. Utilisez le service de clé de ciblage pour récupérer les ID de clé.
- action - peut être "include" ou "exclude".
- value_equals est un tableau d’ID de valeur qui doivent être mis en correspondance dans la mise aux enchères pour que la division puisse être servie. Utilisez le service de clé de ciblage pour récupérer les ID de valeur. Lorsqu’une valeur est transmise, cette combinaison clé-valeur doit être présente sur la demande pour que le fractionnement puisse être utilisé. Lorsque plusieurs valeurs sont définies dans le tableau, l’une des combinaisons clé-valeur doit être présente.
- value_less est l’extrémité supérieure de la plage de valeurs autorisées, exclusive.
- value_greater est l’extrémité inférieure de la plage de valeurs autorisées, exclusive. Les clés-valeurs peuvent être transmises à la demande d’impression. Pour plus d’informations, consultez Étiquette de vendeur (AST) de Xandr.

L’exemple de Key-Value suivant (voir JSON ci-dessous) prend la valeur

[ [include Key ID 123: value ID: [1 OR 2 OR 9] ] AND [exclude Key ID 234: value ID: [20] ] ] OR [include Key ID 789: value ID: [15] ]

{
   "conditions": [{
      "field": "key_group",
      "operator": "or",
      "value": [
         [{
               "key_id": 123,
               "action": "include",
               "value_equals": [1, 2, 9]
            },
            {
               "key_id": 234,
               "action": "exclude",
               "value_equals": [20]
            }
         ],
         [{
            "key_id": 789,
            "action": "include",
            "value_equals": [15]
         }]
      ]
   }]
}

Pays

Évaluez les impressions en fonction du pays de l’utilisateur.

Champ Opérateur Valeur
country =, in, not_in ID de pays ou code, tel que 233 ou "US". Utilisez le service country pour récupérer ces ID ou codes.

Région

Évaluez les impressions en fonction de la région géographique de l’utilisateur.

Champ Opérateur Valeur
region =, in, not_in ID de région ou combinaison de code pays/région, telle que "US:NY".
Utilisez le service de région pour récupérer ces ID et codes.

Ville

Évaluez les impressions en fonction de la ville de l’utilisateur.

Champ Opérateur Valeur
city =, in, not_in Id de ville ou combinaison de codes pays/région/ville, telle que "US:NY:New York".
Utilisez le service municipal pour récupérer ces ID et codes.

DMA

Évaluez les impressions en fonction du DMA (zone de marché désignée) de l’utilisateur.

Champ Opérateur Valeur
dma =, in, not_in ID DMA, tel que 602 (pour la zone de métro de Chicago).
Utilisez city service pour récupérer les ID DMA.

Code postal

Évaluez les impressions en fonction du code postal de l’utilisateur. Le code postal est disponible uniquement pour certaines impressions mobiles et les impressions de partenaires fournisseurs externes.

Champ Opérateur Valeur
postal_code =, in, not_in ID de code postal (entier) ou combinaison de codes pays/postal (chaîne telle que "CA:J0K 1B0" ou "US:10010"). Inclut les codes postaux américains.

Utilisez le service de code postal (documenté dans le service de profil) pour récupérer les ID de code postal.

Liste de codes postaux

Évaluez les impressions en fonction des codes postaux de l’utilisateur dans la liste des codes postaux.

Champ Opérateur Valeur
postal_code_list in, not_in ID de liste de codes postaux (entier).

Utilisez le service de liste de codes postaux (documenté dans Postal Code List Service) pour récupérer les ID de liste de codes postaux.

Size

Évaluez les impressions en fonction de la taille du placement. Notez qu’en cas promo_sizes de passage dans l’appel publicitaire, l’évaluation sera effectuée à l’aide de la taille principale uniquement.

Champ Opérateur Valeur
size =, in, not_in Chaîne représentant des dimensions de placement, au "WIDTHxHEIGHT"format .

ID d’URL d’inventaire

Évaluez les impressions en fonction des ID d’URL d’inventaire spécifiques.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
inventory_url_id =, in, not_in ID d’URL d’inventaire.
Utilisez Validate Inventory Item Service pour récupérer ces ID.

Domain

Évaluez les impressions en fonction du domaine.

Remarque

  • Non pris en charge par GDALI.
  • Cette fonctionnalité n’est pas prise en charge dans Microsoft Invest. Si vous comptez également utiliser l’interface utilisateur pour gérer vos fractionnements, utilisez la fonctionnalité ID d’URL d’inventaire (dans ce service) à la place.
Champ Opérateur Valeur
domain =, in, not_in Chaîne représentant un nom de domaine de niveau supérieur, par "food.com" exemple ou "books".

Application mobile

Évaluez les impressions en fonction d’applications mobiles spécifiques.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
mobile_app_bundle =, in, not_in ID ou noms d’application mobile.

Utilisez Mobile App Service pour récupérer ces ID ou noms.

Placement

Évaluez les impressions en fonction de placements spécifiques.

Champ Opérateur Valeur
placement =, in, not_in ID de placement.

L’ID de placement est répertorié comme tag_id dans les données au niveau du journal.

Éditeur

Évaluez les impressions en fonction de serveurs de publication spécifiques.

Champ Opérateur Valeur
publisher =, in, not_in ID de l’éditeur.

Conseil :
L’ID de l’éditeur est répertorié comme publisher_id étant dans les données au niveau du journal.

Membre vendeur

Évaluez les impressions en fonction de membres vendeurs spécifiques.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
seller_member_id =, in, not_in ID de membre du vendeur.

ID de la transaction

Inventaire des transactions cibles.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
deal_id =, in, not_in ID de la transaction.

ID de liste de transactions

Inventaire de la liste des transactions cibles.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
deal_list in, not_in ID de liste des transactions.

Famille de systèmes d’exploitation

Évaluez les impressions en fonction du système d’exploitation de l’utilisateur.

Champ Opérateur Valeur
os_family =, in, not_in ID ou nom de la famille de système d’exploitation, par 2 exemple ou "Android".

Utilisez le service famille de systèmes d’exploitation pour récupérer ces ID et noms.

Version du système d'exploitation

Évaluez les impressions en fonction de la version spécifique du système d’exploitation de l’utilisateur.

Champ Opérateur Valeur
os_extended =, in, not_in ID étendu du système d’exploitation, par 81 exemple pour "10.8 Mountain Lion".
Utilisez le service étendu du système d’exploitation pour récupérer ces ID.

Remarque :
L’ID du système d’exploitation est répertorié comme operating_system étant dans les données au niveau du journal.

Navigateur

Évaluez les impressions en fonction du navigateur de l’utilisateur.

Champ Opérateur Valeur
browser =, in, not_in ID ou nom du navigateur, par 8 exemple ou "Chrome (all versions)".

Utilisez le service de navigateur pour récupérer ces ID et noms.

Langue du navigateur

Évaluez les impressions en fonction de la langue du navigateur.

Champ Opérateur Valeur
language =, in, not_in ID de langue.

Utilisez le service de langage pour récupérer ces ID.

Type d’appareil

Évaluez les impressions en fonction de types spécifiques d’appareils physiques.

Champ Opérateur Valeur
device_type =, in, not_in Nom du type d’appareil. Valeurs possibles :
- "pc & other devices" - Utilisez cette valeur pour cibler les ordinateurs de bureau et les ordinateurs portables.
- "phone" - Utilisez cette valeur pour cibler les téléphones mobiles.
- "tablet" - Utilisez cette valeur pour cibler les tablettes mobiles.

Modèle du périphérique

Évaluez les impressions en fonction de modèles spécifiques d’appareils physiques.

Champ Opérateur Valeur
device_model =, in, not_in ID du modèle d’appareil.
Utilisez le service de modèle d’appareil pour récupérer ces ID.

L’ID de modèle d’appareil est répertorié dans device_id les données au niveau du journal.

Transporteur

Évaluez les impressions en fonction d’opérateurs mobiles spécifiques.

Champ Opérateur Valeur
carrier =, in, not_in ID ou nom de l’opérateur mobile, par 14 exemple ou «Verizon" .

Utilisez le service opérateur pour récupérer ces ID et noms.

Taux de visibilité IAB prédit

Précédemment appelé « Taux d’affichage IAB estimé ». Évaluez les impressions d’affichage web en fonction de la probabilité qu’elles soient mesurées comme étant visibles par la norme IAB, comme déterminé par le Guide d’optimisation (disponible dans la documentation de l’interface utilisateur).

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
predicted_iab_view_rate <, <=, =, >, >= Nombre décimal compris entre 0 et 1, représentant un pourcentage.

Taux de visionabilité des vidéos IAB prédit

Évaluez les impressions vidéo web en fonction de la probabilité qu’elles soient mesurées comme étant visibles par la norme IAB, comme déterminé par le Guide d’optimisation (disponible dans la documentation de l’interface utilisateur).

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
predicted_iab_video_view_rate <, <=, =, >, >= Nombre décimal compris entre 0 et 1, représentant un pourcentage.

Taux de saisie semi-automatique de la vidéo prédite

Évaluez les impressions vidéo web en fonction de leur probabilité de réalisation, comme le détermine le Guide d’optimisation (disponible dans la documentation de l’interface utilisateur).

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
estimated_video_completion_rate <, <=, =, >, >= Nombre décimal compris entre 0 et 1, représentant un pourcentage. 0 représente l’inventaire non vidéo.

Créatif

Les créatifs à servir sur cette division.

Champ Opérateur Valeur
creative in Liste des ID créatifs.

Utilisez creative service pour récupérer ces ID.

Groupe de segments

Champ Opérateur Valeur
segment_group

Utilisez le service de segment pour récupérer les ID de segment.
and, or Tableau de conditions imbriqué qui spécifie des groupes de segments. Chaque segment_group tableau inclut segment_ID, age, valueet action ("include" ou "exclude").
- action peut être "include" ou "exclude".
- start_minutes est la limite inférieure de minutes depuis que l’utilisateur a été ajouté à ce segment, inclus. "start_minutes": 5 inclut les utilisateurs qui ont été ajoutés au segment à partir de la marque de cinq minutes, y compris 5 :00.
- expire_minutes est la limite supérieure de minutes depuis que l’utilisateur a été ajouté à ce segment, inclus. "expire_minutes": 10 inclut les utilisateurs qui ont été ajoutés au segment jusqu’à la marque de dix minutes, y compris 10 :00.
- value_less est l’extrémité inférieure de la plage de valeurs autorisées, exclusive. "value_less" : 5 inclut uniquement des valeurs supérieures à, mais non comprises, 5.
- value_greater est l’extrémité supérieure de la plage de valeurs autorisées, exclusive. "value_greater" : 10 inclut uniquement les valeurs jusqu’à , mais pas , 10.
- value_equals correspond exactement à la valeur autorisée. “value_equals” : 5 inclut uniquement des valeurs égales à 5.
- Contrairement au service de profil, le service Splits vous permet de cibler des valeurs de segment de zéro (0). Consultez l’exemplevalue_equals ci-dessous.
Les valeurs de segment peuvent être passées de plusieurs façons, par exemple, par le biais du service de segment batch ou d’une chaîne de requête de segment interne ou tierce.

Exemple pour le value_equals champ

"conditions": [
{
"field": "segment_group",
"operator": "and",
"value": [
[
{
"segment_ID": SEGMENT_ID,
"action": SEGMENT_ACTION,
"start_minutes": YOUNGEST_SEGMENT_AGE,
"expire_minutes": OLDEST_SEGMENT_AGE,
"value_less": LOWER_BOUND_SEGMENT_VALUE,
"value_greater": UPPER_BOUND_SEGMENT_VALUE,
"value_equals": EXACT_SEGMENT_VALUE
}

]
]
}
]

Segment

Avertissement

La segment[]condition n’est plus utilisée et a été déconseillée le 21 août 2022. Lorsque vous configurez le ciblage pour de nouveaux éléments de ligne, utilisez le groupe de segments (segment_group) à la place.

Champ Opérateur Valeur
segment[SEGMENTID,...]
SEGMENTID est une liste facultative d’ID de segment.
Utilisez le service de segment pour récupérer les ID de segment.
<, <=, =, >, >=, present, absent Tableau de conditions imbriquées qui spécifie l’âge, la valeur ou la présence des segments.
- La présence du segment est "present" ou "absent".
- L’âge du segment est mesuré en minutes et doit être un entier positif.
- La valeur de segment est un entier positif différent de zéro représentant une valeur définie par l’utilisateur. Consultez l’exemplevalue ci-dessous.
Les valeurs de segment peuvent être passées de plusieurs façons, par exemple, par le biais du service de segment batch ou d’une chaîne de requête de segment interne ou tierce.

Exemple pour le value champ

Évaluez les impressions en fonction de la présence, de l’absence, de la valeur ou de l’âge du segment de l’utilisateur dans un segment interne ou tiers.

"conditions": [
{
"field": "segment[]",
"operator": "any",
"value": [
{
"conditions": [
{
"field": "age",
"operator": "<=",
"value": 1440
}
],
"id": 275913
}
]
}
],

Fréquence quotidienne

Nombre d’annonces vues par un utilisateur pour un annonceur, un élément de ligne ou un fractionnement le jour actuel.

Champ Opérateur Valeur
OBJECT[ID].day_frequency
où l’objet est advertiser, line_itemou campaign (représentant le fractionnement) et ID est l’ID de l’objet. Utilisez le service annonceur, le service d’élément de ligne ou le service Fractionnements pour récupérer les ID.
>, =>, <, =<, =

Important : bien que l’opérateur = soit pris en charge pour la fréquence et la récurrence, nous vous recommandons vivement de ne pas l’utiliser, car il a tendance à entraîner une sous-livraison. En effet, lorsque vous ciblez une impression avec frequency=5, vous excluez les impressions avec des fréquences égales à 0, 1, 23, ou 4.
Entier positif. 0 indique qu’aucune information de fréquence n’est disponible (l’utilisateur n’a pas vu cet objet le jour actuel).

Fréquence de la durée de vie

Nombre d’annonces vues par un utilisateur au cours de la durée de vie d’un annonceur, d’un élément de ligne ou d’un fractionnement.

Champ Opérateur Valeur
OBJECT[ID].lifetime_frequency
où l’objet est advertiser, line_itemou campaign (représentant le fractionnement) et ID est l’ID de l’objet. Utilisez le service annonceur, le service d’élément de ligne ou le service Fractionnements pour récupérer les ID.

ATTENTION : Bien que l’opérateur = soit pris en charge pour la fréquence et la récurrence, nous vous recommandons vivement de ne pas l’utiliser, car il a tendance à provoquer une sous-livraison. En effet, lorsque vous ciblez une impression avec frequency=5, vous excluez les impressions avec des fréquences égales à 0, 1, 23, ou 4.
>, =>, <, =<, = Entier positif. 0 indique qu’aucune information de fréquence n’est disponible (l’utilisateur n’a jamais vu cet objet).

Récence

Nombre de minutes depuis qu’un utilisateur a vu une publicité. Cela peut être déterminé pour un utilisateur pour toutes les annonces sous un annonceur, un élément de ligne ou un fractionnement.

Champ Opérateur Valeur
OBJECT[ID].recency
où l’objet est advertiser, line_itemou campaign (représentant le fractionnement) et ID est l’ID de l’objet. Utilisez le service annonceur, le service d’élément de ligne ou le service Fractionnements pour récupérer les ID.
>, =>, <, =<, =

Important : bien que l’opérateur = soit pris en charge pour la fréquence et la récurrence, nous vous recommandons vivement de ne pas l’utiliser, car il a tendance à entraîner une sous-livraison. En effet, lorsque vous ciblez une impression avec frequency=5, vous excluez les impressions avec des fréquences égales à 0, 1, 23, ou 4.
Entier positif indiquant le nombre de minutes depuis qu’un utilisateur a vu une impression, arrondie vers le bas. 59 secondes prend la valeur 0, 61 secondes prend la valeur 1. 0 signifie que l’impression a été vue très récemment. Null signifie qu’aucune donnée de récence n’est disponible (l’utilisateur n’a pas vu cette impression auparavant).

Type d’inventaire

Type d’inventaire (« application » ou « web ») ciblé par le fractionnement. « App » cible l’inventaire des applications mobiles et « web » cible l’inventaire web (y compris les pages affichées dans les navigateurs web mobiles).

Champ Opérateur Valeur
inventory_type =, in, not_in "web", "app"
Consultez l’exemple.

Exemple pour le inventory_type champ

"conditions": [
{
"field": "inventory_type",
"operator": "in",
"value": [
"app",
"web"
]
}
]

Liste d’URL d’inventaire

Ciblez une liste d’autorisation ou une liste de blocage établie au niveau du réseau. Vous ne pouvez cibler qu’une seule liste.

Remarque

Non pris en charge par GDALI.

Champ Opérateur Valeur
inventory_url_list all, not in ID de liste d’inventaire.

"conditions":[{"field":"inventory_url_list","operator":"not in","value":[12345]}]

Pour créer une liste d’inventaire ou récupérer les ID de liste à utiliser dans le ciblage fractionné, utilisez le service de liste d’inventaire.

Exemples

Create fractionnements pour un élément de ligne avec le chiffre d’affaires réservé plus les coûts et l’optimisation désactivés

Cet exemple crée trois fractionnements pour l’élément de 6377624ligne :

  • Split 1 : l’utilisateur doit utiliser le navigateur Chrome. La valeur attendue des 2impressions est . Quarante pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est prioritaire. L’allocation n’est pas contrainte.
  • Fractionnement 2 - Les impressions doivent appartenir à Segment 275913 et doivent avoir été ajoutées au cours des dernières 1 440 minutes. Une valeur attendue de ''1 leur est affectée. Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le deuxième en priorité. L’allocation n’est pas contrainte.
  • Split 3 (sans nom) : fractionnement par défaut. La valeur attendue des 0.5impressions est . Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le troisième en priorité. L’allocation n’est pas contrainte.

Étant donné que l’optimisation est désactivée, nous définissons les valeurs attendues pour les fractionnements.

$ cat ali_cost_plus_ev.json
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 2,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 1,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "expected_value": 0.5,
        "is_default": true,
        "name": "Default",
        "order": 3
    }

$ curl -b cookies -X PUT -s -d '@ali_cost_plus_ev.json' "https://api.appnexus.com/budget-splitter/6377624/splits"   
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 2,
        "id": 24025228,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": 1,
        "id": 24025229,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "expected_value": 0.5,
        "id": 24025230,
        "is_default": true,
        "name": "Default",
        "order": 3
    }
]

Create fractionnements pour un élément de ligne avec le chiffre d’affaires réservé plus le coût et l’optimisation activés

Cet exemple crée trois fractionnements pour l’élément de 6377631ligne :

  • Split 1 : l’utilisateur doit utiliser le navigateur Chrome. La valeur attendue des 2impressions est . Quarante pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est prioritaire. L’allocation n’est pas contrainte.
  • Fractionnement 2 - Les impressions doivent appartenir à Segment 275913 et doivent avoir été ajoutées au cours des dernières 1 440 minutes. La valeur attendue est 1. Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le deuxième en priorité. L’allocation n’est pas contrainte.
  • Split 3 (sans nom) : fractionnement par défaut. La valeur attendue des 0.5impressions est . Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le troisième en priorité. L’allocation n’est pas contrainte.
$ cat ali_cost_plus_opt.json
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "expected_value": null,
        "is_default": true,
        "name": "Default",
        "order": 3
    }


$ curl -b cookies -X PUT -s -d '@ali_cost_plus_opt.json' "https://api.appnexus.com/budget-splitter/6377631/splits"
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "id": 24025315,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "id": 24025316,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": null,
        "expected_value": null,
        "id": 24025317,
        "is_default": true,
        "name": "Default",
        "order": 3

Create fractionnements pour un élément de ligne avec le chiffre d’affaires réservé et l’optimisation CPM désactivés

Cet exemple crée trois fractionnements pour l’élément de 6377633ligne :

  • Split 1 : l’utilisateur doit utiliser le navigateur Chrome. Les enchères sont multipliées par 0.5. Quarante pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est prioritaire. L’allocation n’est pas contrainte.
  • Fractionnement 2 - Les impressions doivent appartenir à Segment 275913 et doivent avoir été ajoutées au cours des dernières 1 440 minutes. Les enchères sont multipliées par 0.4. Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le deuxième en priorité. L’allocation n’est pas contrainte.
  • Split 3 (sans nom) : fractionnement par défaut. Les enchères sont multipliées par 1 (elles restent les mêmes). Trente pour cent du trafic de l’élément de ligne sont alloués à ce fractionnement, qui est le troisième en priorité. L’allocation n’est pas contrainte.

Étant donné que l’optimisation est désactivée, nous définissons des modificateurs d’enchère pour chaque fractionnement.

$ cat ali_cpm_bid_modifier.json
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 0.5,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 0.4,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 1,
        "expected_value": null,
        "is_default": true,
        "name": "Default",
        "order": 3
    }

$ curl -b cookies -X PUT -s -d '@ali_cpm_bid_modifier.json' "https://api.appnexus.com/budget-splitter/6377633/splits"   
[
    {
        "active": true,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 0.5,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "id": 24025342,
        "is_default": false,
        "name": "Split 1",
        "order": 1
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 0.4,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creative_macros": [],
        "creatives": [],
        "expected_value": null,
        "id": 24025343,
        "is_default": false,
        "name": "Split 2",
        "order": 2
    },
    {
        "active": true,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "bid_modifier": 1,
        "expected_value": null,
        "id": 24025344,
        "is_default": true,
        "name": "Default",
        "order": 3
    }
]

Mettre à jour un fractionnement sur un élément de ligne

Dans cet exemple, l’élément de 5200075 ligne comporte déjà 3 fractionnements, tous avec des stratégies d’allocation sans contrainte. Nous mettons à jour Split 1 pour utiliser une stratégie d’allocation contrainte.

# View the current splits
$ curl -b cookies 'https://api.appnexus.com/budget-splitter/5200075/splits'
    {
        "id": 24025093,
        "name": "Split 1",
        "is_default": false,
        "active": true,
        "bid_modifier": null,
        "expected_value": 2,
        "allocation_percent": 40,
        "allocation_strategy": "unconstrained",
        "order": 1,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creatives": [

        ],
        "creative_macros": [

        ]
    },
    {
        "id": 24025094,
        "name": "Split 2",
        "is_default": false,
        "active": true,
        "bid_modifier": null,
        "expected_value": 1,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "order": 2,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creatives": [

        ],
        "creative_macros": [

        ]
    },
    {
        "id": 24025096,
        "name": "Default",
        "is_default": true,
        "active": true,
        "bid_modifier": null,
        "expected_value": 0.5,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "order": 3
    }
]

# View the split1-update JSON 
$ cat split1-update.json
[
    {
        "id": 24025093,
        "name": "Split 1",
        "is_default": false,
        "active": true,
        "bid_modifier": null,
        "expected_value": 2,
        "allocation_percent": 40,
        "allocation_strategy": "constrained",
        "order": 1,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creatives": [
        ],
        "creative_macros": [
        ]
    }
]

# Update Split 1

$ curl -b cookies -X PATCH -d @split1_update.json 'https://api.appnexus.com/budget-splitter/5200075/splits'
[
    {
        "id": 24025093,
        "name": "Split 1",
        "is_default": false,
        "active": true,
        "bid_modifier": null,
        "expected_value": 2,
        "allocation_percent": 40,
        "allocation_strategy": "constrained",
        "order": 1,
        "conditions": [
            {
                "field": "browser",
                "operator": "in",
                "value": [
                    8
                ]
            }
        ],
        "creatives": [

        ],
        "creative_macros": [

        ]
    },
    {
        "id": 24025094,
        "name": "Split 2",
        "is_default": false,
        "active": true,
        "bid_modifier": null,
        "expected_value": 1,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "order": 2,
        "conditions": [
            {
                "field": "segment_group",
                "operator": "and",
                "value": [
                            [
                                {
                                "segment_id": 275913,
                                "start_minutes": 0,
                                "expire_minutes": 1440
                                }
                            ]
                         ]    
            }
        ],
        "creatives": [

        ],
        "creative_macros": [

        ]
    },
    {
        "id": 24025096,
        "name": "Default",
        "is_default": true,
        "active": true,
        "bid_modifier": null,
        "expected_value": 0.5,
        "allocation_percent": 30,
        "allocation_strategy": "unconstrained",
        "order": 3
    }
]