Customer behavior and user events
Use the search bar or the checkboxes below to find the events you need to use Currents effectively.
These schema include other App or Website activity such as Sessions, Custom Events, and Purchases tracked through the platform.
Estos eventos también están disponibles como tablas SQL en el generador de consultas, las extensiones de segmento SQL y Snowflake Data Sharing. Para consultar los esquemas de tablas SQL y los detalles de las columnas, consulta la referencia de tablas SQL.
Ponte en contacto con tu representante de Braze o abre un ticket de soporte si necesitas acceder a derechos de eventos adicionales. Si no encuentras lo que necesitas en esta página, consulta nuestra biblioteca de eventos de interacción con mensajes o nuestros ejemplos de datos de muestra de Currents.
Explanation of customer behavior and user event structure and platform values
Estructura del evento
Este desglose del comportamiento del cliente y de los eventos del usuario muestra qué tipo de información se incluye generalmente en un comportamiento del cliente o en un evento del usuario. Con una sólida comprensión de sus componentes, tus desarrolladores y el equipo de estrategia de inteligencia empresarial pueden utilizar los datos de eventos de Currents entrantes para elaborar informes y gráficos basados en datos, y aprovechar otras valiosas métricas de datos.

El comportamiento del cliente y los eventos del usuario se componen de propiedades específicas del usuario, propiedades específicas del comportamiento y propiedades específicas del dispositivo.
Valores de la plataforma
Algunos eventos devuelven un valor platform que especifica la plataforma del dispositivo del usuario.
La siguiente tabla detalla los posibles valores devueltos:
| Dispositivo del usuario | Valor de la plataforma |
|---|---|
| iOS | ios |
| Android | android |
| FireTV | kindle |
| Kindle | kindle |
| Web | web |
| tvOS | tvos |
| Roku | roku |
Los esquemas de almacenamiento se aplican a los datos de eventos de archivos planos que enviamos a los socios de almacenamiento de datos (como Google Cloud Storage, Amazon S3 y Microsoft Azure Blob Storage). Algunas combinaciones de eventos y destinos que figuran en esta lista aún no están disponibles de forma general. Para saber qué eventos cuentan con el soporte de distintos socios, consulta nuestra lista de socios disponibles y consulta sus respectivas páginas.
Además, ten en cuenta que Currents descartará los eventos con cargas útiles excesivamente grandes, superiores a 900 KB.
Eventos de actualización del número de contenedor aleatorio
Este evento de usuario se produce cada vez que se crea un nuevo usuario dentro de su espacio de trabajo. Durante este evento, a cada nuevo usuario se le asigna un número de contenedor aleatorio que luego puedes utilizar para crear segmentos distribuidos uniformemente de usuarios aleatorios. Utiliza esta función para agrupar una serie de valores de números de contenedor aleatorios y comparar el rendimiento de tus campañas y variantes de campaña.
Este evento de Currents solo está disponible para los clientes que hayan adquirido un «conector para todos los eventos» y solo está disponible para conectores de eventos de almacenamiento (como Amazon S3, Microsoft Azure y Google Cloud Storage).
Para habilitar este evento y programar el relleno de los números de contenedor aleatorios de los usuarios existentes en tu espacio de trabajo, ponte en contacto con tu administrador del éxito del cliente.
1
2
3
4
5
6
7
8
9
10
11
// users.RandomBucketNumberUpdate
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"prev_random_bucket_number" : "(optional, int) Previous random bucket number",
"random_bucket_number" : "(required, int) New random bucket number",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
Eventos personalizados
Este evento se produce cuando se desencadena un evento personalizado específico. Utilízalo para rastrear cuándo los usuarios realizan eventos personalizados en tu aplicación.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// users.behaviors.CustomEvent
{
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"name" : "(required, string) Name of the custom event",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"properties" : "(required, string) Custom properties stored as a JSON encoded string",
"time" : "(required, int) UNIX timestamp at which the event happened",
"timezone" : "(optional, string) Time zone of the user",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// [Braze Custom Event] (users.behaviors.CustomEvent)
{
"adid" : "(optional, string) [PII] Advertising identifier",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_model" : "(optional, string) Model of the device",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"idfa" : "(optional, string) [PII] Advertising identifier",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// [Braze Custom Event] (users.behaviors.CustomEvent)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// users.behaviors.CustomEvent
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"name" : "(required, string) Name of the custom event"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Detalles de la propiedad
- En el caso de los eventos personalizados, la carga útil también se completará con cualquier propiedad del evento personalizado asociada al evento.
- Para
ad_id,ad_id_typeyad_tracking_enabled, debes recopilar explícitamente el IDFA de iOS y el ID de publicidad de Google de Android a través de los SDK nativos. Más información aquí: iOS, Android. - Si utilizas Kafka para ingestar datos de Currents, ponte en contacto con tu administrador del éxito del cliente o director de cuentas para habilitar el conmutador de características para el envío de
ad_id.
Eventos de atribución de instalación
Este evento se produce cuando la instalación de una aplicación se atribuye a una fuente. Utilízalo para saber de dónde proceden las instalaciones de tu aplicación.
1
2
3
4
5
6
7
8
9
10
// users.behaviors.InstallAttribution
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"source" : "(required, string) The source of the attribution",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
// Install Attribution (users.behaviors.InstallAttribution)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"source" : "(optional, string) The source of the attribution"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Install Attribution (users.behaviors.InstallAttribution)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"source" : "(optional, string) The source of the attribution",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Install Attribution (users.behaviors.InstallAttribution)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : { },
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"source" : "(required, string) The source of the attribution"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de ubicación
Este evento se desencadena cuando un usuario visita una ubicación determinada. Utilízalo para rastrear a los usuarios que activan eventos de ubicación en tu aplicación.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// users.behaviors.Location
{
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"alt_accuracy" : "(optional, float) Altitude accuracy of recorded location",
"altitude" : "(optional, float) [PII] Altitude of recorded location",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(required, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"latitude" : "(required, float) [PII] Latitude of recorded location",
"ll_accuracy" : "(optional, float) Accuracy of the latitude and longitude of recorded location",
"longitude" : "(required, float) [PII] Longitude of recorded location",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Location (users.behaviors.Location)
{
"adid" : "(optional, string) [PII] Advertising identifier",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"alt_accuracy" : "(optional, float) Altitude accuracy of recorded location",
"altitude" : "(optional, float) [PII] Altitude of recorded location",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_model" : "(optional, string) Model of the device",
"latitude" : "(required, float) [PII] Latitude of recorded location",
"ll_accuracy" : "(optional, float) Accuracy of the latitude and longitude of recorded location",
"longitude" : "(required, float) [PII] Longitude of recorded location",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"idfa" : "(optional, string) [PII] Advertising identifier",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Location (users.behaviors.Location)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"alt_accuracy" : "(optional, float) Altitude accuracy of recorded location",
"altitude" : "(optional, float) [PII] Altitude of recorded location",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"latitude" : "(required, float) [PII] Latitude of recorded location",
"ll_accuracy" : "(optional, float) Accuracy of the latitude and longitude of recorded location",
"longitude" : "(required, float) [PII] Longitude of recorded location",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Location (users.behaviors.Location)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"alt_accuracy" : "(optional, float) Altitude accuracy of recorded location",
"altitude" : "(optional, float) [PII] Altitude of recorded location",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"latitude" : "(required, float) [PII] Latitude of recorded location",
"ll_accuracy" : "(optional, float) Accuracy of the latitude and longitude of recorded location",
"longitude" : "(required, float) [PII] Longitude of recorded location"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Detalles de la propiedad
- Para
ad_id,ad_id_typeyad_tracking_enabled, debes recopilar explícitamente el IDFA de iOS y el ID de publicidad de Google de Android a través de los SDK nativos. Más información aquí: iOS, Android. - Si utilizas Kafka para ingestar datos de Currents, ponte en contacto con tu administrador del éxito del cliente o director de cuentas para habilitar el conmutador de características para el envío de
ad_id.
Eventos de compra
Este evento se produce cuando un usuario realiza una compra. Utiliza estos datos para rastrear cuándo los usuarios compran algo en la aplicación.
Las compras son eventos personalizados especiales y vienen con una cadena codificada en JSON de propiedades de eventos personalizados de la misma forma que los eventos personalizados.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// users.behaviors.Purchase
{
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"currency" : "(required, string) Currency of the purchase",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"price" : "(required, float) Price of the purchase",
"product_id" : "(required, string) ID of the product purchased",
"properties" : "(required, string) Custom properties stored as a JSON encoded string",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
// Purchase (users.behaviors.Purchase)
{
"adid" : "(optional, string) [PII] Advertising identifier",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"currency" : "(required, string) Currency of the purchase",
"device_model" : "(optional, string) Model of the device",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"idfa" : "(optional, string) [PII] Advertising identifier",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"price" : "(required, float) Price of the purchase",
"productId" : "(required, string) ID of the product purchased",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Purchase (users.behaviors.Purchase)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"currency" : "(required, string) Currency of the purchase",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"price" : "(required, float) Price of the purchase",
"product_id" : "(required, string) ID of the product purchased",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// Purchased (users.behaviors.Purchase)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"ad_id" : "(optional, string) [PII] Advertising identifier",
"ad_id_type" : "(optional, string) One of ['ios_idfa', 'google_ad_id', 'windows_ad_id', 'roku_ad_id']",
"ad_tracking_enabled" : "(optional, boolean) Whether advertising tracking is enabled for the device",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"currency" : "(required, string) Currency of the purchase",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"price" : "(required, float) Price of the purchase",
"product_id" : "(required, string) ID of the product purchased"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Detalles de la propiedad
- En el caso de los eventos de compra, la carga útil también se completará con cualquier propiedad del evento de compra asociada al evento.
- Para
ad_id,ad_id_typeyad_tracking_enabled, debes recopilar explícitamente el IDFA de iOS y el ID de publicidad de Google de Android a través de los SDK nativos. Más información aquí: iOS, Android. - Si utilizas Kafka para ingestar datos de Currents, ponte en contacto con tu administrador del éxito del cliente o director de cuentas para habilitar el conmutador de características para el envío de
ad_id.
Eventos de primera sesión
Este evento se produce cuando un usuario inicia su primera sesión en tu aplicación. Utiliza estos datos para saber cuándo los usuarios inician sesiones.
Cuando un usuario inicia su primera sesión, se disparan tanto el evento FirstSession como el evento SessionStart.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// users.behaviors.app.FirstSession
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(required, string) API ID of the app on which this event occurred",
"country" : "(optional, string) [DEPRECATED]",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"gender" : "(optional, string) [DEPRECATED]",
"id" : "(required, string) Globally unique ID for this event",
"language" : "(optional, string) [DEPRECATED]",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"sdk_version" : "(optional, string) [DEPRECATED]",
"session_id" : "(required, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"timezone" : "(optional, string) Time zone of the user",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// First Session (users.behaviors.app.FirstSession)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_model" : "(optional, string) Model of the device",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// First Session (users.behaviors.app.FirstSession)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// First Session (users.behaviors.app.FirstSession)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"session_id" : "(required, string) UUID of the session"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de fin de sesión
Esto ocurre cuando un usuario sale de tu aplicación, finalizando así su sesión actual. Utiliza estos datos para rastrear cuándo terminan las sesiones y, junto con el evento de inicio de sesión correspondiente, calcular la duración de su tiempo en una sesión.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// users.behaviors.app.SessionEnd
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(required, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"duration" : "(optional, float) Duration of the session in seconds",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(required, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Session End (users.behaviors.app.SessionEnd)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_model" : "(optional, string) Model of the device",
"duration" : "(optional, float) Duration of the session in seconds",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// Session End (users.behaviors.app.SessionEnd)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"duration" : "(optional, float) Duration of the session in seconds",
"$insert_id" : "(required, string) Globally unique ID for this event",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Session Ended (users.behaviors.app.SessionEnd)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"duration" : "(optional, float) Duration of the session in seconds",
"session_id" : "(required, string) UUID of the session"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de inicio de sesión
Este evento se produce cuando un usuario inicia una sesión. Utiliza estos datos para saber cuándo los usuarios inician sesiones.
Cuando un usuario inicia su primera sesión, se disparan tanto el evento FirstSession como el evento SessionStart.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// users.behaviors.app.SessionStart
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(required, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"device_model" : "(optional, string) Model of the device",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(required, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Session Start (users.behaviors.app.SessionStart)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_model" : "(optional, string) Model of the device",
"os_version" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Session Start (users.behaviors.app.SessionStart)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"$device" : "(optional, string) Model of the device",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"$os" : "(optional, string) Version of the operating system of the device",
"platform" : "(optional, string) Platform of the device",
"session_id" : "(optional, string) UUID of the session",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Session Started (users.behaviors.app.SessionStart)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : {
"model" : "(optional, string) Model of the device",
"type" : "(optional, string) Platform of the device"
},
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"session_id" : "(required, string) UUID of the session"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de cambio de token Push To Start de Live Activity
Este evento se produce cuando Braze sincroniza el token Push To Start de Live Activity con el usuario.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// users.behaviors.liveactivity.PushToStartTokenChange
{
"activity_attributes_type" : "(optional, string) Live Activity attribute type",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_to_start_token" : "(optional, string) Live Activity push to start token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"sdk_version" : "(optional, string) Version of the Braze SDK in use during the event",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Live Activity Push To Start Token Change (users.behaviors.liveactivity.PushToStartTokenChange)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"activity_attributes_type" : "(optional, string) Live Activity attribute type",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_to_start_token" : "(optional, string) Live Activity push to start token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Live Activity Push To Start Token Change (users.behaviors.liveactivity.PushToStartTokenChange)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"activity_attributes_type" : "(optional, string) Live Activity attribute type",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_to_start_token" : "(optional, string) Live Activity push to start token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Live Activity Push To Start Token Changed (users.behaviors.liveactivity.PushToStartTokenChange)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : { },
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"activity_attributes_type" : "(optional, string) Live Activity attribute type",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_to_start_token" : "(optional, string) Live Activity push to start token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de cambio de token de actualización de Live Activity
Este evento se produce cuando Braze sincroniza el token de actualización de Live Activity con el usuario.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// users.behaviors.liveactivity.UpdateTokenChange
{
"activity_id" : "(optional, string) Live Activity identifier",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"sdk_version" : "(optional, string) Version of the Braze SDK in use during the event",
"time" : "(required, int) UNIX timestamp at which the event happened",
"update_token" : "(optional, string) Live Activity update token",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Live Activity Update Token Change (users.behaviors.liveactivity.UpdateTokenChange)
{
"device_id" : "(optional, string) ID of the device on which the event occurred",
"event_properties" : {
"activity_id" : "(optional, string) Live Activity identifier",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"update_token" : "(optional, string) Live Activity update token"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// Live Activity Update Token Change (users.behaviors.liveactivity.UpdateTokenChange)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"activity_id" : "(optional, string) Live Activity identifier",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"time" : "(required, int) UNIX timestamp at which the event happened",
"token" : "(required, string) The Mixpanel API token",
"update_token" : "(optional, string) Live Activity update token"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Live Activity Update Token Changed (users.behaviors.liveactivity.UpdateTokenChange)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : { },
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"activity_id" : "(optional, string) Live Activity identifier",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"device_id" : "(optional, string) ID of the device on which the event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"update_token" : "(optional, string) Live Activity update token"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Eventos de cambio de estado del token de notificación push
Este evento se produce cuando se inserta, actualiza o elimina un token de notificaciones push. Utilízalo para rastrear los estados de los tokens de notificaciones push.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// users.behaviors.pushnotification.TokenStateChange
{
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"external_user_id" : "(optional, string) [PII] External ID of the user",
"id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"platform" : "(optional, string) Platform of the device",
"push_token" : "(optional, string) Push token of the event",
"push_token_created_at" : "(optional, int) UNIX timestamp at which the push token was created",
"push_token_device_id" : "(optional, string) Device id of the push token",
"push_token_foreground_push_disabled" : "(optional, boolean) Foreground push disabled flag of the push token",
"push_token_provisionally_opted_in" : "(optional, boolean) Provisionally opted in flag of the push token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"push_token_updated_at" : "(optional, int) UNIX timestamp at which the push token was last updated",
"sdk_version" : "(optional, string) Version of the Braze SDK in use during the event",
"time" : "(required, int) UNIX timestamp at which the event happened",
"time_ms" : "(optional, long) Time in millisecond when the event happened",
"user_id" : "(required, string) [PII] Braze user ID of the user who performed this event",
"web_push_token_public_key" : "(optional, string) Public key of the push token, only applies to web push tokens",
"web_push_token_user_auth" : "(optional, string) User auth of the push token, only applies to web push tokens",
"web_push_token_vapid_public_key" : "(optional, string) VAPID public key of the push token, only applies to web push tokens"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
// Push Notification Token State Change (users.behaviors.pushnotification.TokenStateChange)
{
"event_properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"platform" : "(optional, string) Platform of the device",
"push_token" : "(optional, string) Push token of the event",
"push_token_created_at" : "(optional, int) UNIX timestamp at which the push token was created",
"push_token_device_id" : "(optional, string) Device id of the push token",
"push_token_foreground_push_disabled" : "(optional, boolean) Foreground push disabled flag of the push token",
"push_token_provisionally_opted_in" : "(optional, boolean) Provisionally opted in flag of the push token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"push_token_updated_at" : "(optional, int) UNIX timestamp at which the push token was last updated",
"time_ms" : "(optional, long) Time in millisecond when the event happened",
"web_push_token_public_key" : "(optional, string) Public key of the push token, only applies to web push tokens",
"web_push_token_user_auth" : "(optional, string) User auth of the push token, only applies to web push tokens",
"web_push_token_vapid_public_key" : "(optional, string) VAPID public key of the push token, only applies to web push tokens"
},
"event_type" : "(required, string) The event type name, as it is exported to Amplitude",
"insert_id" : "(required, string) Globally unique ID for this event",
"library" : "Braze",
"time" : "(required, int) UNIX timestamp at which the event happened",
"user_id" : "(optional, string) [PII] External ID of the user"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
// Push Notification Token State Change (users.behaviors.pushnotification.TokenStateChange)
{
"event" : "(required, string) The event type name, as it is exported to Mixpanel",
"properties" : {
"$partner_id" : "braze",
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"distinct_id" : "(required, string) [PII] External ID of the user",
"$insert_id" : "(required, string) Globally unique ID for this event",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"platform" : "(optional, string) Platform of the device",
"push_token" : "(optional, string) Push token of the event",
"push_token_created_at" : "(optional, int) UNIX timestamp at which the push token was created",
"push_token_device_id" : "(optional, string) Device id of the push token",
"push_token_foreground_push_disabled" : "(optional, boolean) Foreground push disabled flag of the push token",
"push_token_provisionally_opted_in" : "(optional, boolean) Provisionally opted in flag of the push token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"push_token_updated_at" : "(optional, int) UNIX timestamp at which the push token was last updated",
"time" : "(required, int) UNIX timestamp at which the event happened",
"time_ms" : "(optional, long) Time in millisecond when the event happened",
"token" : "(required, string) The Mixpanel API token",
"web_push_token_public_key" : "(optional, string) Public key of the push token, only applies to web push tokens",
"web_push_token_user_auth" : "(optional, string) User auth of the push token, only applies to web push tokens",
"web_push_token_vapid_public_key" : "(optional, string) VAPID public key of the push token, only applies to web push tokens"
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
// Push Notification Token State Changed (users.behaviors.pushnotification.TokenStateChange)
{
"anonymousId" : "(required, string) [PII] Braze user ID of the user who performed this event",
"context" : {
"device" : { },
"traits" : { }
},
"event" : "(required, string) The event type name, as it is exported to Segment",
"messageId" : "(required, string) Globally unique ID for this event",
"properties" : {
"app_group_id" : "(optional, string) API ID of the app group this user belongs to",
"app_id" : "(optional, string) API ID of the app on which this event occurred",
"ios_push_token_apns_gateway" : "(optional, int) APNS gateway of the push token, only applies to iOS push tokens, 1 for development, 2 for production",
"push_token" : "(optional, string) Push token of the event",
"push_token_created_at" : "(optional, int) UNIX timestamp at which the push token was created",
"push_token_device_id" : "(optional, string) Device id of the push token",
"push_token_foreground_push_disabled" : "(optional, boolean) Foreground push disabled flag of the push token",
"push_token_provisionally_opted_in" : "(optional, boolean) Provisionally opted in flag of the push token",
"push_token_state_change_type" : "(optional, string) A description of the push token state change type",
"push_token_updated_at" : "(optional, int) UNIX timestamp at which the push token was last updated",
"time_ms" : "(optional, long) Time in millisecond when the event happened",
"web_push_token_public_key" : "(optional, string) Public key of the push token, only applies to web push tokens",
"web_push_token_user_auth" : "(optional, string) User auth of the push token, only applies to web push tokens",
"web_push_token_vapid_public_key" : "(optional, string) VAPID public key of the push token, only applies to web push tokens"
},
"timestamp" : "(required, int) UNIX timestamp at which the event happened",
"type" : "track",
"userId" : "(optional, string) [PII] External ID of the user"
}
Detalles de la propiedad
- El campo
push_token_foreground_push_disabledindica si el token de notificaciones push puede recibir notificaciones push en primer plano o en segundo plano.- Si el usuario ha otorgado explícitamente el permiso para las notificaciones push en su dispositivo, este valor será
false, y el token podrá recibir notificaciones push en primer plano. - Si el usuario ha denegado explícitamente el permiso para las notificaciones push en su dispositivo, este valor será
true, y el token solo podrá recibir notificaciones push en segundo plano. - Si el permiso push es desconocido, este campo estará vacío. De forma predeterminada, Braze intentará enviar notificaciones push en primer plano al token.
- Si el usuario ha otorgado explícitamente el permiso para las notificaciones push en su dispositivo, este valor será
- El campo
push_token_provisionally_opted_insolo se aplica a los tokens de notificaciones push de iOS.- Si tienes configurada la autorización provisional, los tokens provisionales tendrán este campo establecido en
true. El resto de tokens de notificaciones push seránfalse.
- Si tienes configurada la autorización provisional, los tokens provisionales tendrán este campo establecido en
- El campo
sdk_versionsolo se rellenará si el cambio de estado del token es iniciado por el SDK.- Si hay un evento
changeUserdel SDK que desencadena el traslado del token de un usuario a otro, se rellenará el camposdk_version. - Si hay un rebote de push (por ejemplo, debido a una desinstalación), el campo
sdk_versionquedará en blanco.
- Si hay un evento
- Cada vez que un token de notificaciones push entra en Braze, se registran los eventos de su ciclo de vida. Hay tres tipos de eventos de cambio de token (“add”, “update” y “remove”) registrados en el campo
push_token_state_change_type.
Tipos de eventos
Añadir
Se ingesta un evento “add” cuando se registra un nuevo token. Esto ocurre cuando un usuario abre la aplicación en un nuevo dispositivo por primera vez, o cuando se establece un token a través del punto de conexión /users/track con push_tokens para un usuario que no tenía uno anteriormente.
Actualizar
Se ingesta un evento “update” cuando cambia una propiedad de un token existente sin que cambie la cadena del token en sí. El token tiene la misma cadena, el mismo usuario y la misma aplicación, pero uno o varios de los siguientes campos han cambiado: foreground_push_disabled, puerta de enlace APN, claves de notificaciones push web, provisionally_opted_in o device_id.
En la mayoría de los casos, la reinstalación de la aplicación o la restauración de una copia de seguridad da como resultado un nuevo evento “add” con un nuevo push_token y un nuevo device_id (porque el SDK genera un nuevo device_id y el sistema operativo proporciona una nueva cadena de token de notificaciones push). Esto crea dos entradas separadas para el token y el dispositivo en el perfil de usuario, y la entrada más antigua se elimina posteriormente mediante Uninstall Tracking o el envío de campañas.
Sería muy raro que solo cambiara el device_id sin que cambiara el push_token (esto requeriría que el sistema operativo devolviera la misma cadena de token después de la reinstalación).
Eliminar
Se ingesta un evento independiente “remove” cuando Braze elimina un token. Esto puede ocurrir por varias razones:
- Rebote de push (APN, FCM o HMS informan de que el token no es válido o ha caducado)
- Detección de desinstalación mediante push silencioso
- Token eliminado a través de la API REST o el servicio de feedback de APNs
Pares de añadir y eliminar
Los pares de añadir y eliminar se dividen en dos categorías:
Actualización de la cadena de token (mismo usuario): El sistema operativo rota la cadena de token en el mismo dispositivo (por ejemplo, rotación de tokens APN o FCM). El evento “add” (nuevo token) y el evento “remove” (token antiguo) tienen el mismo user_id, el mismo device_id, diferente push_token e idéntico time_ms.
Movimiento de token entre usuarios: Un token pasa de un usuario a otro. El evento “add” (nuevo usuario) y el evento “remove” (usuario antiguo) tienen diferente user_id, mismo device_id, mismo push_token y diferente time_ms (normalmente con una diferencia inferior a 100 milisegundos). Esto se desencadena por cualquiera de las siguientes causas:
- El SDK llama a
changeUserdesde un perfil anónimo a un perfil identificado. El evento “remove” tendrá unexternal_user_idvacío. - El SDK llama a
changeUserde un perfil identificado a otro. Ambos eventos tendrán unexternal_user_idno vacío. - El punto de conexión
/users/mergeo la limpieza de usuarios duplicados traslada los tokens del usuario huérfano al usuario superviviente.
Si se identifica un perfil anónimo a través del punto de conexión /users/identify, el user_id no cambia y no se emite ningún evento de cambio de estado del token.
Consultar el último estado activo del token
Para determinar el estado actual del token de notificaciones push de cada usuario, particiona los eventos de cambio de estado del token por push_token, user_id y app_id, luego ordena por time_ms descendente y filtra los eventos “remove”. Internamente, un token se identifica mediante su cadena de token y app_id por usuario. No se recomienda utilizar device_id como clave de partición, ya que device_id es un atributo mutable y la partición basada en él podría dividir el ciclo de vida de un único token en varias particiones.
La siguiente consulta SQL devuelve el último estado activo del token por usuario en Snowflake:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
WITH latest_token_state AS (
SELECT *,
ROW_NUMBER() OVER (
PARTITION BY PUSH_TOKEN, USER_ID, APP_ID
ORDER BY COALESCE(TIME_MS, TIME * 1000) DESC
) AS rn
FROM USERS_BEHAVIORS_PUSHNOTIFICATION_TOKENSTATECHANGE
)
SELECT
PUSH_TOKEN, USER_ID, EXTERNAL_USER_ID, PUSH_TOKEN_DEVICE_ID,
PUSH_TOKEN_STATE_CHANGE_TYPE, PUSH_TOKEN_FOREGROUND_PUSH_DISABLED,
TIME_MS, PLATFORM, APP_ID
FROM latest_token_state
WHERE rn = 1
AND PUSH_TOKEN_STATE_CHANGE_TYPE != 'remove';
Editar esta página en GitHub