API de eventos de la aplicación

Ya no recomendamos la API de eventos de la aplicación para las nuevas integraciones. La API de conversiones ahora admite eventos de la aplicación, web y offline, por lo que recomendamos que los anunciantes usen la API de conversiones en lugar de la API de eventos de la aplicación. Los usuarios existentes de la API de eventos de la aplicación pueden seguir usándola, pero dejaremos de desarrollar esta API. Las innovaciones futuras se desarrollarán en la API de conversiones. Obtén más información sobre la API de conversiones para eventos de la aplicación.


Los eventos de la aplicación te permiten realizar un seguimiento de las acciones que se producen en tu aplicación para móviles o página web, como las descargas de la aplicación y los eventos de compra. Al realizar un seguimiento de estos eventos, puedes medir el rendimiento del anuncio y crear audiencias para la segmentación de anuncios.

Para obtener información sobre el seguimiento de los eventos de la aplicación en el caso de los mensajes empresariales, consulta API de eventos de la aplicación para mensajes empresariales en nuestra documentación de la plataforma de Messenger.

Funcionamiento

Hay tres tipos de eventos de la aplicación:

  • Eventos registrados automáticamente: el SDK de Facebook registra automáticamente las sesiones y las descargas de la aplicación, así como las compras en la aplicación.
  • Eventos estándar: eventos populares que Facebook ha creado para ti.
  • Eventos personalizados: eventos que creas que son específicos para tu aplicación.

Un evento de la aplicación consta de tres partes:

  1. name: cadena necesaria que describe el evento. Cuando el evento de la aplicación se envía a Analytics, el nombre correspondiente aparece en el registro de eventos.
  2. valueToSum: valor opcional que Analytics añade a otros valores Value to Sum de los eventos de la aplicación con el mismo nombre.
  3. parameters: valores opcionales que incluye el evento de la aplicación.

Puedes utilizar hasta 1000 nombres de evento distintos. Nota: No se registrarán nuevos tipos de eventos una vez que se alcance este límite. En el caso de que lo superes, es posible que veas el error 100 Invalid parameter cuando te registres. Sin embargo, es posible desactivar los eventos obsoletos. Obtén más información sobre los límites de los eventos en las preguntas frecuentes.

Antes de empezar

Necesitarás lo siguiente:

  • El identificador del anunciante, del anunciante de un dispositivo Android o del anunciante de un dispositivo Apple (IDFA).
  • Identificador de acceso a la aplicación para que Facebook lo autentique. No almacenes el identificador de acceso a la aplicación en el cliente.

Descargas de la aplicación

Envía una solicitud POST desde el servidor al extremo /{app-id}/activities con los parámetros application_tracking_enabled y advertiser_tracking_enabled:

Se ha aplicado formato para mejorar la legibilidad.
curl -i -X POST "https://graph.facebook.com/{app-id}/activities
   ?event=MOBILE_APP_INSTALL
   &application_tracking_enabled=0      
   &advertiser_tracking_enabled=0       
   &advertiser_id={advertiser-tracking-id}
   &{app-access-token}"

Cuando esta operación se completa correctamente, la aplicación recibe la respuesta siguiente:

{
  "success": true
}

Advertencias

  • Solo debes informar de una descarga por usuario. Elimina los duplicados de los identificadores en los niveles de identificador y usuario, si es posible.

Visita nuestra guía de referencia de las actividades de la aplicación para obtener una lista de los parámetros disponibles.

Activación del seguimiento de anuncios

El campo advertiser_tracking_enabled especifica si una persona ha activado el seguimiento de publicidad en su dispositivo. Se establece en 0 si está desactivado o en 1 si está activado. Debes recuperar esta información y devolverla a Facebook a fin de determinar si el seguimiento de anuncios se puede usar para la optimización o las conversiones. Meta utilizará los datos de eventos (de socios sobre actividades de usuarios fuera de Meta) de acuerdo con su Política de datos; por ejemplo, para los informes de anuncios y la detección de fraudes, y para crear y mejorar nuestros productos (incluidos nuestros productos de entrega de anuncios), pero restringirá el uso de datos sobre ese usuario para personalizar los anuncios que recibe. En los dispositivos que ejecuten versiones anteriores a iOS 6, este parámetro se debe establecer de forma predeterminada en 1.

Consulta Apple, Referencia de AdSupport para obtener información sobre cómo recuperar el estado de seguimiento de un usuario.

En el fragmento de código siguiente se muestra cómo recuperar el valor de la marca con el seguimiento activado.

Puedes obtener la configuración actual de la marca con el seguimiento activado de la propiedad Settings.shared.isAdvertiserTrackingEnabled.

print("isAdvertiserTrackingEnabled: \(Settings.shared.isAdvertiserTrackingEnabled)")

Desactivación del seguimiento de anuncios

Cualquier aplicación tiene la opción de incluir una opción de configuración para que los usuarios puedan desactivar el seguimiento de anuncios en la aplicación. Facebook solicita a los socios que incluyan esta opción en sus SDK y que notifiquen a Facebook la elección de los usuarios junto con el evento de descarga o conversión. Asimismo, la plataforma usa el evento de descarga o conversión para generar informes de anuncios, pero evita que se use en la optimización de los anuncios. La configuración del usuario debe mantenerse entre inicios de la aplicación.

Eventos de conversión

Envía una solicitud POST al extremo /{app-id}/activities con el valor de event establecido en CUSTOM_APP_EVENTS y establece advertiser_tracking_enabled para cada evento individual. Se requiere el parámetro advertiser_id o attribution.

Se ha aplicado formato para mejorar la legibilidad.
curl -i -X POST "https://graph.facebook.com/{app-id}/activities
   ?event=CUSTOM_APP_EVENTS" 
   &advertiser_id={advertiser-tracking-id}
   &advertiser_tracking_enabled=1 
   &application_tracking_enabled=1
   &custom_events=[
      {"_eventName":"fb_mobile_purchase",
       "event_id":"123456",
       "fb_content":"[
            {"id": "1234", "quantity": 2,}, 
            {"id": "5678", "quantity": 1,}
        ]",
       "fb_content_type":"product",
       "_valueToSum":21.97,
       "fb_currency":"GBP",
      }
    ]
   &{app-access-token}" 

Cuando esta operación se completa correctamente, la aplicación recibe la respuesta siguiente:

{
  "success": true
}

Atribución

El extremo attribution devuelve descargas y conversiones basadas en los clics realizados en un anuncio en un plazo de 28 días. El administrador de anuncios utiliza un modelo de atribución de 1 día tras la visualización y 28 días después de hacer clic, y los insights se muestran según la hora del clic o la impresión, en lugar de la hora de la descarga o la conversión. Es importante tener este factor en cuenta al comparar tus informes con los del administrador de anuncios de Facebook. Además de las solicitudes de eventos de la aplicación de clics en el anuncio estándar, debes tener en cuenta las siguientes situaciones:

  • Solicitudes de atribución de visualización: al configurar consider_views=TRUE, se devuelven datos de atribución para las descargas que se realizaron en un plazo de un día después de la impresión del anuncio, siempre que la cuenta del Centro de cuentas no haya hecho clic en el anuncio en 28 días. La respuesta devuelta será is_view_through=TRUE y view_time reemplazará a click_time. El resto de atribuciones son las mismas que con los datos de atribución de clics en el anuncio.

  • Solicitudes de varias campañas: los anunciantes pueden realizar un seguimiento del rendimiento de todos los anuncios que han generado un evento de la aplicación. Facebook envía solicitudes para eventos de las campañas publicitarias siempre que el objetivo de la campaña no esté establecido en la descarga de la aplicación para móviles o la interacción con dicha aplicación. Esta información solo se muestra si el anunciante ha añadido la aplicación al campo “Seguimiento de eventos de la aplicación para móviles” de su anuncio.

  • Caso de usuario: si el cliente quiere realizar un seguimiento de las descargas que ha generado un anuncio de una publicación de la página o los clics en un anuncio del sitio web que dirige a los usuarios a un sitio para móviles, puede hacerlo desde el administrador de anuncios y Facebook solicitará las descargas de la aplicación correspondientes.

  • Solicitudes en todos los dispositivos: los anunciantes con aplicaciones en varias plataformas pueden ver datos de las descargas de la aplicación que tienen lugar en todas estas plataformas como resultado de sus anuncios.

  • Caso de usuario: un usuario hace clic en un anuncio sobre una aplicación en un iPhone y descarga dicha aplicación en el iPad. Podemos atribuir la descarga realizada en el iPad al anuncio para iPhone, independientemente de la segmentación del anuncio.

Coincidencias avanzadas

Las coincidencias avanzadas te permiten enviar datos de los clientes a Facebook para que podamos determinar de forma más precisa las cuentas del Centro de cuentas que realizaron alguna acción en respuesta a tu anuncio. Con estos datos, Facebook puede establecer coincidencias de los eventos de conversión con tus clientes a fin de optimizar los anuncios y crear audiencias de remarketing mayores.

Envía una solicitud POST al extremo /{app-id}/activities con el parámetro ud establecido en un parámetro que permita hacer un seguimiento de tu cliente, como su correo electrónico o su número de teléfono. Debe aplicarse hash a todos los datos del cliente, ya que, de lo contrario, Facebook los ignorará. Asegúrate de establecer advertiser_tracking_enabled para cada evento individual.

Se ha aplicado formato para mejorar la legibilidad.
curl -i -X POST "https://graph.facebook.com/{app-id}/activities
   ?event=CUSTOM_APP_EVENTS
   &advertiser_id={advertiser-tracking-id}
   &advertiser_tracking_enabled=1 
   &application_tracking_enabled=1
   &custom_events=[
      {"_eventName":"fb_mobile_purchase",
      "event_id":"123456",
       "fb_content":"[
            {"id": "1234", "quantity": 2,}, 
            {"id": "5678", "quantity": 1,}
        ]",
       "fb_content_type":"product",
       "_valueToSum":21.97,
       "fb_currency":"GBP",
      }
    ]
   &ud[em]={sha256-hashed-email}
   &{app-access-token}"

Cuando esta operación se completa correctamente, la aplicación recibe la respuesta siguiente:

{
  "success": true
}

Todos los datos del usuario deben tener aplicado el hash SHA256 antes de que los envíes a Facebook. Facebook ignorará los datos que no tengan el hash aplicado.

Eliminación de duplicados

Para los eventos de la aplicación, aplicamos la misma funcionalidad de eliminación de duplicados que existe para los eventos web. La lógica aprovecha la eliminación de duplicados basada en los campos event_id y event_name. El parámetro event_id es un identificador que puede distinguir de forma unívoca entre eventos parecidos. Los identificadores de eventos incorrectos pueden causar la eliminación errónea de duplicados de la conversión, lo que tiene un impacto en los informes de conversiones y el rendimiento de las campañas.

Información ampliada del dispositivo

Envía información del dispositivo, como el ancho y el alto de la pantalla, en tu llamada al evento de la aplicación mediante /{app-id}/activities?extinfo. Los valores se separan por comas y deben estar ordenados tal como aparecen indexados en la guía de referencia de /application/activites. Al usar extinfo, se requieren todos los valores.

  • version debe ser a2 para Android.
  • version debe ser i2 para iOS.

Referencia

Obtención de cookies para móviles

Te recomendamos que asocies los eventos de la aplicación con un valor de advertiser_id. Sin embargo, en el caso de los dispositivos Android e iOS (anteriores a la versión iOS 6), también puedes utilizar el parámetro attribution establecido en la cookie para móviles del dispositivo.

Nota: Las cookies para móviles no se derivan de los atributos de ningún usuario o dispositivo. Estas cookies no son persistentes y se han diseñado para actualizarse con frecuencia. No uses las cookies para móviles para volver a segmentar anuncios.

Android

Una cookie es una cadena alfanumérica aleatoria de 22 caracteres.

Obtén el identificador de atribución de Facebook mediante ContentProvider:

public static final Uri ATTRIBUTION_ID_CONTENT_URI = Uri.parse("content://com.facebook.katana.provider.AttributionIdProvider");

public static final String ATTRIBUTION_ID_COLUMN_NAME = "aid";

public static String getAttributionId(ContentResolver contentResolver) {
        String [] projection = {ATTRIBUTION_ID_COLUMN_NAME};
        Cursor c = contentResolver.query(ATTRIBUTION_ID_CONTENT_URI, projection, null, null, null);
        if (c == null || !c.moveToFirst()) {
            return null;
        }
        String attributionId = c.getString(c.getColumnIndex(ATTRIBUTION_ID_COLUMN_NAME));
        c.close();
        return attributionId;
    }

También debes obtener el identificador de publicidad de tu aplicación de Android.

iOS

Las aplicaciones de iOS de Facebook crean la cookie para móviles mediante CFUUIDCreateString. Esta es una representación de la cadena UUID de 128 bits.

Obtén el identificador de la cookie y el IDFA, y envíalos a Facebook como identificador:

ASIdentifierManager *manager = [ASIdentifierManager sharedManager];
NSString *advertiserID = [[manager advertisingIdentifier] UUIDString];

if (advertiserID) {
  // do stuff
}

Encabezado HTTP X-Forwarded-For

Si las solicitudes POST se realizan desde un sitio central, como un servidor o un proxy, es decir, con una llamada de servidor a servidor, se requiere el encabezado HTTP X-Forwarded-For para garantizar que la información de la ubicación y del dispositivo es precisa. envía la dirección IP del dispositivo, en formato IPv4 o IPv6, a través del parámetro del encabezado HTTP X-Forwarded-For de cada una de las solicitudes de eventos de la aplicación que envíes. De este modo, podemos emparejar el valor de advertiser_id con la dirección IP correcta, que luego podemos utilizar en nuestra plataforma.

Ejemplo de IPv6

curl ...
  -H "X-Forwarded-For: fd45:f238:3b40:23b1:ffff:ffff:ffff:abcd" \
  https://graph.facebook.com/<APP_ID>/activities/

Ejemplo de IPv4

curl ...
  -H "X-Forwarded-For: 192.168.0.99" \
  https://graph.facebook.com/<APP_ID>/activities

Pruebas

  1. Ve al Administrador de eventos.
  2. Haz clic en el icono “Orígenes de datos”, situado en el lado izquierdo de la página.
  3. Selecciona el nombre y el identificador de tus datos.
  4. Haz clic en “Probar eventos” y selecciona el canal como “Aplicación”.
  5. Envía una solicitud a la API de eventos de la aplicación con la herramienta de la API Graph.
  6. Las interacciones aparecerán pronto en la pestaña “Probar eventos”.

Discrepancias

En caso de que un cliente compare los informes de un socio de evaluación de la actividad en móviles con los de Facebook y detecte discrepancias, comprueba lo siguiente:

Si Facebook informa de menos descargas que el MMP:

  • ¿Está correctamente integrado el SDK de Facebook?
  • ¿El cliente usa un identificador de la aplicación incorrecto?

Si Facebook informa de más descargas que el MMP:

  • ¿Los intervalos de atribución son los mismos? Normalmente, Facebook cuenta con una atribución mayor que la mayoría de socios de evaluación de la actividad en móviles.
  • ¿Está correctamente integrado el SDK del MMP?
  • ¿El cliente está usando un identificador de la aplicación incorrecto?
  • ¿Se producen discrepancias únicamente con iOS7? ¿El MMP pasa correctamente a Facebook el identificador de publicidad de Apple (IDFA) que recibe del dispositivo?

Referencia

Información ampliada de las actividades de la aplicación

Visita la guía de referencia /application/activites para obtener más detalles sobre la información ampliada de la aplicación.

Parámetros de datos del usuario

Descarga este archivo CSV

para obtener ejemplos de datos cifrados con hash y normalizados correctamente para los parámetros siguientes.



Descargar (Haz clic con el botón derecho > Guardar enlace como)

Parámetros de datos de información del cliente

Datos Parámetro Ejemplo Instrucciones de formato

Ciudad

ct

menlopark

Ciudad en minúsculas y sin espacios

País

country

US

Código de país de dos letras en formato ISO 3166-1 alfa-2

Fecha de nacimiento

db

19911226

Fecha de nacimiento: año, mes, día. Por ejemplo, 19971226 para 26 de diciembre de 1997

Correo electrónico

em

jgarcia@example.com

Dirección de correo electrónico en minúsculas del usuario

Nombre

fn

jose

Nombre en minúsculas

Sexo

ge

m

f o m; si se desconoce, se deja el campo en blanco.

Apellidos

ln

garcía

Apellidos en minúsculas

Teléfono

ph

16505551212

Número de teléfono; solo dígitos con el código de país, el código de área y el número

Estado o provincia

st

ca

Código de estado o provincia de dos letras

Código postal

zp

94035

Código postal de cinco dígitos

Nombres de eventos estándar

Event Name Event Parameters _valueToSum

AdClick

fb_ad_type

AdImpression

fb_ad_type

With App Ads, revenue of ads from a third-party platform appears on-screen within your app.

Contact

CustomizeProduct

Donate

fb_mobile_achievement_unlocked

fb_description

fb_mobile_activate_app *

fb_mobile_add_payment_info

fb_success

fb_mobile_add_to_cart

fb_content_type, fb_content_id and fb_currency

Price of item added

fb_mobile_add_to_wishlist

fb_content_type, fb_content_id and fb_currency

Price of item added

fb_mobile_complete_registration

fb_registration_method

fb_mobile_content_view

fb_content_type, fb_content_id and fb_currency

Price of item viewed (if applicable)

fb_mobile_initiated_checkout

fb_content_type, fb_content_id, fb_num_items, fb_payment_info_available and fb_currency

Total price of items in cart

fb_mobile_level_achieved

fb_level

fb_mobile_purchase

fb_num_items, fb_content_type, fb_content_id and fb_currency

Purchase price

fb_mobile_rate

fb_content_type, fb_content_id and fb_max_rating_value

Rating given

fb_mobile_search

fb_content_type, fb_search_string and fb_success

fb_mobile_spent_credits

fb_content_type and fb_content_id

Total value of credits spent

fb_mobile_tutorial_completion

fb_success and fb_content_id

FindLocation

Schedule

StartTrial

fb_order_id and fb_currency

Price of subscription

SubmitApplication

Subscribe

fb_order_id and fb_currency

Price of subscription

*Use fb_mobile_activate_app event in addition to install reporting to exclude users from seeing ads for this app. Do not use this event if you have automatic event logging enabled.

Parámetros del evento estándar

Nombre del parámetro del evento Valor Descripción

_logTime

Entero

Parámetro recomendado para especificar la hora del evento (en marca de tiempo UNIX).

_valueToSum

Flotante

Valor numérico del evento individual que se mostrará en los informes. Consulta la tabla anterior para conocer los eventos recomendados en los que puedes incluirlo.

fb_content_id

Cadena

Número de artículo internacional (EAN), cuando corresponda, u otro identificador del producto o contenido. Para varios identificadores de producto, usa el formato "[\"1234\",\"5678\"]".

fb_content

Cadena

Lista de objetos JSON que contiene el número internacional de artículo (EAN), cuando corresponde, u otros identificadores de producto o contenido, así como las cantidades y los precios de los productos. Obligatorio:id, quantity. P. ej., "[{\"id\": \"1234\", \"quantity\": 2,}, {\"id\": \"5678\", \"quantity\": 1,}]".

fb_content_type

Cadena

El valor de product o product_group.

fb_currency

Cadena

Código ISO 4217, por ejemplo, “EUR”, “USD” o “JPY”. Es obligatorio si se pasa _valueToSum como precio o importe de compra.

fb_description

Cadena

Una descripción de cadena

fb_level

Cadena

Nivel de un juego.

fb_max_rating_value

Entero

Límite superior de una escala de calificación, por ejemplo, “5” en una escala de cinco estrellas.

fb_num_items

Entero

Número de artículos.

fb_payment_info_available

Booleano

1 para "sí"; 0 para "no".

fb_registration_method

Cadena

Facebook, correo electrónico, Twitter, etcétera

fb_search_string

Cadena

La cadena de texto que se buscó.

fb_success

Booleano

1 para "sí"; 0 para "no".