Establecer ID de usuario
Aprende a configurar los ID de usuario a través del SDK de Braze. Son identificadores únicos que te permiten realizar el seguimiento de los usuarios en distintos dispositivos y plataformas, importar sus datos a través de la API de datos de usuario y enviar mensajes dirigidos a través de la API de mensajería. Si no asignas un ID único a un usuario, Braze le asignará un ID anónimo; sin embargo, no podrás utilizar estas características hasta que lo hagas.

Para los SDK envolventes que no aparecen en la lista, utiliza el método nativo de Android o Swift correspondiente.
Acerca de los usuarios anónimos
Después de integrar el SDK de Braze, los usuarios que inicien tu aplicación por primera vez se considerarán “anónimos” hasta que llames al método changeUser y les asignes un external_id. Una vez asignados, no puedes volver a hacerlos anónimos. Sin embargo, si desinstalan y vuelven a instalar tu aplicación, volverán a ser anónimos hasta que se llame a changeUser.
Si un usuario previamente identificado inicia una sesión en un nuevo dispositivo, toda su actividad anónima se sincronizará automáticamente con su perfil existente después de que llames a changeUser en ese dispositivo utilizando su external_id. Esto incluye cualquier atributo, evento o historial recopilado durante la sesión en el nuevo dispositivo.
Prevenir el seguimiento de usuarios anónimos
Si tu caso de uso requiere que no se recopilen datos antes de que un usuario sea identificado, puedes retrasar la inicialización del SDK de Braze hasta que el usuario inicie sesión y haya un external_id disponible. Establece una bandera en tu código que cambie a true cuando el usuario inicie sesión, y solo inicializa el SDK cuando esa bandera esté establecida.

Solo retrasa la inicialización la primera vez que un usuario descargue tu aplicación (antes de que se establezca un external_id). Si impides que el SDK se inicialice cada vez que un usuario cierra sesión o inicia una nueva sesión, esto interferirá con la precarga de activos de mensajes dentro de la aplicación y tarjetas de contenido, lo que puede provocar errores de capacidad de entrega en esas Campaigns.
Establecer un ID de usuario
Para establecer un ID de usuario, llama al método changeUser() después de que el usuario inicie sesión por primera vez. Los ID deben ser únicos y seguir nuestras buenas prácticas de nomenclatura.
Si estás aplicando un hash a un identificador único, asegúrate de normalizar la entrada de tu función de hash. Por ejemplo, cuando apliques un hash a una dirección de correo electrónico, elimina los espacios en blanco iniciales o finales y ten en cuenta la localización.
Para una implementación estándar del SDK Web, puedes utilizar el siguiente método:
1
braze.changeUser(YOUR_USER_ID_STRING);
Si prefieres utilizar Google Tag Manager, puedes usar el tipo de etiqueta Change User para llamar al método changeUser. Úsalo cada vez que un usuario inicie sesión o se identifique de alguna otra forma con su identificador único external_id.
Asegúrate de introducir el ID único del usuario actual en el campo External User ID, que generalmente se rellena mediante una variable de capa de datos enviada por tu sitio web.

1
Braze.getInstance(context).changeUser(YOUR_USER_ID_STRING);
1
Braze.getInstance(context).changeUser(YOUR_USER_ID_STRING)
1
AppDelegate.braze?.changeUser(userId: "YOUR_USER_ID")
1
[AppDelegate.braze changeUser:@"YOUR_USER_ID_STRING"];

changeUser pone en cola el cambio de usuario y retorna inmediatamente en el hilo que realiza la llamada. Cualquier setter de atributos llamado en braze.user después se serializa automáticamente detrás de las operaciones iniciadas por changeUser. La lectura de braze.user.id bloquea el hilo que realiza la llamada hasta que el cambio de usuario se complete por completo. Para contextos del hilo principal o sensibles a la latencia, utiliza en su lugar las alternativas no bloqueantes.
1
2
3
4
5
6
7
// Completion handler — always delivers on the main thread.
AppDelegate.braze?.user.getId { userId in
print("User ID:", userId ?? "anonymous")
}
// Async/await (iOS 13.0+, tvOS 13.0+, watchOS 6.0+, macOS 10.15+)
let userId = await AppDelegate.braze?.user.getId()
1
2
3
4
// Completion handler — always delivers on the main thread.
[AppDelegate.braze.user getIdWithCompletion:^(NSString * _Nullable userId) {
NSLog(@"User ID: %@", userId ?: @"anonymous");
}];
1
BrazePlugin.changeUser("YOUR_USER_ID");
1
m.Braze.setUserId(YOUR_USER_ID_STRING)
1
AppboyBinding.ChangeUser("YOUR_USER_ID_STRING");
1
Braze.changeUser("YOUR_USER_ID_STRING");
Cómo funciona changeUser()
Cuando llamas a changeUser(), se aplican los siguientes comportamientos:
- Llamar a
changeUser()con el mismo ID de usuario que ya está configurado no tiene efecto en el conteo de sesiones. - Llamar a
changeUser()con un ID de usuario diferente finaliza automáticamente la sesión actual e inicia una nueva. - Cuando un usuario anónimo llama a
changeUser()con un ID de usuario nuevo (uno que aún no existe en Braze), los datos del perfil anónimo se fusionan con el nuevo perfil identificado. - Cuando un usuario anónimo llama a
changeUser()con un ID de usuario existente, los datos del perfil anónimo no se fusionan con el perfil identificado.

Llamar a changeUser() desencadena un vaciado de datos como parte del cierre de la sesión del usuario actual. El SDK vacía automáticamente cualquier dato pendiente del usuario anterior antes de cambiar al nuevo usuario, por lo que no necesitas solicitar manualmente un vaciado de datos antes de llamar a changeUser().

No asignes un único ID de usuario compartido (por ejemplo, un ID externo estático predeterminado) ni llames a changeUser() cuando un usuario cierre la sesión. Hacerlo te impide volver a interactuar con usuarios que hayan iniciado sesión anteriormente en dispositivos compartidos y hace que todos los datos se registren bajo un único ID de usuario, lo que puede provocar que otras características no se comporten como se espera. En su lugar, haz un seguimiento de todos los ID de usuario por separado y asegúrate de que el proceso de cierre de sesión de tu aplicación permita volver a cambiar a un usuario que haya iniciado sesión anteriormente. Cuando se inicia una nueva sesión, Braze actualiza automáticamente los datos del perfil recién activo.
Alias de usuario
Cómo funcionan
Aunque los usuarios anónimos no tienen external_ids, puedes asignarles un alias de usuario. Debes asignar un alias de usuario cuando quieras añadir otros identificadores al usuario pero no sepas cuál es su external_id (por ejemplo, no ha iniciado sesión). Con los alias de usuario, también puedes:
- Utiliza la API Braze para registrar eventos y atributos asociados a usuarios anónimos
- Utiliza el filtro de segmentación ID externo del usuario está en blanco para dirigirte a usuarios anónimos en tu mensajería
Establecer un alias de usuario
Un alias de usuario consta de dos partes: un nombre y una etiqueta. El nombre se refiere al identificador en sí, mientras que la etiqueta se refiere al tipo de identificador al que pertenece. Por ejemplo, si tienes un usuario en una plataforma de asistencia al cliente de terceros con el ID externo 987654, puedes asignarle un alias en Braze con el nombre 987654 y la etiqueta support_id, para poder realizar su seguimiento entre plataformas.
1
braze.getUser().addAlias(ALIAS_NAME, ALIAS_LABEL);
1
Braze.getInstance(context).getCurrentUser().addAlias(ALIAS_NAME, ALIAS_LABEL);
1
Braze.getInstance(context).currentUser?.addAlias(ALIAS_NAME, ALIAS_LABEL)
1
Appboy.sharedInstance()?.user.addAlias(ALIAS_NAME, ALIAS_LABEL)
1
[[Appboy sharedInstance].user addAlias:ALIAS_NAME withLabel:ALIAS_LABEL];
1
2
3
4
{
"alias_name" : (required, string),
"alias_label" : (required, string)
}
1
Braze.addAlias("ALIAS_NAME", "ALIAS_LABEL");
Prácticas recomendadas de nomenclatura de ID
Te recomendamos que crees ID de usuario utilizando el estándar UUID (Universally Unique Identifier), es decir, cadenas de 128 bits aleatorias y bien distribuidas.
Como alternativa, puedes realizar un hash de un identificador único existente (como un nombre o una dirección de correo electrónico) para generar tus ID de usuario. Si lo haces, asegúrate de implementar la autenticación del SDK para evitar la suplantación de identidad de los usuarios.

No utilices un valor fácil de adivinar ni un número incremental para tu ID de usuario. Esto puede exponer a tu organización a ataques maliciosos o a la filtración de datos.
Para mayor seguridad, utiliza la autenticación del SDK.
Aunque es fundamental que nombres correctamente tus ID de usuario desde el principio, siempre puedes renombrarlos en el futuro utilizando el endpoint /users/external_ids/rename.
| Tipos de ID no recomendados | Ejemplo no recomendado |
|---|---|
| ID de perfil visible del usuario o nombre de usuario | JonDoe829525552 |
| Dirección de correo electrónico | [email protected] |
| ID de usuario con autoincremento | 123 |

Evita compartir detalles sobre cómo creas los ID de usuario, ya que esto podría exponer a tu organización a ataques maliciosos o a la filtración de datos.