Transmisión de raw data de la Push API

Premium

En resumen: Transmite eventos de atribución de raw data a tus endpoints del lado del servidor.

6970_Push_API_image.png

Push API

La Push API transmite el raw data generado por la atribución de AppsFlyer y la atribución de SKAdNetwork (SKAN) como mensajes a tus servidores. Puedes seleccionar los tipos y el contenido de los mensajes y establecer los endpoints de destino.

Los tipos de mensajes disponibles, la actualización de los datos y los campos dependen del framework de atribución (AppsFlyer o SKAN) como se describe en las secciones siguientes.  

Mensajes de atribución de AppsFlyer

Características del mensaje

Características Detalles
Segregación de tipos de mensajes
  • Los mensajes se pueden segregar por endpoint (máximo de 6 endpoint por aplicación) o puedes determinar el tipo de mensaje examinando el valor de los campos enumerados:
    • event_name
    • conversion_type
    • campaign_type 
  • Los valores de los campos, por tipo de mensaje, se indican en la tabla a seguir.

Ejemplo:

Un mensaje contiene lo siguiente:

  • conversion_type=install
  • campaign_type=organic
  • event_name=install

Usa la tabla para determinar que este evento es el evento de instalación de un usuario orgánico.  

Actualización de los datos Los mensajes se envían poco después de que el evento se registra en la plataforma de AppsFlyer. Esto suele ser en cuestión de minutos.  
Contenido del mensaje (campos)
  • Los mensajes tienen una estructura de key:value.
  • Consulta los campos de la Push API de atribución de AppsFlyer disponibles.
  • Cada clave representa un campo de raw data. Consulta la descripción de los campos de raw data en AppsFlyer.  
  • Las claves en blanco o nulas no se envían en absoluto.
  • El ejemplo contiene campos nulos y vacíos. Los postbacks reales no tienen campos vacíos ni nulos. El ejemplo proporcionado tiene un formato JSON.
Formato de los campos de marca de tiempo
  • Marcas de tiempo UTC: yyyy-mm-dd hh:mm:ss.sss. Por ejemplo, se muestra como 2019-09-17 00:09:00.123. Un evento tuvo lugar a las 18:00, hora de Tokio. La hora del evento se convierte a UTC, que es a las 09:00. La hora registrada es la de UTC.  
  • Marcas de tiempo de la zona horaria seleccionada (específicas de la aplicación): yyyy-mm-dd hh:mm:ss.sss±th:tm. Por ejemplo 2019-09-17 18:00:16.000+0900. Un evento tuvo lugar a las 18:00, hora de Tokio. La hora del evento que se muestra se registra como 18:00+09:00. 09:00 es la zona horaria de Tokio. 

Tipos de mensajes disponibles

Contexto de atribución Tipo de mensaje campo conversion_type campo campaign_type campo event_name campo event_type
Adquisición de usuarios Instalación* install

No orgánico: UA

Orgánico: organic

install
  • install
  • organic-install
Adquisición de usuarios  Instalación de eventos in-app install

No orgánico: UA

Orgánico: organic

Nombres de eventos definidos por el anunciante
  • install-in-app-event
  • organic-install-in-app-event
Retargeting Re-engagement re-engagement retargeting re-engagement re-attribution
Retargeting  Re-engagement in-app events re-engagement retargeting Nombres de eventos definidos por el anunciante re-engagement-in-app-event
Retargeting  Re-atribución  reinstall retargeting re-attribution re-attribution
Adquisición de usuarios  Reinstalación reinstall

No orgánico: UA

Orgánico: organic

reinstall
  • reinstall
  • organic-reinstall
Retargeting Eventos in-app de reatribución reinstall retargeting Nombres de eventos definidos por el anunciante re-attribution-in-app-event
* Algunas instalaciones relacionadas con la atribución por impresiones se atribuyen a la fuente de medios restringida.

Campos exclusivos

Nombre para mostrar Nombre de la Push API
Divisa seleccionada* selected_currency
Ingresos en la divisa seleccionada revenue_in_selected_
currency
Costo en la divisa seleccionada cost_in_selected_
currency
Zona horaria seleccionada para la hora de descarga del dispositivo device_download_time_selected_timezone
Zona horaria seleccionada para la hora de toque atribuido attributed_touch_time_selected_timezone
Zona horaria seleccionada para la hora de instalación install_time_selected_
timezone
Zona horaria seleccionada para la hora del evento event_time_selected_
timezone
Zona horaria seleccionada(*) selected_timezone
* Esta es la configuración vigente a nivel de aplicación en el momento en que se envía el mensaje API.

Mensajes de atribución de SKAN

Esta sección describe los mensajes (tipos de reportes) disponibles para SKAN y cómo identificar los mensajes. Lee esta sección y, a continuación, Configura el endpoint de atribución de SKAN.

Lectura relacionada: Campos de raw data de SKAN. Los mensajes de la Push API tienen la estructura y los campos equivalentes.  

Características del mensaje:

Características Detalles
Segregación de tipos de mensajes
  • Todos los mensajes se envían a un endpoint que has configurado.
  • Para determinar el tipo de mensaje, usa el campo event_type.
    Nota: con el campo event_type, también puedes determinar el campo event_name y el campo skad_redownload.
  • Los valores del campo event_type se indican en la siguiente tabla.

Ejemplo:

Un mensaje contiene lo siguiente:

  • event_type: skad-re-download

A partir de esto, podemos determinar que:

  • Este es un evento de redescarga
  • event_name: install
  • skad_redownload: true
Actualización de los datos
  • Instalaciones, redescarga y eventos in-app:
    • Procesado a diario
    • Enviados a tu endpoint el día siguiente a la recepción del postback de iOS por parte de AppsFlyer
    • Seguramente recibirán mensajes de eventos de 08:00 a 11:00 UTC (la hora exacta varía)
    • Ejemplo: Los postbacks recibidos el lunes se envían a partir del martes a las 08:00 UTC
  • Copia de postbacks de iOS y postbacks: Los mensajes se envían poco después de que llegan a AppsFlyer
Ejemplo de mensajes La hoja de cálculo contiene ejemplos de mensajes. El ejemplo proporcionado tiene un formato JSON. Mensajes de ejemplo de SKAN.

Tipos de mensajes para la atribución de SKAN

Tipo de mensaje  campo event_name campo skad_redownload campo event_type
Instalaciones  install
  • Valores posibles: false, blank, null. 
  • Si el campo no está en el mensaje, considera el valor como false.  
skad-install
Redescargas   install True skad-re-download
Eventos in-app  Nombre del evento configurado por el anunciante Nombre del evento configurado por el anunciante skad-in-app-event
Postbacks de iOS Nunca disponible en este mensaje A veces disponible skad-postback
Copia de postbacks Nunca disponible en este mensaje A veces disponible skad-postback-copy

 

Configurar los endpoints de Push API

 Precaución

No uses la Push API para enviar datos atribuidos a AppsFlyer a terceros por los siguientes motivos:

  • Puedes infringir las normas de privacidad, como la CCPA, si el usuario eligió la exclusión opcional para no enviar sus datos a terceros.
  • Algunas fuentes de medios restringen la forma en que se utilizan, comparten con terceros o ambos los datos proporcionados por los usuarios. Asegúrate de cumplir con los términos de uso de la fuente de medios.
    Por ejemplo, X Ads, Snapchat, Pinterest.

Nota:  Esta precaución no se aplica a los datos de SKAN. Usa la Push API para enviar datos SKAN a endpoints de terceros.

Para configurar la Push API, completa la lista de acciones.

Lista de verificación de configuración de la Push API

Paso  Atribución de AppsFlyer Atribución de SKAdNetwork 
1

Si ya tienes un endpoint de la Push API activo, puedes omitir este paso.  

Completa los requisitos del lado del servidor.

2 Para la atribución de AppsFlyer, planifica la configuración del endpoint con la lista de verificación de planificación de la Push API. No aplicable
3 Configura el endpoint de atribución de AppsFlyer Configura el endpoint de atribución de SKAdNetwork

Requisitos del lado del servidor (tu servidor)

Asegúrate de que tu servidor cumpla con los siguientes requisitos:  

Requisitos del lado del servidor

URL de endpoint
  • Nombre de dominio válido
  • Número máximo de endpoints únicos por aplicación:  
    • AppsFlyer: 6 endpoints
    • SKAdNetwork: 3 endpoints
Código de respuesta del endpoint Al recibir un mensaje, tu endpoint debe devolver un código de estado HTTP 200.
Agregar los servidores de AppsFlyer a la lista de permitidos Agrega a la lista de permitidos las direcciones IP de los servidores de AppsFlyer en tus firewalls y sistemas de seguridad para garantizar la comunicación con el endpoint.
Versiones del TLS
Puertos  Puertos: 80, 443

¡Importante! Se utiliza un mecanismo de tiempo de espera que tiene una duración de 4 segundos. Si AppsFlyer no recibe un mensaje de OK durante este tiempo, AppsFlyer lo considera como un error en el envío del mensaje. 

Lista de verificación de planificación de la Push API para la atribución de AppsFlyer

  • Usa esa lista de verificación para planificar la configuración de tus endpoints de atribución de AppsFlyer. Los números en la figura coinciden con los números de fila en la lista de verificación.
  • Esta sección no es relevante para la atribución de SKAdNetwork. Consulta Configurar la atribución de SKAdNetwork. 

Endpoint 

PushAPI_us-en.png

Tabla de planificación de los endpoints

Número Configuración Detalles Usa esta columna para registrar la configuración planificada
1 Método POST o GET  
2 URL de endpoint -  
3 Tipos de mensajes de evento
  • Selecciona al menos un tipo de mensaje de evento.
  • Para seleccionar mensajes de eventos in-app, debes atribuir un evento in-app. Si no lo haces, no podrás seleccionar mensajes de eventos in-app.  
InappSelectionDisabled_us-en.png 
 
4
  • Campos  
  • La lista de campos es común para todos los tipos de mensajes.

Advertencia

Si marcas Seleccionar todo, los campos recién agregados también se seleccionarán automáticamente. Por favor, asegúrate de que puedes admitir todos los campos nuevos agregados automáticamente al esquema para evitar problemas.

Selecciona los campos requeridos.
  • Los campos más comunes ya están seleccionados de forma predeterminada.
  • No enviamos campos vacíos o nulos
 
5

Tipo de eventos in-app

 

Filtra por eventos in-app para reducir el tráfico enviado a tu endpoint.
  • Selecciona uno o más, o todos los eventos in-app. ¡Nota! Si el evento no aparece en la lista, búscalo.  
  • Si seleccionas todo, los eventos in-app nuevos se agregan automáticamente.  
  • Solo puedes seleccionar un evento in-app después de que se haya atribuido al menos una vez.  Si es necesario, usa S2S para disparar el evento.
  • mceclip1.png
 

Configura el endpoint de atribución de AppsFlyer

Nota: Solo el propietario de la cuenta de AppsFlyer puede realizar cambios en la configuración de la Push API. Los demás usuarios de la cuenta pueden ver la configuración.

Para agregar un endpoint de atribución de AppsFlyer:

  1. Ve a Reporte > Acceso a la API Desplázate hacia abajo hasta la sección Push API.
  2. Haz clic en Agregar endpoint. 
     
  3. Selecciona un método HTTP: POST o GET
  4. Ingresa la URL del endpoint. Si recibes el mensaje de que esta URL no es segura, contacta con el soporte técnico de AppsFlyer.
  5. Selecciona uno o más tipos de eventos. Nota: Si los mensajes de eventos in-app están deshabilitados, significa que no se han atribuido eventos in-app hasta el momento. 
  6. Selecciona los campos para completar el mensaje de la Push API. Nota:
     
    • Los campos obligatorios siempre se envían: Estos son: ID de la aplicación, nombre del evento, hora del evento, IDFA para iOS o ID de publicidad para Android.
    • Usa los controles representados en la figura a continuación para seleccionar campos opcionales. PushAPIFieldSelect1.jpg
      • Los campos más comunes ya están seleccionados de forma predeterminada. Puedes cancelar las selecciones.
      • Selecciona campos opcionales según sea necesario.
      • Usa Borrar todo para desactivar todos los campos opcionales seleccionados.
      • No enviamos campos nulos o vacíos y la clave asociada. Ten esto en cuenta al planificar tus procedimientos de análisis/importación.
  7. Selecciona uno o más (hasta 52 eventos) o Todos los eventos in-app.
     
    • La lista se completa por tipos de eventos que ya se han atribuido. Si falta un evento, envía un evento que contenga este tipo utilizando un dispositivo de prueba.  
  8. Haz clic en Guardar.
    La Push API ahora está activa. Los datos de conversión continúan enviándose al endpoint.
  9. Prueba el endpoint utilizando el procedimiento que sigue.

Para probar el endpoint:

  1. Haz clic en Enviar prueba.
    Aparece un mensaje de resultado de la prueba debajo del botón Enviar prueba
    Se envía un mensaje de prueba al endpoint. Si la prueba falla, asegúrate de que las direcciones IP de AppsFlyer estén en la lista de permitidos.  
    ¡Importante! Se utiliza un mecanismo de tiempo de espera que tiene una duración de 2 segundos. Si AppsFlyer no recibe un mensaje de OK durante este tiempo, AppsFlyer lo considera como un error en el envío del mensaje. 
  2. Comprueba que tu endpoint recibió el mensaje de prueba.
    Ver una copia del mensaje enviado. 

Configura el endpoint de atribución de SKAdNetwork

Nota: Solo el propietario de la cuenta de AppsFlyer puede realizar cambios en la configuración de la Push API. Los demás usuarios de la cuenta pueden ver la configuración.

Para agregar un endpoint de la Push API de SKAdNetwork:

  1. Ve a Reporte > Acceso a la API Desplázate hacia abajo hasta la sección Push API.
  2. Selecciona SKAdNetwork como entidad atribuidora. 
  3. Haz clic en Agregar endpoint. 
    Nota: Puedes definir de 1 a 3 endpoint de SKAdNetwork por aplicación. 
  4. Selecciona un método HTTP: POST o GET
  5. Ingresa la URL del endpoint. Si recibes el mensaje de que esta URL no es segura, contacta con el soporte técnico de AppsFlyer.
  6. No enviamos campos nulos o vacíos y la clave asociada. Ten esto en cuenta al planificar tus procedimientos de análisis/importación.
  7. Haz clic en Guardar.
    La Push API ahora está activa. Los datos se envían al endpoint. 

Configurar el token de autenticación

Con el token de autenticación de la Push API, los clientes pueden integrar y proteger sin problemas sus mensajes de la Push API agregando un encabezado de autorización personalizable con un token solicitado.
Puedes personalizar un encabezado de autorización que se enviará con tus mensajes de la Push API, definiendo el nombre del token y el valor asociados con cada ID de aplicación. Esto garantiza que tus mensajes no solo sean seguros, sino que también se adapten a tus requisitos específicos.

Procedimientos adicionales: gestión de endpoints

Cambiar un endpoint

Nota: Solo el propietario de la cuenta de AppsFlyer puede realizar cambios en la configuración de la Push API. Los demás usuarios de la cuenta pueden ver la configuración.

Para modificar la configuración del endpoint: 

  1. Ve a Reporte > Acceso a la API. Desplázate hacia abajo hasta la sección Push API.
  2. Localiza el endpoint a modificar.
  3. Haz las modificaciones.
  4. Haz clic en Guardar.

Eliminar un endpoint

Nota: Solo el propietario de la cuenta de AppsFlyer puede realizar cambios en la configuración de la Push API. Los demás usuarios de la cuenta pueden ver la configuración.

Para eliminar un endpoint:

  1. Ve a Reporte > Acceso a la API Desplázate hacia abajo hasta la sección Acceso a la Push API.
  2. Haz clic en Eliminar endpoint.
  3. Haz clic en Guardar.
    Se elimina el endpoint.  

Solución de problemas, rasgos y limitaciones

Fallo del mensaje de prueba

Si no recibes el mensaje de prueba y restringes el acceso a tus servidores por dirección IP: asegúrate de que todas las direcciones IP de AppsFlyer estén en la lista de permitidos.  

Duplicar eventos in-app de retargeting

Los eventos in-app de retargeting se duplican cuando se lleva a cabo un evento de compra como parte de una campaña de retargeting durante la ventana de re-engagement de la UA. Esto se hace para atribuir ingresos tanto a la fuente de medios de la UA como a la fuente de medios de retargeting. 

Solo obtendrás un evento duplicado si has habilitado ambos:

  • Instalación de eventos in-app
  • Eventos de retargeting en la aplicación 

Identificar y deduplicar eventos in-app

 

La selección de mensajes de eventos in-app está deshabilitada

InappSelectionDisabled_us-en.png

  • Los mensajes de eventos in-app solo se pueden seleccionar después de que se haya atribuido un evento in-app.
  • Usa un dispositivo de prueba para generar un evento in-app o usa la API S2S para hacerlo manualmente. 

Faltan mensajes push y CloudFront

¿Estás utilizando Amazon CloudFront como endpoint? Si es así, verifica si CloudFront está rechazando el mensaje con el código de rechazo 421. Si este es el caso, consulta Elegir cómo CloudFront atiende las solicitudes HTTPS

Mensajes de error del endpoint

Síntoma: El mensaje esta URL no es segura aparece cuando configuras la URL del endpoint.

Acción requerida: Contacta con el soporte técnico de AppsFlyer; incluye el ID de aplicación, la URL del endpoint y una captura de pantalla del mensaje de error.  

Rasgos y limitaciones

Característica Observaciones 
Ad networks No disponible 
Agencias No disponible
Zona horaria específica de la aplicación Compatible
Moneda específica de la aplicación  Compatible
Limitaciones de tamaño No aplicable
Orgánico 
No orgánico
Actualización de los datos Continuo 
Datos históricos No admitido. Si faltan datos, utiliza la Pull API para obtener los datos. En el caso de SKAN, puedes obtener algunos datos históricos a través de Data Locker (limitado por la ventana de disponibilidad de Data Locker).  
Acceso del propietario/usuario de la cuenta

Solo el propietario de la cuenta de AppsFlyer puede realizar cambios en la configuración de la Push API.

  • Cada cuenta de AppsFlyer tiene solo un propietario de cuenta. Este es el primer usuario de AppsFlyer (creado en el momento de abrir la cuenta).

Los demás usuarios de la cuenta pueden ver la configuración de la Push API, pero no pueden realizar cambios.

Token de autenticación en mensajes de prueba Los encabezados de los mensajes de prueba no incluyen el token de autenticación.

¿Puedo incluir encabezados personalizados con la solicitud de Push API?

No. La Push API admite el uso del encabezado Authorization solo para tokens de autenticación. No se admiten encabezados personalizados adicionales, como consumer-key.

Si necesitas pasar parámetros adicionales, inclúyelos en la URL. Por ejemplo:

https://your.server.com?consumer_key=abc456