Compartir a través de


Servicio de instancia de complemento

Al desarrollar una aplicación para El Marketplace de aplicaciones, se crea una aplicación paraguas y, a continuación, una o más instancias de aplicación específicas que se conectan al flujo de trabajo en diferentes lugares. El servicio de instancia de complemento permite crear y controlar estas instancias. Para obtener información sobre cómo crear y administrar una aplicación paraguas, consulte el Servicio de complementos.

API de REST

Nota:

Hay tres roles de usuario diferentes, dos de los cuales pueden realizar llamadas a este servicio:

  • Proveedores de aplicaciones : miembros que desarrollan aplicaciones en Marketplace de aplicaciones.
  • Suscriptores de aplicaciones : miembros que se suscriben y usan aplicaciones.
  • Desarrolladores no miembros : estos desarrolladores de aplicaciones no están asociados a los miembros y no pueden realizar llamadas a este servicio.

Ciertos roles están restringidos a realizar una o varias llamadas. Los roles que pueden realizar las llamadas se especifican en la columna Descripción de la tabla siguiente.

Http (método) Endpoint Description
POST https://api.appnexus.com/plugin-instance
(JSON de instancia de complemento)
Agregar una aplicación.
- Proveedores de aplicaciones.
- Suscriptores de aplicaciones.
PUT https://api.appnexus.com/plugin-instance?id=PLUGIN_INSTANCE_ID
(JSON de instancia de complemento)
Modificar una aplicación.
- Proveedores de aplicaciones.
GET https://api.appnexus.com/plugin-instance Ver todas las instancias de aplicaciones.
- Proveedores de aplicaciones.
- Suscriptores de aplicaciones (solo verán las instancias a las que están asociados).
GET https://api.appnexus.com/plugin-instance?id=PLUGIN_INSTANCE_ID Ver una instancia de aplicación específica.
- Proveedores de aplicaciones.
- Suscriptores de aplicaciones (solo verán una instancia si están asociados a ella).
DELETE https://api.appnexus.com/plugin-instance?id=PLUGIN_INSTANCE_ID Elimine una instancia de aplicación.
- Proveedores de aplicaciones
DELETE https://api.appnexus.com/plugin?id=PLUGIN_INSTANCE_ID Elimine todas las aplicaciones instaladas por un suscriptor.
DELETE https://api.appnexus.com/plugin-instance?id=PLUGIN_INSTANCE_ID Elimine todas las aplicaciones creadas por un desarrollador.

Campos JSON

Campo Tipo Descripción
description string Información sobre herramientas que se muestra al mantener el puntero sobre la instancia de la aplicación.

Valor predeterminado: null
flavor enumeración Ubicación en la que se integra la aplicación en el flujo de trabajo. Posibles valores:
- "standalone" - La aplicación está disponible para los usuarios de red en la pestaña Aplicaciones principal.
- "creative_action" - La aplicación está disponible para los usuarios de red directamente desde la pantalla de Creative Manager .
- "advertiser_menu" - La aplicación está disponible para los usuarios anunciantes en la pestaña Anunciantes .
- "publisher_menu" - La aplicación está disponible para los usuarios del publicador en la pestaña Publicadores .
- "conversion_pixel" - La aplicación usa un píxel de seguimiento para contar el número de descargas de esta aplicación.

Obligatorio activado: POST
icon_url string Dirección URL del icono que se muestra con la instancia de la aplicación.

Valor predeterminado: null
id Entero Identificador de la instancia de la aplicación.

Valor predeterminado: número generado automáticamente
Obligatorio activado: PUT/DELETE, en la cadena de consulta
iframe_url string Dirección URL que apunta al contenido de la aplicación.

Obligatorio activado: POST
name string Nombre que se muestra con las instancias de la aplicación.

Obligatorio activado: POST
plugin_id Entero Identificador de la aplicación a la que pertenece la instancia.

Obligatorio activado: POST
proxy_url string Dirección URL del proxy.md archivo. Este archivo proxy permite la comunicación entre fotogramas entre y la aplicación. Debe cargarse en una dirección URL en el mismo dominio que la aplicación.

Obligatorio activado: POST

Ejemplos

Agregar una aplicación

$ cat plugin_instance.json
{
   "plugin-instance": {
       "name": "Test instance 1",
       "plugin_id": 45,
       "flavor": "standalone",
       "iframe_url": "https://www.iframe_url.com",
       "name": "Test Instance 1",
       "description": "This is the tooltip for Test Instance 1.",
       "icon_url": "https://www.icon_url.com",
       "proxy_url": "https://www.iframe_url.com/proxy.md"
   }
}
$ curl -b cookies -c cookies -X POST -d @plugin_instance 'https://api.appnexus.com/plugin-instance'
{
    "response": {
        "status": "OK",
        "count": 1,
        "id": 65,
        "start_element": null,
        "num_elements": null,
        "plugin-instance": {
            "id": 65,
            "plugin_id": 45,
            "flavor": "standalone",
            "iframe_url": "https://www.iframe_url.com",
            "js_api_version": "",
            "name": "Test Instance 1",
            "description": "This is the tooltip for Test Instance 1.",
            "icon_url": "https://www.icon_url.com",
            "proxy_url": "https://www.iframe_url.com/proxy.md"
        },
        "dbg_info": {
            ...
        }
    }
}

Modificación de una aplicación

$ cat modify-plugin.json
{
    "plugin-instance": {
       "name": "Napoleon Bonaparte"
    }
}
$ curl -b cookies -c cookies -X PUT -d @modify-plugin.json 'https://sand.api.appnexus.com/plugin-instance?id=146' | json-pp
{
    "response":{
        "status":"OK",
        "count":1,
        "id":"146",
        "start_element":null,
        "num_elements":null,
        "plugin-instance":{
            "id":146,
            "plugin_id":101,
            "flavor":"advertiser_menu",
            "iframe_url":"https:\/\/www.myadgent.com\/logos",
            "js_api_version":"",
            "name":"Napoleon Boneparte",
            "description":null,
            "icon_url":null,
            "proxy_url":"https:\/\/www.myadgent.com\/logos\/video-appnexus-96-96.png"
        },
        "dbg_info":{
            ...
        }
    }
}

Ver todas las aplicaciones

$ curl -b cookies -c cookies 'https://api.appnexus.com/plugin-instance'
{
    "response": {
        "status": "OK",
        "count": 58,
        "start_element": null,
        "num_elements": null,
        "plugin-instances": [
            {
                "id": 2,
                "plugin_id": 1,
                "flavor": "campaign_profile_segment",
                "iframe_url": "https://host.appnexus/segment-targeting/boolean/",
                "js_api_version": "",
                "name": "Advanced Segment Chooser",
                "description": "Allows you to select groups of segments and perform boolean comparison of them.",
                "icon_url": "https://console.appnexus.com/favicon.ico",
                "proxy_url": "https://host.appnexus/proxy_new.md"
            },
            {
                "id": 3,
                "plugin_id": 2,
                "flavor": "standalone",
                "iframe_url": "https://my.evidon.com/tag?i=17",
                "js_api_version": "",
                "name": "Evidon",
                "description": "Evidon InForm enables businesses to comply with privacy laws and self-regulatory programs  across North America and Europe.",
                "icon_url": "https://betteradblog.files.wordpress.com/2011/11/adchoices14x16.png",
                "proxy_url": "https://my.evidon.com/client_plugins/proxy.md"
            },
            {
                "id": 4,
                "plugin_id": 3,
                "flavor": "standalone",
                "iframe_url": "https://agents.proximic.com/appnexus/v1/index.jsp",
                "js_api_version": "",
                "name": "Agents",
                "description": "Add powerful contextual and brand safety data to your media buy.",
                "icon_url": "https://static.proximic.com/img/proximic_appnexus_16x16.png",
                "proxy_url": "https://agents.proximic.com/appnexus/v1/proxy.md"
            },
            {
                "id": 5,
                "plugin_id": 4,
                "flavor": "standalone",
                "iframe_url": "https://audexp.apps.exelate.com",
                "js_api_version": "",
                "name": "Audience eXplorer",
                "description": "eXelate provides data on online purchase intent, household demographics and behavioral propensities that enable digital advertisers to make optimal marketing decisions.",
                "icon_url": "https://www.exelate.com/favicon.ico",
                "proxy_url": "https://audexp.apps.exelate.com/AppNexusPluginProxy"
            },
            {
                "id": 6,
                "plugin_id": 5,
                "flavor": "standalone",
                "iframe_url": "https://e1.targusinfo.com/plugin/e1anx.md",
                "js_api_version": "",
                "name": "Audience Wizard",
                "description": "Create customized audience groups based on TARGUSinfos offline data  including thousands of demographic, branding, product, lifestyle/lifestage and consumer behavior profiles.",
                "icon_url": "https://targusinfo.com/files/images/16x16_T.png",
                "proxy_url": "https://e1.targusinfo.com/plugin/e1anxproxy.md"
            },
            {
                "id": 7,
                "plugin_id": 6,
                "flavor": "standalone",
                "iframe_url": "https://marketplace.brilig.com/brilig-webapp/loginAppNexusOuterFrame.jsp",
                "js_api_version": "",
                "name": "Audience DataMizer",
                "description": "Access recommended audience buys and the ability to shop for and deploy 15 billion data points, encompassing 7,500 audience segments from 200 million profiles.",
                "icon_url": "https://cdn.adnxs.com/applogos/brilig16_16.png",
                "proxy_url": "https://marketplace.brilig.com/brilig-webapp/proxy.md"
            },
            ...
        ],
        "dbg_info": {
            ...
        }
    }
}

Visualización de una aplicación específica

$ curl -b cookies -c cookies 'https://api.appnexus.com/plugin-instance?id=32'
{
    "response": {
        "status": "OK",
        "count": 1,
        "start_element": null,
        "num_elements": null,
        "plugin-instance": {
            "id": 32,
            "plugin_id": 27,
            "flavor": "standalone",
            "iframe_url": "https://apps.eyereturn.com/appnexus-app/",
            "js_api_version": "",
            "name": "eyeReturn",
            "description": "Build a rich media banner featuring multiple products and messages  No experience needed!",
            "icon_url": "https://www.eyereturnmarketing.com/img/logos/erm_app_logo_16x16.png",
            "proxy_url": "https://apps.eyereturn.com/appnexusproxy.md"
        },
        "dbg_info": {
            ...
        }
    }
}

Eliminación de una aplicación

$ curl -b cookies -c cookies -X DELETE 'https://sand.api.appnexus.com/plugin-instance?id=20' | json-pp
{
    "response":{
        "status":"OK",
        "dbg_info":{
            ...
        }
    }
}