Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Una regla de pago define los términos por los que una red paga a uno de sus editores administrados. Una red puede tener más de un conjunto de condiciones de pago con un editor. Por ejemplo, el tráfico que se origina en determinadas áreas geográficas puede tener diferentes términos de acuerdo de reparto de ingresos.
Nota:
La segmentación de anunciantes o líneas de pedido a través del servicio de colocación anulará cualquier segmentación de esos objetos a través del protocolo opcional profile_idde este servicio.
API de REST
Nota:
publisher_code se puede usar en lugar de publisher_id, y payment_rule_code se puede usar en lugar de publisher_rule_id para todas las llamadas siguientes.
| Método HTTP | Endpoint | Description |
|---|---|---|
POST |
https://api.appnexus.com/payment-rule?publisher_id=PUBLISHER_ID (payment-rule JSON) |
Agregar una nueva regla de pago. |
PUT |
https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID&publisher_id=PUBLISHER_ID (payment-rule JSON) |
Modificar una regla de pago existente. |
GET |
https://api.appnexus.com/payment-rule?publisher_id=PUBLISHER_ID |
Ver todas las reglas de pago de un editor. |
GET |
https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID |
Ver una regla de pago específica para un editor. |
GET |
https://api.appnexus.com/payment-rule?id=1,2,3 |
Ver varias reglas de pago por identificador mediante una lista separada por comas. |
DELETE |
https://api.appnexus.com/payment-rule?id=PAYMENT_RULE_ID |
Eliminar una regla de pago. |
Campos JSON
| Campo | Tipo | Descripción |
|---|---|---|
id |
Entero | El id. de esta regla de pago. Requerido en: PUT, en la cadena de consulta |
code |
string | Un código personalizado opcional que puedes usar para hacer referencia a esta regla de pago. Valor predeterminado: Null |
name |
string | Nombre utilizado para describir esta regla de pago. Valor predeterminado: NoneRequerido en: POST |
state |
enumeración | El estado de esta regla de pago. Valores posibles: "active" o "inactive".Valor predeterminado: "active" |
description |
string | Una descripción opcional. |
start_date |
marca de tiempo | Fecha de inicio de esta regla. Valor predeterminado: Immediately |
end_date |
marca de tiempo | Fecha de finalización de esta regla. Valor predeterminado: Indefinitely |
pricing_type |
enumeración | Posibles valores: - "revshare" - Al editor se le paga un porcentaje de los ingresos publicitarios.- "cpm" - Al editor se le paga una tarifa plana por anuncio servido.- "dynamic" - Los términos de pago se definen por un revshare mínimo y máximo y un eCPM objetivo.Valor predeterminado: "revshare"Requerido en: POST |
cost_cpm |
double | Si pricing_type es "cpm", esta es la tarifa de CPM que se le paga al editor.Requerido en: POST, si pricing_type es "cpm" |
revshare |
double | Si pricing_type es "revshare", este es el porcentaje pagado al editor. Si el tipo de precio es "dynamic", este es el porcentaje mínimo de revshare pagado al editor, con el máximo definido por max_revshare. El porcentaje debe expresarse como un número entre 0 y 1 (inclusive), donde 1 es 100%.Requerido en: POST, si pricing_type es "revshare" o "dynamic" |
profile_id |
Entero | Se utiliza un opcional profile_id para determinar cuándo aplicar una regla de pago. Un perfil es un conjunto genérico de reglas para segmentar el inventario, y ciertas reglas de pago solo pueden aplicarse a determinados segmentos del inventario. Consulte el Servicio de perfiles para obtener más detalles. |
priority |
Entero | Opcionalmente, puede proporcionar una prioridad que defina el nivel en el que se debe aplicar esta regla en relación con otras reglas de pago. Valor predeterminado: 5 |
timezone |
string | La zona horaria usada para calcular los datos de precios. Para obtener una lista de zonas horarias, consulte Zonas horarias de API. Valor predeterminado: 'EST5EDT' |
last_modified |
marca de tiempo | Hora de la última modificación de esta regla de pago. |
demand_filter_action |
enumeración | Decida si desea incluir o excluir los anunciantes o las líneas de pedido que aparecen en las filtered_advertisersmatrices o filtered_line_items matrices.Posibles valores: - "include"- "exclude"- "default". Para obtener más información, consulte Demand Filtering más abajo. |
filtered_advertisers |
matriz de objetos | Una lista de anunciantes a los que quiere aplicar la acción especificada por demand_filter_action . Consulte Anunciantes filtrados a continuación. |
filtered_line_items |
matriz de objetos | Lista de líneas de pedido a las que quiere aplicar la acción especificada por demand_filter_action TO. Consulte las líneas de pedido filtradas a continuación. |
filtered_campaigns |
matriz de objetos | Obsoleto. Lista de campañas a las que quieres aplicar la acción especificada por demand_filter_action TO. |
buyer_type |
enumeración | A qué tipos de comprador aplicar esta regla de pago. Posibles valores: - "direct": su propio inventario administrado- "external": Inventario administrado por terceros- "both"Valor predeterminado: "both" |
max_revshare |
double | Si pricing_type es "dynamic"así, este es el porcentaje máximo de revshare pagado al editor.Requerido en: POST, si pricing_type es "dynamic". |
apply_cost_on_default |
booleano | Si se paga o no al editor, incluso si la subasta no se realiza correctamente. |
Filtrado por demanda
El filtrado de demanda puede ser una capacidad de segmentación útil, pero es importante comprender cómo funciona antes de usarlo en reglas de pago o ubicaciones.
Consideraciones clave
- Solo se aplica a la demanda administrada: el filtrado de demanda en las reglas de pago o colocaciones solo se aplica a la demanda administrada. Si se habilita un emplazamiento para la reventa, las campañas de orígenes de demanda de terceros no se verán afectadas por el filtrado de demanda.
- Se aplica una regla de pago por impresión: cada impresión usa una única regla de pago, que se selecciona al comienzo de la subasta. Una vez seleccionada, la regla de pago determina qué demanda es elegible para participar. Debido a este comportamiento, no puede usar el filtrado de demanda de reglas de pago para ajustar los pagos del publicador en función de la fuente de demanda que gane la subasta. En concreto:
-
Inclusión de una línea de pedido: cuando una regla de pago incluye una línea de pedido específica, esa línea de pedido se excluye de la subasta cuando se aplica la regla de pago. Solo pueden servir otras líneas de pedido gestionadas y la demanda de RTB. Por ejemplo, si filtered_line_items =
1234y demand_filter_action =include, la línea de pedido1234no será apta para pujar cuando se seleccione esta regla de pago. -
Excluyendo una línea de pedido: cuando una regla de pago excluye una línea de pedido específica, solo esa línea de pedido es apta para pujar a partir de la demanda gestionada. Se excluyen todas las demás líneas de pedido gestionadas, mientras que la demanda de RTB sigue siendo elegible. Por ejemplo, si filtered_line_items =
1234y demand_filter_action =exclude, solo el elemento1234de línea puede pujar a partir de la demanda gestionada cuando se selecciona esta regla de pago. Si esa línea de pedido alcanza su límite de frecuencia, tiene un ritmo de ritmo o no es elegible de alguna otra manera, ninguna demanda administrada será elegible para servir mientras la regla de pago permanezca seleccionada.
- El filtrado de nivel de ubicación tiene prioridad: el filtrado de demanda configurado en el nivel de ubicación anula el filtrado de demanda configurado en el nivel de regla de pago. Si se establecen inclusiones o exclusiones de demanda en una ubicación, se ignora todo el filtrado de demanda a nivel de regla de pago. Para obtener más información, consulte Filtrado de demanda de ubicación.
Anunciantes filtrados
| Campo | Tipo | Descripción |
|---|---|---|
id |
Entero | El identificador del anunciante. |
name |
string | El nombre del anunciante. |
Líneas de pedido filtradas
| Campo | Tipo | Descripción |
|---|---|---|
id |
Entero | El identificador del elemento de línea. |
name |
string | El nombre de la línea de pedido. |
Ejemplos
Crear una regla de pago
$ 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"
}
}
}
Leer una sola regla de pago
$ 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
}
}
Leer todas las reglas de pago de un editor
$ 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
},
{
"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
},
{
"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
},
{
"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
}
]
}
}
Actualizar una regla de pago
$ 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
}
}
Eliminar una regla de pago
$ curl -b cookies -X DELETE "https://api.appnexus.com/payment-rule?id=98384"
{
"response": {
"status": "OK"
}
}