API de plataforma digital: servicio de perfiles de anuncios

Una red puede querer crear "perfiles de aprobación de anuncios" para definir qué tipos de marcas y creatividades pueden y no pueden publicarse en las páginas de sus editores. El servicio de perfiles de anuncios le permite crear perfiles de aprobación de anuncios en el nivel de miembro o en el nivel de editor. Para crearlos a nivel de editor, incluya un identificador de editor. Si no se incluye ningún Id. de editor, será un perfil de nivel de red disponible para su uso con todos los editores.

Los perfiles de anuncios constan de varios elementos: miembros, marcas, recursos creativos, idioma, atributos técnicos, categorías y servidores de anuncios. Al crear un perfil publicitario, puedes aprobar o prohibir cada creatividad del sistema individualmente, pero es posible que prefieras ahorrar tiempo aprobando o prohibiendo marcas o miembros enteros.

  • Se debe confiar en un miembro: Si crees que sus anuncios siempre serán aceptables. Por ejemplo, puede "confiar" en Network A para publicar anuncios de calidad, de modo que pueda mitigar la necesidad de auditar cada uno de sus recursos creativos.
  • Se debe confiar en una marca: Si cree que los anuncios de esta marca casi siempre serán aceptables. Sin embargo, siempre tendrá la capacidad de prohibir una creatividad específica, incluso si es parte de una marca "confiable". Si la creatividad específica no está vetada, se publicará de manera predeterminada.
  • Una marca debe ser prohibida: Si crees que los anuncios de esta marca nunca serán aceptables. Seguirás teniendo la posibilidad de aprobar una creatividad específica a la que se le asigne una marca "vetada", a menos que el miembro esté vetado.
  • El perfil predeterminado (en blanco o ID establecido en 0) prohibirá los anuncios no auditados de otros miembros (es decir, cuando la member_id creatividad sea diferente a la member_id del TinyTag).

Nota:

Una marca puede tener una marca matriz, como una forma de reunir marcas por empresa matriz / empresa secundaria. Si un vendedor bloquea o aprueba una marca principal, todas las marcas secundarias sin una configuración *explícita* de aprobación o bloqueo coincidirán con la configuración de la marca principal.

API de REST

Método HTTP Endpoint Description
GET https://api.appnexus.com/ad-profile Ver todos los perfiles de anuncios de un miembro.
GET https://api.appnexus.com/ad-profile?id=AD_PROFILE_ID Ver un perfil de anuncio determinado.
GET https://api.appnexus.com/ad-profile?publisher_id=PUBLISHER_ID Ver todos los perfiles de anuncios de un editor específico.
POST https://api.appnexus.com/ad-profile
ad_profile(JSON)
Agregue un nuevo perfil de anuncios en el nivel de miembro.
POST https://api.appnexus.com/ad-profile?publisher_id=PUBLISHER_ID
ad_profile(JSON)
Agrega un nuevo perfil de anuncio a nivel de editor.
PUT https://api.appnexus.com/ad-profile?id=AD_PROFILE_ID
ad_profile(JSON)
Modificar un perfil de anuncio existente.
DELETE https://api.appnexus.com/ad-profile?id=AD_PROFILE_ID Eliminar un perfil de anuncio existente.
GET https://api.appnexus.com/ad-profile?sort=description Ordena los perfiles de anuncios alfabéticamente por descripción.
GET https://api.appnexus.com/ad-profile?search=text_of_description Busca un perfil de anuncio por su descripción.

Campos JSON

Fields Tipo Descripción
id Entero Id. de Xandr asignado por la API para hacer referencia a esto ad_profile.
Requerido el:PUT, en la cadena de consulta.
state enumeración El estado del perfil de anuncios. Valores posibles: "active" o "inactive".
Valor predeterminado:"active"
member_id Entero El id. de miembro propietario de este ad_profilearchivo .
description string Descripción opcional.
apply_aq_on_psp booleano Si se establece en true, compara las pujas de los partners de demanda Premium del servidor de Prebid con los bloques de marca y categoría del perfil de anuncios o badvbcat los campos de la solicitud de puja. Usa seatbid.bid.adomain el campo para inferir la marca.
reject_unknown_adomain_on_psp booleano Relacionado con apply_aq_on_psp. Cuando se establece en true, rechaza las pujas de los partners de demanda de Prebid Server Premium en las que seatbid.bid.adomain faltan valores o aún no se han asignado a las marcas. También comprueba las pujas de los partners de demanda Premium del servidor de Prebid con respecto a los bloques de marca y categoría en el perfil de anuncios o badvbcat los campos de la solicitud de puja. Usa seatbid.bid.adomain el campo para inferir la marca.
default_member_status enumeración El estado del miembro que se utilizará por defecto cuando no se realice ninguna selección explícita. Posibles valores:
- "case-by-case": las creatividades de este miembro deben pasar todos los filtrados de marcas, idiomas, atributos técnicos, categorías y servidores de anuncios definidos en el perfil de anuncios
- "banned": No se permite que ninguno de los creativos de este miembro sirva.
default_brand_status enumeración El estado de la marca que se usará de forma predeterminada cuando no se realice ninguna selección explícita. Valores posibles: "trusted" o "banned".
default_language_status enumeración El estado del idioma que se usará de forma predeterminada cuando no se realice ninguna selección explícita. Valores posibles: "trusted" o "banned".
default_ad_server_status enumeración El estado del servidor de anuncios que se usará de forma predeterminada cuando no se realice ninguna selección explícita. Valores posibles: "trusted" o "banned".
default_category_status enumeración El estado de categoría que se usará de forma predeterminada cuando no se realice ninguna selección explícita. Valores posibles: "trusted" o "banned".
default_technical_attribute_status enumeración Estado del atributo técnico que se utilizará de forma predeterminada cuando no se realice ninguna selección explícita. Valores posibles: "trusted" o "banned".
default_audit_type enumeración El estado de auditoría que se utilizará de forma predeterminada cuando no se realice ninguna selección explícita. Posibles valores:
- "platform": los creativos deben haberse sometido a la auditoría de la plataforma Xandr.
- "platform_or_self": los creativos deben haber sido auditados por el miembro o haberse sometido a una auditoría de Xandr.
members matriz de objetos Matriz de miembros con su estado. Para obtener más detalles, consulte Miembros a continuación.
brands matriz de objetos Matriz de marcas (marcas principales y marcas secundarias) con su estado. Para obtener más información, consulte Marcas a continuación.
creatives matriz de objetos Variedad de creatividades con su estado. Para obtener más información, consulte Creatividades a continuación.
languages matriz de objetos Matriz de idiomas con su estado. Para obtener más información, consulta Idiomas a continuación.
ad_servers matriz de objetos Matriz de servidores de anuncios con su estado. Para obtener más información, consulta Servidores de anuncios a continuación.
categories matriz de objetos Matriz de categorías con su estado. Para obtener más información, consulte las categorías siguientes.
technical_attributes matriz de objetos Array of technical attributes with their status. Para obtener más detalles, consulte Atributos técnicos a continuación.
frequency_caps matriz de objetos Array of frequency/recency caps. Para obtener más detalles, consulta los límites de frecuencia a continuación.
bidders matriz de objetos Array of bidders. Para obtener más detalles, consulte los licitadores a continuación.
seats matriz de objetos Distribución de asientos. Para obtener más detalles, consulte Asientos a continuación.
total_creative_count Entero Número de creatividades.
approved_creative_count Entero Número de creatividades aprobadas.
banned_creative_count Entero Número de creatividades prohibidas.
creatives_approved_percent double Porcentaje del total de creatividades que se aprueban.
creatives_unreviewed Entero Número de creatividades pendientes de revisión.
brands_unreviewed Entero El número de marcas pendientes de revisión.
exclude_unaudited booleano Si se excluyen o no los creativos que no se han auditado.
exclude_unaudited_direct booleano Si se excluyen o no los creativos que no han sido auditados para anunciantes directos.
audit_type_direct string Especifica el tipo de auditoría necesaria para servir creatividades para anunciantes directos. Valores permitidos:
- "platform": los creativos deben someterse a una auditoría de la plataforma Xandr.
- "platform_or_self": Los creativos deben ser auditados por el miembro o someterse a una auditoría de Xandr.
check_attributes_direct booleano Determina si los creativos con atributos técnicos pueden o no ejecutarse para anunciantes directos.
excluded_landing_page_urls matriz de direcciones URL No disponible. Las prohibiciones de exclusiones competitivas deben efectuarse a través de exclusiones de marcas.
notes string Notas opcionales.
publisher_id Entero El identificador del editor que se va a asociar al perfil de anuncios.
last_modified marca de tiempo Solo lectura. La marca de tiempo de la última modificación de este perfil de anuncio.
require_seller_audit_default booleano Si se requiere o no una auditoría del vendedor.
Valor predeterminado: falso

Servidores de anuncios

Campo Tipo Descripción
id Entero El Id. del servidor de anuncios. Puedes usar el servicio de servidor de anuncios para recuperar los identificadores de servidores de anuncios.
status enumeración Si el servidor de anuncios puede o no ejecutar creatividades en las páginas de sus editores. Valores posibles: "trusted" o "banned".

Licitadores

Campo Tipo Descripción
id Entero Necesario. El identificador del ofertante.
status string Necesario. Si el ofertante puede o no ejecutar creatividades en las páginas de sus editores. Valores permitidos:
- "trusted": Cualquiera de las creatividades de este licitador puede servir.
- "case-by-case": Las creatividades de este ofertante deben pasar todos los filtrados de marca, idioma, atributos técnicos, categorías y servidores de anuncios definidos en el perfil del anuncio.
- "banned": Ninguno de los creativos de este licitador puede servir.
require_audit_type string El tipo de auditoría que necesitará para atender las creatividades de este licitador. Valores permitidos:
- "platform": los recursos creativos deben haberse sometido a una auditoría de la plataforma de Microsoft Advertising.
- "platform_or_self": las creatividades deben haber sido auditadas por el licitador o haberse sometido a una auditoría de Microsoft Advertising.
require_seller_audit_status string Si el postor puede requerir su propia auditoría para las creatividades de un comprador determinado:
- "always": este ofertante siempre puede requerir una auditoría para los recursos creativos de un comprador determinado.
- "never": Este ofertante nunca puede requerir la auditoría de los recursos creativos de un comprador determinado.
- "case-by-case": Restablecer el ad_profile.require_seller_audit_default estado de auditoría requerida.
block_unaudited_creatives booleano Si true, la plataforma bloqueará todas las creatividades no auditadas para que no se ejecuten en las páginas de sus editores.
allow_pending_creatives booleano Si true, la plataforma permitirá que todas las creatividades pendientes de la auditoría se ejecuten en las páginas de sus editores.

Marcas

Campo Tipo Descripción
id Entero El Id. de la marca. Puede usar el Servicio de marca para recuperar identificadores de marca.
status enumeración Si las creatividades de esta marca pueden o no publicarse en las páginas de tus editores. Valores posibles: "trusted" o "banned".

Nota: Si una marca está marcada como apta, los creativos asociados a esta marca servirán incluso si la categoría de la marca está prohibida. Por ejemplo, si marca la marca "1 and 1 Internet (17310)" como apta, servirá incluso si prohíbe su categoría general, "Telecomunicaciones (27)".
parent_brand_id Entero Cuando una marca tiene una marca principal, el valor predeterminado se establece en null.

Categories

Campo Tipo Descripción
id Entero El identificador de la categoría. Puede usar el Servicio de categorías para recuperar los identificadores de categoría.
status enumeración Si las creatividades de esta categoría pueden o no publicarse en las páginas de tus editores. Valores posibles: "trusted" o "banned".

Recursos creativos

Campo Tipo Descripción
id Entero El Id. del creativo. Puede utilizar el servicio creativo para recuperar identificadores de creatividad.
approved booleano Si true, la creatividad puede publicarse en las páginas de sus editores.

Límites de frecuencia

Campo Tipo Descripción
id Entero Solo lectura. El identificador de la definición del límite de frecuencia.
member_id Entero Solo lectura. El identificador del miembro propietario del perfil de anuncios.
max_session_imps Entero El número máximo de impresiones por persona y por sesión para los creativos con el o categoriesespecificado technical_attributes . Si se establece, este valor debe estar entre 0 y 255.
max_day_imps Entero El número máximo de impresiones por persona y día para los creativos con el o categoriesespecificado technical_attributes . Si se establece, este valor debe estar entre 0 y 255.
min_minutes_per_imp Entero El número mínimo de minutos entre impresiones por usuario para los creativos con el o categoriesespecificado technical_attributes .
cap_users_without_cookie booleano Si true, a los usuarios sin cookies nunca se les mostrarán creatividades con el especificado technical_attributes o categories. Serán tratados como si hubieran alcanzado el límite de frecuencia.
Si false, no hay límite de frecuencia para los usuarios sin technical_attributescategories cookies. Será posible que vean un número ilimitado de creatividades con el o categories.technical_attributes
technical_attributes matriz Los identificadores de los atributos técnicos que está limitando. Puede utilizar el Servicio de atributos técnicos para obtener una lista completa de atributos técnicos. Los technical_attributes campos y categories tienen una relación O.
categories matriz Los identificadores de las categorías que va a limitar. Puede usar el Servicio de categorías para obtener una lista completa de categorías. Los technical_attributes campos y categories tienen una relación O.

Idiomas

Campo Tipo Descripción
id Entero El identificador del idioma. Puede usar el Servicio de idiomas para recuperar identificadores de idioma.
status enumeración Si las creatividades de este idioma pueden o no ejecutar creatividades en las páginas de tus editores. Valores posibles: "trusted" o "banned".

Members

Campo Tipo Descripción
id Entero El identificador del miembro.
status enumeración Si el miembro puede o no ejecutar creatividades en las páginas de sus editores. Valores permitidos:
- "trusted": Cualquiera de los recursos creativos de este miembro puede servir.
- "case-by-case": los creativos de este miembro deben pasar todos los filtros de marca, idioma, atributos técnicos, categorías y servidores de anuncios definidos en el perfil de anuncios.
- "banned": No se permite que ninguno de los creativos de este miembro sirva.
audit_type enumeración El tipo de auditoría que necesitará para atender a los creativos de este miembro. Valores permitidos:
- "platform": los recursos creativos deben haberse sometido a una auditoría de la plataforma de Microsoft Advertising.
- "platform_or_self": las creatividades deben haber sido auditadas por el miembro o haberse sometido a una auditoría de Microsoft Advertising.
exclude_unaudited booleano Si true, las creatividades no auditadas se excluyen de este miembro.
require_seller_audit_status enumeración Si el miembro puede requerir su propia auditoría para las creatividades de un comprador determinado:
- "always": este miembro siempre puede requerir una auditoría para los recursos creativos de un comprador determinado.
- "never": este miembro nunca puede requerir una auditoría para las creatividades de un comprador determinado.
- "case-by-case": Restablecer el ad_profile.require_seller_audit_default estado de auditoría requerida.

Sugerencia

La combinación de los campos Miembro statusaudit_typey exclude_unaudited determina el nivel de confianza del comprador que se muestra en el perfil de calidad de anuncios de red.

status audit_type exclude_unaudited Nivel de confianza en la interfaz de usuario
banned N/D N/D Prohibido
case-by-case platform true Estándar
case-by-case platform_or_self true Mediano
trusted platform true Alto
trusted platform false Maximum

Asientos

Campo Tipo Descripción
bidder_id Entero Necesario. El identificador del licitador debajo de un asiento.
seat_code string Necesario. Código de asiento registrado para el postor.
status string Necesario. Si el ofertante puede o no ejecutar creatividades en las páginas de sus editores. Valores permitidos:
- "trusted": Cualquiera de las creatividades de este licitador puede servir.
- "case-by-case": Las creatividades de este ofertante deben pasar todos los filtrados de marca, idioma, atributos técnicos, categorías y servidores de anuncios definidos en el perfil del anuncio.
- "banned": Ninguno de los creativos de este licitador puede servir.
require_audit_type string El tipo de auditoría que necesitará para atender las creatividades de este licitador. Valores permitidos:
- "platform": los recursos creativos deben haberse sometido a una auditoría de la plataforma de Microsoft Advertising.
- "platform_or_self": las creatividades deben haber sido auditadas por el licitador o haberse sometido a una auditoría de Microsoft Advertising.
require_seller_audit_status string Si el postor puede requerir su propia auditoría para las creatividades de un comprador determinado:
- "always": este ofertante siempre puede requerir una auditoría para los recursos creativos de un comprador determinado.
- "never": Este ofertante nunca puede requerir la auditoría de los recursos creativos de un comprador determinado.
- "case-by-case": Restablecer el ad_profile.require_seller_audit_default estado de auditoría requerida.
block_unaudited_creatives booleano Si true, la plataforma bloqueará todas las creatividades no auditadas para que no se ejecuten en las páginas de sus editores.
allow_pending_creatives booleano Si true, la plataforma permitirá que todas las creatividades pendientes de la auditoría se ejecuten en las páginas de sus editores.

Atributos técnicos

Campo Tipo Descripción
id Entero El identificador del atributo técnico. Puede utilizar el servicio de atributos técnicos para recuperar los identificadores de atributos técnicos.
status enumeración Si las creatividades con este atributo técnico pueden o no publicarse en las páginas de tus editores. Valores posibles: "trusted" o "banned".

Ejemplos

Advertencia

Anexar en PUT

Sobrescribirá los datos existentes con el contenido de la solicitud a menos que agregue los parámetros append=true de cadena de PUT consulta a la solicitud. Para obtener más información, consulta Semántica de API y el ejemplo Actualizar un perfil de anuncio existente a continuación.

Crear un nuevo perfil de anuncios

Este es un perfil bastante complejo. A continuación, hemos utilizado el comando para generar un ejemplo de cat archivo JSON de perfil de anuncio.

$ cat ad_profile
{
    "ad-profile": {
        "description": "Network Level ad profile",
        "member_id": 326,
        "brands": [
            {
                "id": "168",
                "status": "banned"
            },
            {
                "id": "255",
                "status": "banned"
            },
            {
                "id": "1072",
                "status": "trusted"
            },
            {
                "id": "1090",
                "status": "trusted"
            }
        ],
        "creatives": [
            {
                "id": "5",
                "approved": true
            }
        ],
        
        "bidders": [
            {
                "id": 2,
                "status": "trusted",
                "require_audit_type": "platform",
                "require_seller_audit_status": "always"
            },
            {
                "id": 5,
                "status": "banned"
            },
            {
                "id": 10,
                "status": "case-by-case",
                "require_audit_type": "platform_or_self",
                "require_seller_audit_status": "never"
            }
        ],
        "seats": [
          {
                "bidder_id": 2,
                "seat_code": "ABC123",
                "status": "trusted",
                "require_audit_type": "platform",
                "require_seller_audit_status": "always"
          },
          {
                "bidder_id": 5,
                "seat_code": "XYZ789",
                "status": "banned"
          }
        ],

        "notes": "This is a great ad profile",
        "default_language_status": "banned",
        "default_ad_server_status": "trusted",
        "default_category_status": "trusted",
        "default_technical_attribute_status": "trusted",
        "excluded_landing_page_urls": ["https://www.netflix.com","https://www.blockbuster.com"],
        "languages": [
            {
                "id": 1,
                "status": "trusted"
            }
        ],
        "ad_servers": null,
        "categories": [
            {
                "id": 41,
                "status": "banned"
            },
            {
                "id": 43,
                "status": "trusted"
            }
        ]
    }
}

Actualizar un perfil de anuncios existente

Dado el JSON del perfil de anuncio en el primer ejemplo, supongamos que quieres actualizar la categories matriz para incluir otro elemento. En un caso de uso del mundo real, puede haber 47 categorías en la matriz. La semántica de PUT significa que para agregar otra categoría a la matriz, deberá pasar las 47 categorías existentes más la nueva.

Puede evitar este trabajo adicional si agrega los parámetros append=true de cadena de consulta a la solicitud, como se muestra en el ejemplo siguiente. Por motivos de compatibilidad con versiones anteriores, los parámetros append_only=true también funcionarán.

$ cat ad-profile-update.json
{
  "ad-profiles":
  [
    {
      "id": 984276,
      "categories" : [
        {
          "id" : 42,
          "status" : "banned"
        }
      ]
    }
  ]
}
$ curl -b cookies -X PUT -d '@/tmp/ad-profile-update.json' \
'https://api.appnexus.com/ad-profile?id=984276&member_id=1282&append=true'
{
   "response" : {
      "id" : 984276,
      "ad-profile" : {
         "id" : 984276,
         "description" : "Rich's Crazy Reseller - Network Ad Profile",
         "categories" : [
            {
               "id" : 41,
               "status" : "banned"
            },
            {
               "id" : 42,
               "status" : "banned"
            },
            {
               "id" : 43,
               "status" : "trusted"
            }
         ],
         // many other fields...
         "default_category_status" : "trusted"
      },
      "status" : "OK",
      "count" : 1,
      "start_element" : 0,
      "num_elements" : 100,
   }
}

Agregar un perfil de anuncio a un miembro

$ curl -b cookies -c cookies -X POST -d @ad_profile  "https://api.appnexus.com/ad-profile"
{
    "response": {
        "status": "OK",
        "id": "1317"
    }
}

Ver un perfil de anuncios

$ curl -b cookies -c cookies "https://api.appnexus.com/ad-profile?id=1317"
{
  "response": {
    "status": "OK",
    "ad-profile": {
      "id": 1317,
      "state": "active",
      "description": "Network Level ad profile",
      "member_id": 326,
      "default_brand_status": "trusted",
      "members": null,
      "brands": [
        {
          "id": "168",
          "status": "banned"
        },
        {
          "id": "255",
          "status": "banned"
        },
        {
          "id": "1072",
          "status": "trusted"
        },
        {
          "id": "1090",
          "status": "trusted"
        }
      ],
      "creatives": [
        {
          "id": "5",
          "approved": true
        }
      ],
        
    "bidders": [
        {
          "id": 2,
          "status": "trusted",
          "block_unaudited_creatives": false,
          "allow_pending_creatives": false,
          "require_audit_type": "platform",
          "require_seller_audit_status": "always"
        },
        {
          "id": 5,
          "status": "banned",
          "block_unaudited_creatives": null,
          "allow_pending_creatives": null,
          "require_audit_type": null,
          "require_seller_audit_status": null
        }
      ],
      "seats": [
        {
          "seat_code": "ABC123",
          "bidder_id": 2,
          "status": "trusted",
          "block_unaudited_creatives": false,
          "allow_pending_creatives": false,
          "require_audit_type": "platform",
          "require_seller_audit_status": "always"
        },
        {
          "seat_code": "XYZ789",
          "bidder_id": 5,
          "status": "banned",
          "block_unaudited_creatives": null,
          "allow_pending_creatives": null,
          "require_audit_type": null,
          "require_seller_audit_status": null
        }
      ]

      "total_creative_count": 8369,
      "approved_creative_count": 1,
      "banned_creative_count": 8368,
      "creatives_approved_percent": 0.011948858883977,
      "creatives_unreviewed": 8367,
      "brands_unreviewed": null,
      "exclude_unaudited": true,
      "exclude_unaudited_direct": false,
      "notes": "This is a great ad profile.",
      "publisher_id": null,
      "last_modified": "2010-07-23 16:15:49",
      "default_language_status": "banned",
      "default_ad_server_status": "trusted",
      "default_category_status": "trusted",
      "excluded_landing_page_urls": ["https://www.netflix.com","https://www.blockbuster.com"],
      "default_technical_attribute_status": "trusted",
      "languages": [
        {
          "id": 1,
          "status": "trusted"
        }
      ],
      "ad_servers": null,
      "categories": [
        {
          "id": 41,
          "status": "banned"
        },
        {
          "id": 43,
          "status": "trusted"
        }
      ],
      "technical_attributes": null
    }
  }
}

Ejemplos creativos de limitación de frecuencia de atributos

Agregar una regla de límite de frecuencia a un perfil de anuncio

El {{"frequency_caps"}} campo estará {{null}} al principio:

$ curl -b cookies -c cookies -X GET "https://sand.api.appnexus.com/ad-profile?id=199943"
{
  "response": {
    "status": "OK",
    "ad-profile": {
      "id": 199943,
      "state": "active",
      "description": null,
      "member_id": 941,
      ...
      "frequency_caps": null
    }
}

Agregar una regla de límite de frecuencia

$ cat add_freq_cap_rule.json
{
   "ad-profile": {
      "id": 199943,
      "frequency_caps": [
        {
          "max_day_imps": 5,
          "min_minutes_per_imp": 120,
          "technical_attributes": [ {"id":4},{"id":6} ],
          "categories": [ {"id":59},{"id":37} ]
        }
      ]
   }
}
$ curl -b cookies -c cookies -X PUT --data-binary @add_freq_cap_rule.json "https://sand.api.appnexus.com/ad-profile?id=199943"
{
  "response": {
    "status": "OK",
    "id": "199943"
  }
}

El perfil de anuncios ahora tendrá la regla del límite de frecuencia

$ curl -b cookies -c cookies -X GET "https://sand.api.appnexus.com/ad-profile?id=199943"
{
  "response": {
    "status": "OK",
    "ad-profile": {
      "id": 199943,
      "state": "active",
      "description": null,
      "member_id": 941,
      ...
      "frequency_caps": [
        {
          "id": 64,
          "max_session_imps": null,
          "max_day_imps": 5,
          "min_minutes_per_imp": 120,
          "member_id": 941,
          "technical_attributes": [
            {
              "id": 4,
              "name": "Video"
            },
            {
              "id": 6,
              "name": "Expandable"
            }
          ],
          "categories": [
            {
              "id": 37,
              "name": "Politics"
            },
            {
              "id": 59,
              "name": "Get Rich Quick"
            }
          ]
        }
      ]
      ...

Modificar una regla de límite de frecuencia

Use el {{PUT}} comando en el {{ad-profile}} servicio. El identificador del límite de frecuencia debe especificarse en el JSON de actualización. Si no se especifica el id. del límite de frecuencia, se eliminará la regla existente y se creará una nueva.

{code}
$ cat update_freq_cap_rule.json
{
   "ad-profile": {
      "id": 199943,
      "frequency_caps": [
        {
          "id": 64,
          "technical_attributes": [ {"id":4} ],
          "categories": [ ],
          "max_day_imps": 20
        }
      ]
   }
}
$ curl -b cookies -c cookies -X PUT --data-binary @update_freq_cap_rule.json "https://sand.api.appnexus.com/ad-profile?id=199943"
{
  "response": {
    "status": "OK",
    "id": "199943"
  }
}
{code}

Compruebe el perfil de anuncios para ver la regla actualizada

$ curl -b cookies -c cookies -X GET "https://sand.api.appnexus.com/ad-profile?id=199943"
{
  "response": {
    "status": "OK",
    "ad-profile": {
      "id": 199943,
      "state": "active",
      "description": null,
      "member_id": 941,
      ...
      "frequency_caps": [
        {
          "id": 64,
          "max_session_imps": null,
          "max_day_imps": 20,
          "min_minutes_per_imp": 120,
          "member_id": 941,
          "technical_attributes": [
            {
              "id": 4,
              "name": "Video"
            }
          ],
          "categories": null
        }
      ]
      ...