Partager via


Service de règle de paiement

Une règle de paiement définit les termes selon lesquels un réseau paie l’un de ses éditeurs gérés. Un réseau peut avoir plusieurs ensembles de conditions de paiement avec un éditeur. Par instance, le trafic provenant de certaines zones géographiques peut avoir des conditions d’accord de partage des revenus différentes.

Remarque

Le ciblage des annonceurs, des éléments de ligne ou des campagnes via le service de placement remplacera tout ciblage de ces objets via le facultatif profile_idde ce service.

API REST

Remarque

publisher_code peut être utilisé à la place de publisher_id, et payment_rule_code peut être utilisé à la place de publisher_rule_id pour tous les appels ci-dessous.

HTTP, méthode Endpoint Description
POST https://api.appnexus.com/payment-rule?publisher_id=PUBLISHER_ID
(json de règle de paiement)
Ajoutez une nouvelle règle de paiement.
PUT https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID&publisher_id=PUBLISHER_ID
(json de règle de paiement)
Modifier une règle de paiement existante.
GET https://api.appnexus.com/payment-rule?publisher_id=PUBLISHER_ID Afficher toutes les règles de paiement d’un éditeur.
GET https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID Afficher une règle de paiement spécifique pour un éditeur.
GET https://api.appnexus.com/payment-rule?id=1,2,3 Affichez plusieurs règles de paiement par ID à l’aide d’une liste séparée par des virgules.
DELETE https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID Supprimer une règle de paiement.

Champs JSON

Champ Type Description
id int ID de cette règle de paiement.
Obligatoire Sur : PUT, dans la chaîne de requête
code string Code personnalisé facultatif que vous pouvez utiliser pour référencer cette règle de paiement.

Par défaut : Null
name string Nom utilisé pour décrire cette règle de paiement.

Par défaut : None
Obligatoire sur : POST
state enum État de cette règle de paiement. Valeurs possibles : "active" ou "inactive".

Par défaut : "active"
description chaîne Description facultative.
start_date Timestamp Date de début de cette règle.

Par défaut : Immediately
end_date Timestamp Date de fin de cette règle.

Par défaut : Indefinitely
pricing_type enum Valeurs possibles :
- "revshare" - L’éditeur reçoit un pourcentage des recettes publicitaires.
- "cpm" - L’éditeur est payé un montant forfaitaire par annonce servie.
- "dynamic" - Les conditions de paiement sont définies par un partage de revpartage min et max et un eCPM cible.

Par défaut : "revshare"
Obligatoire sur : POST
cost_cpm double Si pricing_type a la valeur "cpm", il s’agit des frais CPM payés par l’éditeur.

Obligatoire Sur : POST, si pricing_type est "cpm"
revshare double Si pricing_type est "revshare", il s’agit du pourcentage payé à l’éditeur. Si le type de tarification est "dynamic", il s’agit du pourcentage minimal de revshare payé à l’éditeur, avec le maximum défini par max_revshare. Le pourcentage doit être exprimé sous la forme d’un nombre compris entre 0 et 1 (inclus), où 1 est 100 %.

Obligatoire sur : POST, si pricing_type est "revshare" ou "dynamic"
profile_id int Un facultatif profile_id est utilisé pour déterminer quand appliquer une règle de paiement. Un profil est un ensemble générique de règles pour le ciblage des stocks, et certaines règles de paiement peuvent s’appliquer uniquement à certaines tranches d’inventaire. Pour plus d’informations, consultez Service de profil.
priority int Vous pouvez éventuellement fournir une priorité qui définit le niveau auquel cette règle doit être appliquée par rapport à d’autres règles de paiement.

Par défaut : 5
timezone string Fuseau horaire utilisé pour calculer les données de tarification. Pour obtenir la liste des fuseaux horaires, consultez Fuseaux horaires d’API.

Par défaut : 'EST5EDT'
last_modified Timestamp Heure de la dernière modification de cette règle de paiement.
filtered_advertisers tableau d’objets Liste des annonceurs auxquels vous souhaitez appliquer l’action spécifiée.demand_filter_action Voir Annonceurs filtrés ci-dessous.
filtered_line_items tableau d’objets Liste d’éléments de ligne auxquels vous souhaitez appliquer l’action spécifiée.demand_filter_action Voir Éléments de ligne filtrés ci-dessous.
filtered_campaigns tableau d’objets Liste des campagnes auxquelles vous souhaitez appliquer l’action spécifiée.demand_filter_action Consultez Campagnes filtrées ci-dessous.
buyer_type enum Les types d’acheteurs auxquels appliquer cette règle de paiement.
Valeurs possibles :
- "direct": votre propre inventaire managé
- "external": tiers, inventaire managé
- "both"

Par défaut : "both"
max_revshare double Si pricing_type a la valeur "dynamic", il s’agit du pourcentage de partage de réverrum maximal payé à l’éditeur.

Obligatoire Sur : POST, si pricing_type a la valeur "dynamic".
apply_cost_on_default valeur booléenne Si l’éditeur est payé ou non, même si la vente aux enchères est en défaut.
demand_filter_action enum Décidez s’il faut inclure ou exclure les annonceurs, les éléments de ligne et/ou les campagnes répertoriés dans les filtered_advertiserstableaux , filtered_line_itemsou filtered_campaigns .
Valeurs possibles :
- "include"
- "exclude"
- "default"

Annonceurs filtrés

Champ Type Description
id int ID de l’annonceur.
name string Nom de l’annonceur.

Éléments de ligne filtrés

Champ Type Description
id int ID de l’élément de ligne.
name string Nom de l’élément de ligne.

Campagnes filtrées

Champ Type Description
id int ID de la campagne.
name string Nom de la campagne.

Exemples

Create une règle de paiement

$ cat payment_rule.json

{
    "payment-rule":{
        "name": "France - 1/24 - $.40 CPM",
        "code": "france_payment_rule",
        "pricing_type": "cpm",
        "cost_cpm": "0.4",
        "state": "active",
        "start_date": "2010-01-01 00:00:00",
        "end_date": "2010-03-31 11:59:59",
        "priority": 8,
        "profile_id": 12345
    }
}

$ curl -c cookies -b cookies -X POST -d @payment_rule.json 'https://api.appnexus.com/payment-rule?publisher_id=65103'

{
  "response": {
    "status": "OK",
    "count": 1,
    "id": 66323,
    "start_element": 0,
    "num_elements": 100,
    "payment-rule": {
      "id": 66323,
      "code": "france_payment_rule",
      "name": "France - 1/24 - $.40 CPM",
      "description": "",
      "pricing_type": "cpm",
      "cost_cpm": 0.4,
      "revshare": null,
      "state": "active",
      "start_date": "2010-01-01 00:00:00",
      "end_date": "2010-03-31 11:59:59",
      "profile_id": 12345,
      "timezone": "EST5EDT",
      "priority": 8,
      "last_modified": "2011-02-18 21:19:52"
    }
  }
}

Lire une règle de paiement unique

$ curl -b cookies 'https://api.appnexus.com/payment-rule?id=92873'

{
    "payment-rule": {
    "apply_cost_on_default": true,
    "target_ecpm": 0.8,
    "max_revshare": 0.8,
    "buyer_type": "both",
    "last_modified": "2012-08-02 19:04:00",
    "priority": 10,
    "timezone": "EST5EDT",
    "profile_id": null,
    "end_date": null,
    "start_date": "2013-01-01 00:00:00",
    "state": "active",
    "revshare": 0.67,
    "cost_cpm": 40,
    "pricing_type": "dynamic",
    "description": "A payment rule for targeting USA users",
    "name": "USA",
    "code": "usa_payment_rule",
    "id": 98273
    }
}

Lire toutes les règles de paiement d’un éditeur

$ curl -c cookies -b cookies 'https://api.appnexus.com/payment-rule?publisher_id=65103'

{
  "response": {
    "status": "OK",
    "count": 4,
    "start_element": null,
    "num_elements": null,
    "payment-rules": [
      {
        "id": 95479,
        "code": null,
        "name": "Base Payment Rule",
        "description": "",
        "pricing_type": "revshare",
        "cost_cpm": null,
        "revshare": 0.6,
        "state": "active",
        "start_date": null,
        "end_date": null,
        "profile_id": null,
        "timezone": "EST5EDT",
        "priority": 1,
        "last_modified": "2012-04-09 11:40:54",
        "buyer_type": "both",
        "max_revshare": null,
        "target_ecpm": null,
        "apply_cost_on_default": false,
        "demand_filter_action": "default",
        "lifetime_budget": null,
        "lifetime_budget_imps": null,
        "daily_budget": null,
        "daily_budget_imps": null,
        "filtered_advertisers": null,
        "filtered_line_items": null,
        "filtered_campaigns": null
      },
      {
        "id": 95480,
        "code": null,
        "name": "AbenBog Unique Impressions",
        "description": "",
        "pricing_type": "revshare",
        "cost_cpm": null,
        "revshare": 0.7,
        "state": "active",
        "start_date": "2012-04-09 00:00:00",
        "end_date": null,
        "profile_id": 142958,
        "timezone": "EST5EDT",
        "priority": 5,
        "last_modified": "2012-04-09 11:46:32",
        "buyer_type": "both",
        "max_revshare": null,
        "target_ecpm": null,
        "apply_cost_on_default": false,
        "demand_filter_action": "exclude",
        "lifetime_budget": null,
        "lifetime_budget_imps": null,
        "daily_budget": null,
        "daily_budget_imps": null,
        "filtered_advertisers": null,
        "filtered_line_items": null,
        "filtered_campaigns": null
      },
      {
        "id": 98434,
        "code": null,
        "name": "Rich's cool payment rule",
        "description": "",
        "pricing_type": "revshare",
        "cost_cpm": null,
        "revshare": 0.7,
        "state": "active",
        "start_date": null,
        "end_date": null,
        "profile_id": null,
        "timezone": "EST5EDT",
        "priority": 5,
        "last_modified": "2012-08-03 17:37:17",
        "buyer_type": "both",
        "max_revshare": null,
        "target_ecpm": null,
        "apply_cost_on_default": true,
        "demand_filter_action": "default",
        "lifetime_budget": null,
        "lifetime_budget_imps": null,
        "daily_budget": null,
        "daily_budget_imps": null,
        "filtered_advertisers": null,
        "filtered_line_items": null,
        "filtered_campaigns": null
      },
      {
        "id": 98435,
        "code": "this_is_a_test",
        "name": "Rich's other cool payment rule",
        "description": "",
        "pricing_type": "revshare",
        "cost_cpm": null,
        "revshare": 0.7,
        "state": "active",
        "start_date": null,
        "end_date": null,
        "profile_id": null,
        "timezone": "EST5EDT",
        "priority": 5,
        "last_modified": "2012-08-03 17:57:27",
        "buyer_type": "both",
        "max_revshare": null,
        "target_ecpm": null,
        "apply_cost_on_default": true,
        "demand_filter_action": "default",
        "lifetime_budget": null,
        "lifetime_budget_imps": null,
        "daily_budget": null,
        "daily_budget_imps": null,
        "filtered_advertisers": null,
        "filtered_line_items": null,
        "filtered_campaigns": null
      }
    ]
  }
}

Mettre à jour une règle de paiement

$ cat payment_rule.json

{
    "payment-rule": {
    "apply_cost_on_default": true,
    "target_ecpm": 0.8,
    "max_revshare": 0.8,
    "priority": 10,
    "timezone": "EST5EDT",
    "revshare": 0.67,
    "cost_cpm": 40,
    "pricing_type": "dynamic",
    "description": "A payment rule for targeting USA users"
    }
}

$ curl -b cookies -X PUT -d @payment_rule.json
'https://api.appnexus.com/payment-rule?publisher_id=65103&id=98273'

{
    "payment-rule": {
    "apply_cost_on_default": true,
    "target_ecpm": 0.8,
    "max_revshare": 0.8,
    "buyer_type": "both",
    "last_modified": "2012-08-02 19:04:00",
    "priority": 10,
    "timezone": "EST5EDT",
    "profile_id": null,
    "end_date": null,
    "start_date": "2013-01-01 00:00:00",
    "state": "active",
    "revshare": 0.67,
    "cost_cpm": 40,
    "pricing_type": "dynamic",
    "description": "A payment rule for targeting USA users",
    "name": "USA",
    "code": "usa_payment_rule",
    "id": 98273
    }
}

Supprimer une règle de paiement

$ curl -b cookies -X DELETE "https://api.appnexus.com/payment-rule?id=98384"

{
  "response": {
    "status": "OK"
  }
}