Atribución API - Affise MMP sin integración SDK
Daria Mamchenkova avatar
Escrito por Daria Mamchenkova
Actualizado hace más de una semana

Si no es posible integrarse con el SDK, puede utilizar la Atribución API. En este caso, debe hacer lo siguiente:

  1. En la página Aplicación, añada una aplicación e indique su clave secreta SDK y su App ID.

  2. Configure la solicitud según la guía de este artículo.

  3. 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].

¿Ha quedado contestada tu pregunta?