Raw data en tiempo real de Push API V2.0 (beta abierta)

De un vistazo: Los datos de los eventos de atribución se te envían en tiempo real para su uso en tus sistemas de TI. Tú seleccionas los eventos de atribución y los datos se envían al punto de conexión de tu servicio web.

Push API V2.0

4409_Push_API_V2-01.png

  Push API news

  • Push API V2.0 is aligned with AppsFlyer raw data V5.0 specification used by other data delivery tools in AppsFlyer. It has over 40 additional attribution fields. As new fields are added they are made available rapidly in Push API V2.0.
  • Push API V1.0 will no longer be updated and will be discontinued.
  • Developer! Migration guide Push API V1.0 to Push API V2.0

Push API is used to get Attribution data in real-time so that you can combine in-house user data with the real-time attribution data from AppsFlyer. Use the data to follow user journeys and to perform real-time analytics and segmentation. 

If your app flow depends on attribution data in real-time (less than five seconds) consider using conversion data.

For more information about AppsFlyer data tools see: Choosing AppsFlyer data delivery tools, Using Push and Pull API together

Características de Push API

Event types supported by Push API
Tipo de campaña Tipo de evento No orgánico Orgánico Retargeting
La adquisición de usuarios sin relación  
Adquisición de usuarios  Instalar eventos in-app  
Retargeting RE-ENGAGEMENT    
Retargeting  Eventos in-app de recaptación    
Retargeting  Reatribución     
Retargeting  Eventos in-app de reatribución    

Actualización de los datos

Push API messages are sent in real-time. 

tecnología

    • RESTful API, POST and GET methods supported
    • Las respuestas de mensajes POST están incluidas en un JSON

 Precaución

Some media sources, restrict the use of user-level data and the sharing of this data with third parties. Ensure that you comply with the media source terms of use.
For example, Facebook, Twitter, Snapchat, Pinterest.

Implementación de Push API

Configuración de Push API

Implementation guidelines 

  • Pueden agregarse campos adicionales a la estructura JSON de vez en cuando sin aviso previo. Sigue este artículo para estar informado sobre los cambios.
  • If your endpoint host fails to accept the Push API messages they can't be resent. If you lose Push API messages, use pull API to fill any gaps. 

Checklist

Complete this checklist before you setup Push API. 

  • Whitelist IPs: Whitelist AppsFlyer IP addresses so that they can communicate with the endpoint defined in the URL. List of AppsFlyer IP addresses.
  • TLS support:
  • Puertos: 80, 443
  • Endpoint:
    • Is a valid domain name
    • Configured to return HTTP status code 200 indicating successful completion. Note: No other status code is allowed. This includes other 2XX codes. 
    • El mismo punto de conexión se puede usar una vez por aplicación. 
    • When using the GET method, do not add query parameters to the URL if the endpoint is hosted by third-party providers.
    • API key parameters aren't supported.

Configuración de Push API

Para agregar un punto de conexión de Push API:

  1. En AppsFlyer, ve a Integración > Acceso a la API.
    Se abre la ventana Acceso a la API. 
  2. Scroll down to the Push API section.
    The Push API endpoint section displays.

    PushAPi.png

  3. Haz clic en Agregar postback.
    Puedes configurar hasta 6 puntos de conexión de Push API.
  4. Select an HTTP method: POST or GET
  5. Ingresa la URL de postback. 
  6. (Opcional) Selecciona la versión de Push API: (predeterminada) 2.0
  7. Selecciona uno o más tipos de eventos para enviar a la URL del punto de conexión. 
  8. Haz clic en Guardar
    La Push API está ahora activa
    Los datos de conversión se envían al punto de conexión.
  9. Prueba el punto de conexión utilizando el procedimiento que sigue.

Para probar el punto de conexión:

  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 punto de conexión.
  2. Check that the endpoint received the test message.
    A copy of the message sent follows.

Ejemplos de mensajes API: POST y GET

Ejemplo de mensaje POST

{
  "device_model":"GT-I9300",
  "fb_adgroup_id":"6032793211234",
  "download_time":"2015-10-28 00:18:00",
  "operator":"Vodafone IN",
  "click_time":"2015-10-28 12:17:37",
  "agency":null,
  "ip":"115.98.114.125",
  "cost_per_install":null,
  "fb_campaign_id":"6032793121234",
  "imei":"358422050231234",
  "is_retargeting":false,
  "app_name":"[App Name Comes Here]",
  "re_targeting_conversion_type":null,
  "android_id":"449021d533061234",
  "city":"London",
  "af_sub1":null,
  "af_sub2":null,
  "event_value":null,
  "af_sub3":null,
  "fb_adset_name":"FACEBOOK_ADSET_TEST",
  "af_sub4":null,
  "customer_user_id":"1234-5678",
  "mac":null,
  "af_sub5":null,
  "campaign":"FACEBOOK_CAMPAIGN_TEST",
  "event_name":null,
  "currency":null,
  "install_time":"2015-10-28 12:18:36",
  "fb_adgroup_name":"FACEBOOK_ADGROUP_TEST",
  "event_time":"2015-10-28 12:18:36",
  "platform":"android",
  "sdk_version":"1.17",
  "appsflyer_device_id":"1446034686662-8619927357095541234",
  "wifi":true,
  "advertising_id":"95e55150-1111-2222-3333-3e0c8c1d9978",
  "media_source":"Facebook Ads",
  "country_code":"GB",
  "http_referrer":null,
  "fb_campaign_name":"FACEBOOK_CAMPAIGN_TEST",
  "click_url":null,
  "carrier":"Vodafone",
  "language":"English",
  "app_id":"[App ID Comes Here]",
  "app_version":"4.4.1",
  "attribution_type":"regular",
  "af_siteid":null,
  "os_version":"4.3",
  "fb_adset_id":"6032793131234",
  "device_brand":"samsung",
  "event_type":"install",
  "af_ad": "a86721874",
  "af_ad_id": "123245353",
  "af_ad_type":"Banner_210X600",
  "af_adset":"3gvow",
  "af_adset_id":"3gvow",
  "af_c_id":"3e025",
  "af_channel":"youtube",
  "af_cost_currency":"USD",
  "af_cost_model":"cpi",
  "af_cost_value":"0.0750",
  "af_keywords":"key1 key2 key3"
}

Ejemplo de mensaje GET

?mac%3D%26af_sub1%3D%26customer_user_id%3D1234-5678%26af_cost_value%3D0.0750%26
app_version%3D4.4.1%26city%3DLondon%26fb_campaign_id%3D6032793121234%26device_model%3DGT-I9300%26af_cost_model%3Dcpi%26af_c_id%3D3e025%26app_name%3D%5BApp%20Name%20Comes%20Here%5D%26wifi%3Dtrue%26install_time%3D2015-10-28%2012%3A18%3A36%26operator%3DVodafone%20IN%26fb_adgroup_id%3D6032793211234%26currency%3D%26af_adset_id%3D3gvow%26re_targeting_conversion_type%3D%26is_retargeting%3Dfalse%26country_code%3DGB%26event_type%3Dinstall%26appsflyer_device_id%3D1446034686662-8619927357095541234%26http_referrer%3D%26af_sub5%3D%26fb_campaign_name%3DFACEBOOK_CAMPAIGN_TEST%26click_url%3D%26media_source%3DFacebook%20Ads%26campaign%3DFACEBOOK_CAMPAIGN_TEST%26af_keywords%3Dkey1%20key2%20key3%26event_value%3D%26ip%3D115.98.114.125%26event_time%3D2015-10-28%2012%3A18%3A36%26click_time%3D2015-10-28%2012%3A17%3A37%26af_sub4%3D%26imei%3D358422050231234%26fb_adgroup_name%3DFACEBOOK_ADGROUP_TEST%26af_sub2%3D%26attribution_type%3Dregular%26android_id%3D449021d533061234%26af_adset%3D3gvow%26fb_adset_id%3D6032793131234%26af_ad%3Da86721874%26agency%3D%26fb_adset_name%3DFACEBOOK_ADSET_TEST%26cost_per_install%3D%26af_channel%3Dyoutube%26af_cost_currency%3DUSD%26device_brand%3Dsamsung%26download_time%3D2015-10-28%2000%3A18%3A00%26af_siteid%3D%26language%3DEnglish%26app_id%3D%5BApp%20ID%20Comes%20Here%5D%26af_ad_type%3DBanner_210X600%26carrier%3DVodafone%26event_name%3D%26advertising_id%3D95e55150-1111-2222-3333-3e0c8c1d9978%26os_version%3D4.3%26platform%3Dandroid%26af_sub3%3D%26af_ad_id%3D123245353%26sdk_version%3D1.17

Cómo eliminar postbacks

Para eliminar un postback:

  1. Go to Integration > API Access.
    Scroll down to the Push API access section. 
  2. Haz clic en Eliminar postback.
  3. Haz clic en Guardar.
    El postback se elimina. 

Estructuras de mensajes de Push API

La respuesta de Push API depende del método HTTP:

  • GET: data parameters are appended to the URL string
  • POST: los parámetros de datos se incluyen en el cuerpo del mensaje en formato JSON

Campos Push API

Push API messages contain the fields as described here. Additional fields will be added from time to time as these are added to the AppsFlyer platform Your import/parsing mechanisms should take this into account. 

Campos API exclusivos
Nombre para mostrar Nombre V2.0 Observaciones 
La moneda 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 hora de descarga download_time_selected_
timezone
 
Zona horaria seleccionada para hora de toque atribuido attributed_touch_time_
selected_timezone
 
Zona horaria seleccionada para hora de instalación install_time_selected_
timezone
 
Zona horaria seleccionada para hora del evento event_time_selected_
timezone
 
Zona horaria seleccionada selected_timezone  
URL de enlace profundo deeplink_url Disponible a partir del cuarto trimestre de 2019
OAID oaid Disponible a partir del cuarto trimestre de 2019
ID de palabra clave keyword_id Disponible a partir del cuarto trimestre de 2019
Reinstalación de tienda store_reinstall (False=Download, True=Redownload) Disponible a partir del cuarto trimestre de 2019

Lista completa de campos de Push API

Nombre de Push API V2.0 Nombre visible de Push API Comentarios
advertising_id ID de publicidad  
af_ad Anuncio  
af_ad_id ID de anuncio  
af_ad_type Tipo de anuncio  
af_adset Conjunto de anuncios  
af_adset_id ID de conjunto de anuncios  
af_attribution_lookback Ventana de atribución retrospectiva  
af_c_id ID de campaña  
af_channel Canal  
af_cost_currency Moneda de costo  
af_cost_model Modelo de costo  
af_cost_value Valor de costo  
af_keywords Palabras clave  
af_prt Partner  
af_reengagement_window Ventana de recaptación  
af_siteid ID de sitio  
af_sub_siteid ID de subsitio  
af_sub1 Subparámetro 1  
af_sub2 Subparámetro 2  
af_sub3 Subparámetro 3  
af_sub4 Subparámetro 4  
af_sub5 Subparámetro 5  
amazon_aid ID de Amazon Fire.  
android_id ID de Android  
api_version Versión de API  
app_id ID de aplicación  
app_name Nombre de aplicación  
app_version Versión de aplicación  
appsflyer_id ID de AppsFlyer  
attributed_touch_time Hora del toque atribuido  
attributed_touch_time_selected_timezone Zona horaria seleccionada para hora de toque atribuido Específico de Push API
attributed_touch_type Tipo de toque atribuido  
bundle_id ID de paquete  
campaña Campaña  
proveedor Carrier  
ciudad CITY  
contributor_1_af_prt Partner del colaborador 1  
contributor_1_campaign Campaña del colaborador 1  
contributor_1_match_type Tipo de coincidencia del colaborador 1  
contributor_1_media_source Fuente de medios del colaborador 1  
contributor_1_touch_time Hora de toque del colaborador 1  
contributor_1_touch_type Tipo de toque del colaborador 1  
contributor_2_af_prt Partner del colaborador 2  
contributor_2_campaign Campaña del colaborador 2  
contributor_2_match_type Tipo de coincidencia del colaborador 2  
contributor_2_media_source Fuente de medios del colaborador 2  
contributor_2_touch_time Hora de toque del colaborador 2  
contributor_2_touch_type Tipo de toque del colaborador 2  
contributor_3_af_prt Partner del colaborador 3  
contributor_3_campaign Campaña del colaborador 3  
contributor_3_match_type Tipo de coincidencia del colaborador 3  
contributor_3_media_source Fuente de medios del colaborador 3  
contributor_3_touch_time Hora de toque del colaborador 3  
contributor_3_touch_type Tipo de toque del colaborador 3  
cost_in_selected_currency Costo en la divisa seleccionada Específico de Push API
country_code Código de país  
custom_data Datos personalizados  
customer_user_id ID de usuario de cliente  
deeplink_url URL de enlace profundo Disponible a partir del cuarto trimestre de 2019
device_category Categoría de dispositivo  
device_download_time Tiempo de descarga del dispositivo  
device_type Tipo de dispositivo  
dma DMA  
download_time_selected_timezone Zona horaria seleccionada para hora de descarga Específico de Push API
event_name eventName  
event_revenue Ingresos del evento  
event_revenue_currency Divisa de ingresos del evento  
event_revenue_usd Ingresos del evento en USD  
event_source Fuente del evento  
event_time Hora del evento  
event_time_selected_timezone Zona horaria seleccionada para hora del evento Específico de Push API
event_value Valor del evento  
gp_broadcast_referrer Referente de transmisión de GP  
gp_click_time Hora de clic de Google Play  
gp_install_begin Hora de inicio de la instalación de Google Play  
gp_referrer Google Play Referrer  
http_referrer Referente de HTTP  
idfa Identificador de anunciante (IDFA)  
idfv IDFV  
imei IMEI  
install_app_store Tienda de aplicaciones de la instalación  
install_time Hora de instalación  
install_time_selected_timezone Zona horaria seleccionada para hora de instalación Específico de Push API
ip IP  
is_LAT Es LAT Disponible a partir del cuarto trimestre de 2019
is_primary_attribution Es atribución primaria  
is_receipt_validated Tiene validación de compras  
is_retargeting Es retargeting  
keyword_id ID de palabra clave Disponible a partir del cuarto trimestre de 2019
keyword_match_type Tipo de coincidencia de palabras clave  
language language  
match_type Tipo de coincidencia  
media_source Fuente de medios  
network_account_id ID de cuenta de red  
oaid OAID Disponible a partir del cuarto trimestre de 2019
operador Operator  
original_url URL original  
os_version Versión de SO  
plataforma Plataforma  
postal_code Código postal  
Región Región  
retargeting_conversion_type Tipo de conversión de retargeting  
revenue_in_selected_currency Ingresos en la divisa seleccionada Específico de Push API
sdk_version Versión del SDK  
selected_currency La moneda seleccionada. Específico de Push API
selected_timezone Zona horaria seleccionada Específico de Push API
Estado Estado  
store_reinstall (False=Download, True=Redownload) Reinstalación de tienda Disponible a partir del cuarto trimestre de 2019
user_agent Agente de usuario  
WIFI WIFI  

Resolución de problemas, limitaciones y características

Duplication of retargeting events

In some cases, retargeting events are duplicated. This occurs when an in-app purchase event takes place as a result of a retargeting campaign during the UA re-engagement window.

In this case, two attribution events are generated to attribute the revenue to the media source that brought the install and the media source that brought the re-engagement. 

You will only get two Push API's if you have enabled Push APIs for both

  • install in-app events
  • retargeting in-app events

 Example

  • A user installs example_app, which is attributed to ua_network
  • Later the user re-engages with example_app's retargeting campaign on retar_network and makes a purchase.

The event is sent twice with the following details:

Campos API exclusivos
Tipo de evento Media source is_retargeting re_targeting conversion_type
No orgánico ua_network False null (no value)
Retargeting  retar_network True RE-ENGAGEMENT


How do I identify duplicate retargeting events?

Use the is_primary_attribution boolean field which indicates the primary and secondary media sources as follows. 

  • In UA campaigns the value can only be true because the UA media source is the only media source.
  • In retargeting campaigns:
    • True: identifies the re-engagement media source 
    • False: identifies the original UA media source

This reason for this is as follows: If a user, as a result of a retargeting campaign,  engages with the campaign, a re-engagement window opens. The re-engagement media source is regarded as the primary media source when the re-engagement window is open. After the window closes, the original UA media source reverts to being primary. 

Missing Facebook data

By default, Facebook does not release raw user-level data, until you accept Facebook's Terms of Service.
By doing so, you enable the sending of user-level data of installs coming from Facebook, via Push API (and to other raw data resources, as well).

Faltan mensajes push y CloudFront

¿Estás utilizando Amazon CloudFront como punto de conexión? 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

Limitaciones y características

Características
Característica Observaciones 
Redes de publicidad No apto para el uso por parte de redes de publicidad. 
Agencias No apto para el uso por parte de agencias.
Zona horaria específica de la aplicación Compatible
Divisa específica de la aplicación  Compatible
Limitaciones de tamaño No correponde
Orgánica 
No orgánico
Actualización de los datos Tiempo real
Historial de datos Not supported. Event data is sent after configuring Push API. If you need historical raw data use Pull API. 
Team member access Team members can view Push API settings but aren't able to make changes. 
¿Fue útil este artículo?