Si no es posible integrarse con el SDK, puede utilizar la Atribución API. En este caso, debe hacer lo siguiente:
En la página Aplicación, añada una aplicación e indique su clave secreta SDK y su App ID.
Configure la solicitud según la guía de este artículo.
Integre la biblioteca de referencias de Google Play.
Configuración
Postback mínimo para instalar la métrica no orgánica
curl --request POST \
--data '[
{
"uuid": "1a7adcca-f786-4c62-a770-5b3e687d0ee3",
"created_time": 1668605535000,
"affise_app_id": "3",
"affise_pkg_app_name": "com.test.app",
"affise_app_token": "ee8ebe706e0359e3ac5c45666a681f4c228d97f20012dac186ae3902eb479955",
"affise_device_id": "bf62b34b-5750-4e95-a132-4185cedbee00",
"random_user_id": "92f254db-d70d-47ce-8597-baccab852300",
"first_open_time": 1685452724264,
"referrer": "gclid=CjwKCAjwvdajBhBEEiwAeMh1UwCsBajGUaMGwuqg6-nhQQe54jA4hR3l5wUQK5OB_GH_OxlAizBIQRoCRGAQAvD_BwE"
}
]'
Si el parámetro referrer está vacío o no es válido, la instalación será orgánica si no se utiliza otra definición.
Postback para sesiones y/o comprobar usuario activo
curl --request POST \
--data '[
{
"uuid": "1a7adcca-f786-4c62-a770-5b3e687d0ee3",
"created_time": 1668605535000,
"affise_app_id": "3",
"affise_pkg_app_name": "com.test.app",
"affise_app_token": "ee8ebe706e0359e3ac5c45666a681f4c228d97f20012dac186ae3902eb479955",
"affise_device_id": "bf62b34b-5750-4e95-a132-4185cedbee00",
"random_user_id": "92f254db-d70d-47ce-8597-baccab852300",
"first_open_time": 1685452724264,
"hora_última_sesión": 1685452756000,
"last_time_session": 1685452756000,
"time_session": 56783,
"affise_session_count": 5,
"lifetime_session_count": 4556891
}
]'
donde:
Nombre | Tipo | Obligatorio | Información |
uuid | uuidv4 (cadena) | Cada | Identificador de postback, un valor único para cada postback. |
hora_creada | timestamp (int) | Cada | Hora de envío del postback en milisegundos. |
affise_app_id | cadena | Cada | ID de la aplicación en Affise. |
affise_pkg_app_name | cadena | Cada | Nombre del paquete en la tienda. |
affise_app_token | cadena | Cada | Firma de postback. |
affise_device_id | uuidv1 (cadena) | Cada | Identificador único de dispositivo del usuario. |
random_user_id | uuidv4 (cadena) | Cada | Identificador de dispositivo único del usuario. |
first_open_time | timestamp (int) | Primer postback | Hora del primer lanzamiento de la aplicación en milisegundos.
Único para el dispositivo.
Debe presentarse al menos 1 vez.
Puede no estar presente en los siguientes postbacks. |
referente | cadena | No o primer postback, para comprobación no orgánica | Información de referencia de una tienda.
Si se utiliza otro mecanismo para la comprobación no orgánica, el campo es opcional. |
last_session_time | timestamp (int) | Para sesiones | Hora actual en milisegundos si la sesión está activa, en caso contrario 0. |
last_time_session | timestamp (int) | Para sesiones,
si last_session_time = 0 | Hora actual en milisegundos si la sesión está activa, si no
última hora en milisegundos cuando la sesión estaba activa, si no
first_open_time. |
tiempo_sesión | int | Para sesiones de duración calc | Última duración de la sesión en milisegundos. |
affise_session_count | int | Para sesiones | Número de sesiones no fraudulentas en el dispositivo.
Affise recomienda aumentar este contador 30 segundos después del inicio de la sesión.
El valor no debe disminuir. |
life_session_count | int | Para sesiones de duración calc | Suma de las duraciones de la actividad de la aplicación en milisegundos. |
Eche un vistazo al ejemplo de postback completo:
[
{
"affise_app_id": "3",
"affise_pkg_app_name": "com.test.app",
"app_version": "1.0",
"app_version_raw": "2",
"store": "Apk",
"installed_time": 1685445035570,
"first_open_time": 1685445103532,
"hora_instalada": 1685444400000,
"hora_primera_apertura": 1685444400000,
"install_first_event": true,
"install_begin_time": 0,
"install_finish_time": 1685445103532,
"referrer_install_version": "",
"referral_time": 0,
"referrer_click_time": 0,
"referrer_click_time_server": 0,
"referrer_google_play_instant": false,
"created_time": 1685445103000,
"created_time_milli": 1685445103908,
"created_time_hour": 1685444400000,
"last_session_time": 1685445103908,
"connection_type": "WIFI",
"cpu_type": "arm64-v8a, armeabi-v7a, armeabi",
"hardware_name": "coral",
"network_type": "WIFI",
"device_manufacturer": "Google",
"proxy_ip_address": "",
"deeplink_click": false,
"device_atlas_id": "",
"affise_device_id": "6c5b4fbb-0188-1000-a2a8-a425dfc3a5d1",
"affise_alt_device_id": "6c5b4fd6-0188-1000-8d42-38592460a3c0",
"adid": "",
"android_id": "50da7b69cab425a1",
"android_id_md5": "f2e24f12834014cf69623fd9a7c77f12",
"mac_sha1": "",
"mac_md5": "",
"gaid_adid": "",
"gaid_adid_md5": "",
"oaid": "",
"oaid_md5": "",
"altstr_adid": "",
"fireos_adid": "",
"coloros_adid": "",
"reftoken": "6c5b51...ac5631",
"reftokens": "6c5b5...59c94f0a",
"referrer": "referrer=018…a43e29&clickid=6475e…e37f55&pid=9",
"user_agent": "Dalvik/2.1.0 (Linux; U; Android 13; Pixel 4 XL Build/TP1A.221005.002.B2)",
"mccode": "272",
"mncode": "2",
"isp": "3",
"region": "IE",
"country": "IE",
"language": "en-IE",
"nombre_dispositivo": "Pixel 4 XL",
"device_type": "smartphone",
"os_name": "",
"platform": "android",
"sdk_platform": "android",
"api_level_os": "33",
"affise_sdk_version": "-",
"os_version": "13",
"random_user_id": "6c5b4fea-0188-1000-90fb-29759c0aadba",
"affise_sdk_pos": "Production",
"timezone_dev": "UTC+0100",
"affise_event_token": "",
"affise_event_name": "",
"last_time_session": 1685445104000,
"time_session": 295,
"affise_session_count": 1,
"lifetime_session_count": 295,
"affise_deeplink": "",
"affise_part_param_name": "",
"affise_part_param_name_token": "",
"affise_app_token": "9d1af455f1…66611d7e72e9",
"label": "",
"uuid": "6c5b5181-0188-1000-ab71-0cbd7e8a63e2",
"pushtoken": "",
"affise_events_count": 2,
"events": [
{
"affise_event_id": "4fc7d613-af35-4298-92a8-04838e03a40c",
"affise_event_name": "CustomId01",
"affise_event_category": "native",
"affise_event_timestamp": 1685449930539,
"affise_event_first_for_user": false,
"affise_event_user_data": "",
"affise_event_data": {
"affise_event_custom_id_01": "AiChatClickEvent",
"affise_event_custom_id_{01}_timestamp": 1685449930539
},
"affise_parameters": {}
},
{
"affise_event_id": "b1e1aa62-652e-48d5-a9b0-4f9a0b9448e0",
"affise_event_name": "CustomId10",
"affise_event_category": "native",
"affise_event_timestamp": 1685449935544,
"affise_event_first_for_user": false,
"affise_event_user_data": "about:blank",
"affise_event_data": {
"affise_event_custom_id_10": "PageFinishedLoading",
"affise_event_custom_id_{10}_timestamp": 1685449935544
},
"affise_parameters": {}
}
],
"affise_internal_events_count": 0,
"internal_events": [],
"affise_sdk_events_count": 0,
"sdk_events": [],
"affise_metrics_events_count": 0,
"metrics_events": []
}
]
Proveedor affise_app_token
affise_app_token = SHA256(affiseAppId + createdTime + secretId)
donde:
affiseAppId - Id. de la aplicación Affise.
createdTime - hora de la solicitud.
secretId - Clave secreta del SDK.
fun sha256(valor: Cadena) : Cadena {
return MessageDigest.getInstance("SHA-256")
.digest(valor.toByteArray())
.joinToString("") {
"%02x".format(it)
}
}
Ejemplo
affiseAppId | AffiseDemoApp |
createdTime | 1685463568000 |
secretId | be07d122-3f3c-11ec-9bbc-0242ac130002 |
SHA256 | 00c1c31859fcfecc7be3a4505d27bc189e6deebd544025ddd1017b770407974e |
Integración de la biblioteca de referidos de Google Play
Para obtener una referencia correctamente, es necesario integrarse con la biblioteca de Google. Lea cómo hacerlo aquí.
Por favor, póngase en contacto con el equipo de Atención al Cliente de Affise en relación con todas las cuestiones planteadas a través del correo electrónico: [email protected].