Objeto de atributos del usuario
Una solicitud API con cualquier campo del objeto de atributos crea o actualiza un atributo con ese nombre y el valor indicado en el perfil de usuario especificado.
Utiliza los nombres de campo de perfil de usuario de Braze (enumerados a continuación o cualquiera de los enumerados en la sección de campos de perfil de usuario de Braze) para actualizar esos valores especiales en el perfil de usuario en el panel o añade tus propios datos de atributos personalizados al usuario.
Cuerpo del objeto
{
// One of "external_id" or "user_alias" or "braze_id" or "email" or "phone" is required
"external_id" : (optional, string) see external user ID,
"user_alias" : (optional, User alias object),
"braze_id" : (optional, string) Braze user identifier,
"email": (optional, string) User email address,
"phone": (optional, string) User phone number,
// Setting this flag to true puts the API in "Update Only" mode.
// When using a "user_alias", "Update Only" defaults to true.
"_update_existing_only" : (optional, boolean),
// See note regarding anonymous push token imports
"push_token_import" : (optional, boolean),
// Braze User Profile Fields
"first_name" : "Alex",
"email" : "[email protected]",
// Custom Attributes
"my_custom_attribute" : value,
"my_custom_attribute_2" : {"inc" : int_value},
"my_array_custom_attribute":[ "Value1", "Value2" ],
// Adding a new value to an array custom attribute
"my_array_custom_attribute" : { "add" : ["Value3"] },
// Removing a value from an array custom attribute
"my_array_custom_attribute" : { "remove" : [ "Value1" ]},
// Array of objects custom attribute
"my_array_of_objects_attribute": [{"key": "value"}, {"key": "value"}],
// Adding to an array of objects (nested custom attribute syntax)
"my_array_of_objects_attribute": { "$add": [{"key": "value"}] },
// Removing from an array of objects (nested custom attribute syntax)
"my_array_of_objects_attribute": { "$remove": [{"$identifier_key": "key", "$identifier_value": "value"}] },
}

Para los atributos personalizados de matriz regulares, usa add y remove (sin $).
Para las matrices de objetos (atributos personalizados anidados), usa $add, $remove y $update en las cargas útiles de solicitud de /users/track. Estos operadores aplican cambios a nivel de objeto haciendo coincidir identificadores ($identifier_key y $identifier_value) y admiten actualizaciones en el lugar con $new_object.
Usa este formato cuando necesites agregar, eliminar o actualizar objetos dentro de una matriz existente preservando el resto del estado de la matriz. Para ejemplos completos de solicitudes, consulta Ejemplo de API de matriz de objetos y Ejemplo de SDK de matriz de objetos.
Para eliminar un atributo de perfil, establécelo como null. Algunos campos, como external_id y user_alias, no pueden eliminarse después de haberse añadido a un perfil de usuario.
Resolución de identificadores
A menos que estés realizando una importación anónima de tokens de notificaciones push, cada objeto de atributos de usuario debe incluir al menos un identificador: external_id, user_alias, braze_id, email o phone. Cuando sea posible, incluye solo un identificador por objeto para evitar ambigüedades sobre qué perfil de usuario se está actualizando o creando.
Ten en cuenta lo siguiente al utilizar identificadores:
external_idyuser_aliasson mutuamente excluyentes. Incluir ambos en el mismo objeto de atributos de usuario devuelve un error. Para añadir un alias a un usuario que ya tiene unexternal_id, usa el endpoint/users/alias/new.emailtiene prioridad sobrephone. Si tantoemailcomophonese incluyen en el mismo objeto, Braze usaemailcomo identificador. Esto significa que los atributos se aplican al perfil de usuario asociado con esa dirección de correo electrónico, incluso si el número de teléfono pertenece a un perfil diferente.

Para evitar comportamientos inesperados, usa un solo identificador por objeto de atributos de usuario. Proporcionar múltiples identificadores que hagan referencia a diferentes perfiles de usuario puede provocar que los atributos se apliquen al perfil incorrecto.
Actualizar solo perfiles existentes
Si deseas actualizar solo perfiles de usuario existentes en Braze, debes pasar la clave _update_existing_only con un valor de true dentro del cuerpo de tu solicitud. Si se omite este valor, Braze crea un nuevo perfil de usuario si el external_id aún no existe.

Si estás creando un perfil de usuario solo con alias a través del endpoint /users/track, debes establecer _update_existing_only en false. Si omites este valor, Braze no crea el perfil solo con alias.
Importación de tokens de notificaciones push
Antes de importar tokens de notificaciones push a Braze, verifica si realmente lo necesitas. Cuando los SDK de Braze están implementados, gestionan los tokens de notificaciones push de forma automática sin necesidad de cargarlos a través de la API.
Si necesitas cargarlos a través de la API, pueden cargarse para usuarios identificados o usuarios anónimos. Esto significa que se necesita un external_id presente, o los usuarios anónimos deben tener la marca push_token_import establecida en true.

Al importar tokens de notificaciones push desde otros sistemas, no siempre se dispone de un external_id. Para mantener la comunicación con estos usuarios durante tu transición a Braze, puedes importar los tokens heredados para usuarios anónimos sin proporcionar external_id especificando push_token_import como true.
Al especificar push_token_import como true:
external_idybraze_idno deben especificarse- El objeto de atributo debe contener un token de notificaciones push
- Si el token ya existe en Braze, la solicitud se ignora; de lo contrario, Braze crea un perfil de usuario temporal y anónimo para cada token que te permita seguir enviando mensajes a estos individuos
Después de la importación, a medida que cada usuario inicie la versión de tu aplicación habilitada con Braze, Braze mueve automáticamente su token de notificaciones push importado a su perfil de usuario de Braze y limpia el perfil temporal.
Braze comprueba una vez al mes si hay algún perfil anónimo con la marca push_token_import que no tenga un token de notificaciones push. Si el perfil anónimo ya no tiene un token de notificaciones push, Braze elimina el perfil. Sin embargo, si el perfil anónimo todavía tiene un token de notificaciones push, lo que sugiere que el usuario real aún no ha iniciado sesión en el dispositivo con dicho token de notificaciones push, Braze no realiza ninguna acción.
Para más información, consulta Migración de tokens de notificaciones push.
Tipos de datos de atributos personalizados
Los siguientes tipos de datos pueden almacenarse como un atributo personalizado:
| Tipo de datos | Notas |
|---|---|
| Matrices | Las matrices de atributos personalizados son compatibles. Cuando agregas un elemento, se añade al final de la matriz. Si el elemento ya existe, se mueve de su posición actual al final. Solo se almacenan valores únicos. Por ejemplo, importar ['hotdog','hotdog','hotdog','pizza'] da como resultado ['hotdog', 'pizza'].Puedes establecer una matriz directamente (por ejemplo, "my_array_custom_attribute":[ "Value1", "Value2" ]), agregar a una matriz existente con "my_array_custom_attribute" : { "add" : ["Value3"] }, o eliminar valores con "my_array_custom_attribute" : { "remove" : [ "Value1" ]}.La cantidad predeterminada y máxima de elementos en una matriz es 500. Puedes actualizar la cantidad máxima de matrices en el panel de Braze, en Configuración de datos > Atributos personalizados. Para más información, consulta Matrices. |
| Matriz de objetos | Usa una matriz de objetos para definir una lista de objetos donde cada objeto contiene un conjunto de atributos. Usa este tipo para almacenar múltiples conjuntos de datos relacionados para un usuario, como estadías en hoteles, historial de compras o preferencias. Por ejemplo, define un atributo personalizado llamado hotel_stays en un perfil de usuario como una matriz donde cada objeto representa una estadía independiente, con atributos como hotel_name, check_in_date y nights_stayed.Las matrices de objetos no tienen límite en la cantidad de elementos, pero sí tienen un tamaño máximo de 100 KB. Si una actualización hace que la matriz supere este límite, Braze descarta la actualización y el atributo no se modifica. Para las cargas útiles de /users/track y SDK, usa $add, $remove y $update para las operaciones de matrices de objetos. Usa add y remove (sin $) para los atributos personalizados de matriz regulares que contienen valores escalares. Para más detalles, consulta Ejemplo de API de matriz de objetos, Ejemplo de SDK de matriz de objetos y Ejemplo de matriz de objetos. |
| Booleanos | true o false |
| Fechas | Almacena las fechas en formato ISO 8601 (recomendado) o en cualquiera de estos formatos: - yyyy-MM-ddTHH:mm:ss:SSSZ - yyyy-MM-ddTHH:mm:ss - yyyy-MM-dd HH:mm:ss - yyyy-MM-dd - MM/dd/yyyy - ddd MM dd HH:mm:ss.TZD YYYY Ten en cuenta que “T” es un designador de tiempo, no un marcador de posición, y no debe cambiarse ni eliminarse. Los valores de fecha que no coincidan con ninguno de los formatos enumerados se almacenan como cadenas en el perfil de usuario en lugar de como el tipo de datos Time. Esto significa que los filtros de segmentación basados en tiempo (como “antes de”, “después de” o “en los últimos X días”) no funcionan para esos atributos. Por ejemplo, Mar 26 2026 06:12 PM +00:00 se almacena como cadena porque no coincide con un formato compatible. Para evitarlo, usa el formato ISO 8601 (como 2026-03-26T18:12:00Z). Los atributos de tiempo sin zona horaria se predeterminan a la medianoche UTC (y se muestran en el panel como el equivalente de la medianoche UTC en la zona horaria de la empresa). Para especificar una zona horaria, agrega un desplazamiento UTC a la marca de tiempo (por ejemplo, 2024-11-10T18:00:00-05:00 para EST). Si el desplazamiento de zona horaria falta o tiene un formato incorrecto, el valor se predetermina a UTC. Las horas se muestran en el panel en la zona horaria de tu empresa. Por ejemplo, 2024-11-10T18:00:00-05:00 (6:00 PM EST) aparecería como la hora equivalente en la zona horaria configurada de tu empresa. Los eventos con marcas de tiempo en el futuro se predeterminan a la hora actual. Para los atributos personalizados regulares, si el año es menor que 0 o mayor que 3000, Braze almacena el valor como cadena en el perfil de usuario. |
| Flotantes | Los atributos personalizados flotantes son números positivos o negativos con punto decimal. Por ejemplo, puedes usar flotantes para almacenar saldos de cuenta o calificaciones de usuario para productos o servicios. |
| Enteros | Puedes incrementar atributos personalizados enteros asignando un objeto con el campo “inc” y la cantidad a sumar. Ejemplo: "my_custom_attribute_2" : {"inc" : int_value}, |
| Atributos personalizados anidados | Los atributos personalizados anidados definen un conjunto de atributos como propiedad de otro atributo. Cuando defines un objeto de atributo personalizado, agregas un conjunto de atributos a ese objeto. Para más información, consulta Atributos personalizados anidados. |
| Cadenas | Los atributos personalizados de cadena son secuencias de caracteres que se usan para almacenar datos de texto. Por ejemplo, puedes usar cadenas para almacenar nombres y apellidos, direcciones de correo electrónico o preferencias. |

Para orientación sobre cuándo usar un evento personalizado frente a un atributo personalizado, consulta Eventos personalizados y Atributos personalizados.
Ejemplo de matriz de objetos
Esta matriz de objetos te permite crear Segments basados en criterios específicos dentro de las estadías y personalizar tus mensajes usando los datos de cada estadía con plantillas de Liquid.
{"hotel_stays": [
{ "hotel_name": "Ocean View Resort", "check_in_date": "2023-06-15", "nights_stayed": 5 },
{ "hotel_name": "Mountain Lodge", "check_in_date": "2023-09-10", "nights_stayed": 3 }
]}
Para ejemplos de matrices de objetos que usan $add, $remove y $update, consulta Ejemplo de API de matriz de objetos y Ejemplo de SDK de matriz de objetos.
Campos del perfil de usuario de Braze

Los siguientes campos del perfil de usuario distinguen entre mayúsculas y minúsculas, así que asegúrate de hacer referencia a estos campos en minúsculas.

Para una referencia orientada al cliente sobre los atributos estándar, organizada por categoría e incluyendo orientación para SDK, API, CSV e ingesta de datos en la nube, consulta Atributos estándar.
| Campo del perfil de usuario | Especificación del tipo de datos |
|---|---|
| alias_name | (cadena) |
| alias_label | (cadena) |
| braze_id | (cadena, opcional) Cuando un perfil de usuario es reconocido por el SDK, se crea un perfil de usuario anónimo con un braze_id asociado. El braze_id es asignado automáticamente por Braze, no puede editarse y es específico del dispositivo. |
| country | (cadena) Requerimos que los códigos de país se pasen a Braze en el estándar ISO-3166-1 alpha-2. Nuestra API hace su mejor esfuerzo para asignar los países recibidos en diferentes formatos. Por ejemplo, “Australia” puede asignarse a “AU”. Sin embargo, si la entrada no coincide con un estándar ISO-3166-1 alpha-2 determinado, el valor del país se establece como NULL. Establecer country en un usuario mediante importación CSV o API evita que Braze capture automáticamente esta información a través del SDK. |
| current_location | (objeto) Con el formato {“longitude”: -73.991443, “latitude”: 40.753824} |
| date_of_first_session | (fecha en que el usuario usó la aplicación por primera vez) Cadena en formato ISO 8601 o en cualquiera de los siguientes formatos: - yyyy-MM-ddTHH:mm:ss:SSSZ - yyyy-MM-ddTHH:mm:ss - yyyy-MM-dd HH:mm:ss - yyyy-MM-dd - MM/dd/yyyy - ddd MM dd HH:mm:ss.TZD YYYY |
| date_of_last_session | (fecha en que el usuario usó la aplicación por última vez) Cadena en formato ISO 8601 o en cualquiera de los siguientes formatos: - yyyy-MM-ddTHH:mm:ss:SSSZ - yyyy-MM-ddTHH:mm:ss - yyyy-MM-dd HH:mm:ss - yyyy-MM-dd - MM/dd/yyyy - ddd MM dd HH:mm:ss.TZD YYYY |
| dob | (fecha de nacimiento) Cadena en formato “YYYY-MM-DD”, por ejemplo, 1980-12-21. |
| (cadena) | |
| email_subscribe | (cadena) Los valores disponibles son “opted_in” (registrado explícitamente para recibir mensajes de correo electrónico), “unsubscribed” (canceló la suscripción explícitamente a mensajes de correo electrónico) y “subscribed” (ni optó ni canceló la suscripción). |
| email_open_tracking_disabled | (booleano) Se acepta true o false. Establécelo en true para desactivar el píxel de seguimiento de apertura en todos los correos electrónicos futuros enviados a este usuario. |
| email_click_tracking_disabled | (booleano) Se acepta true o false. Establécelo en true para desactivar el seguimiento de clics en todos los enlaces de un correo electrónico futuro enviado a este usuario. |
| external_id | (cadena) Un identificador único para un perfil de usuario. Después de asignar un external_id, Braze identifica el perfil de usuario en todos los dispositivos del usuario. En la primera instancia de asignar un external_id a un perfil de usuario desconocido, Braze migra todos los datos existentes del perfil de usuario al nuevo perfil de usuario. |
Hash que contiene cualquiera de id (cadena), likes (matriz de cadenas), num_friends (entero). |
|
| first_name | (cadena) |
| gender | (cadena) “M”, “F”, “O” (otro), “N” (no aplica), “P” (prefiere no decir) o null (desconocido). |
| home_city | (cadena) |
| language | (cadena) Requerimos que el idioma se pase a Braze en el estándar ISO-639-1. Para los idiomas compatibles, consulta nuestra lista de idiomas aceptados. Establecer language en un usuario mediante importación CSV o API evita que Braze capture automáticamente esta información a través del SDK. |
| last_name | (cadena) |
| marked_email_as_spam_at | (cadena) Fecha en la que el correo electrónico del usuario fue marcado como correo no deseado. Aparece en formato ISO 8601 o en cualquiera de los siguientes formatos: - yyyy-MM-ddTHH:mm:ss:SSSZ - yyyy-MM-ddTHH:mm:ss - yyyy-MM-dd HH:mm:ss - yyyy-MM-dd - MM/dd/yyyy - ddd MM dd HH:mm:ss.TZD YYYY |
| phone | (cadena) Recomendamos proporcionar los números de teléfono en el formato E.164. Para más detalles, consulta Números de teléfono del usuario. |
| push_subscribe | (cadena) Los valores disponibles son “opted_in” (registrado explícitamente para recibir mensajes push), “unsubscribed” (canceló la suscripción explícitamente a mensajes push) y “subscribed” (ni optó ni canceló la suscripción). |
| push_tokens | Matriz de objetos con app_id y cadena token. Opcionalmente puedes proporcionar un device_id para el dispositivo al que está asociado este token, por ejemplo, [{"app_id": App Identifier, "token": "abcd", "device_id": "optional_field_value"}]. Si no se proporciona un device_id, se genera uno aleatoriamente. |
| subscription_groups | Matriz de objetos con subscription_group_id y cadena subscription_state, por ejemplo, [{"subscription_group_id" : "subscription_group_identifier", "subscription_state" : "subscribed"}]. Los valores disponibles para subscription_state son “subscribed” y “unsubscribed”. |
| time_zone | (cadena) Nombre de zona horaria de la base de datos de zonas horarias de IANA (por ejemplo, “America/New_York” o “Eastern Time (US & Canada)”). Solo se establecen valores de zona horaria válidos. |
Hash que contiene cualquiera de id (entero), screen_name (cadena, nombre de usuario de X (anteriormente Twitter)), followers_count (entero), friends_count (entero), statuses_count (entero). |
Los valores de idioma que se establecen explícitamente a través de esta API tienen prioridad sobre la información de configuración regional que Braze recibe automáticamente del dispositivo.
Ejemplo de solicitud de atributos de usuario
Este ejemplo contiene cuatro objetos de atributos de usuario, de un total de 75 objetos de atributos permitidos por llamada a la API.
POST https://YOUR_REST_API_URL/users/track
Content-Type: application/json
Authorization: Bearer YOUR-REST-API-KEY
{
"attributes" : [
{
"external_id" : "user1",
"first_name" : "Alex",
"has_profile_picture" : true,
"dob": "1988-02-14",
"music_videos_favorited" : { "add" : [ "calvinharris-summer" ], "remove" : ["nickiminaj-anaconda"] }
},
{
"external_id" : "user2",
"first_name" : "Lee",
"has_profile_picture" : false,
"push_tokens": [{"app_id": "Your App Identifier", "token": "abcd", "device_id": "optional_field_value"}]
},
{
"user_alias" : { "alias_name" : "device123", "alias_label" : "my_device_identifier"},
"first_name" : "Yuri",
"has_profile_picture" : false
},
{
"external_id": "user3",
"subscription_groups" : [{"subscription_group_id" : "subscription_group_identifier", "subscription_state" : "subscribed"}]
}
]
}
Migrar tokens de notificaciones push
Si enviabas notificaciones push antes de integrar Braze, ya sea por tu cuenta o a través de otro proveedor, la migración de tokens de notificaciones push te permite seguir enviando notificaciones push a tus usuarios con tokens de notificaciones push registrados.
Migración automática a través del SDK
Después de integrar el SDK de Braze, los tokens de notificaciones push de los usuarios que han dado su consentimiento se migran automáticamente la próxima vez que abran tu aplicación. Hasta entonces, no puedes enviar notificaciones push a esos usuarios a través de Braze.
Como alternativa, puedes migrar tus tokens de notificaciones push manualmente, lo que te permite volver a captar a tus usuarios de forma más rápida.
Consideraciones sobre tokens web
Debido a la naturaleza de los tokens de notificaciones push web, ten en cuenta lo siguiente al implementar push para web:
| Consideración | Detalles |
|---|---|
| Prestadores de servicios | De forma predeterminada, el SDK Web busca un prestador de servicios en ./service-worker a menos que se especifique otra opción, como manageServiceWorkerExternally o serviceWorkerLocation. Si tu prestador de servicios no está configurado correctamente, puede provocar que los tokens de notificaciones push de tus usuarios caduquen. |
| Tokens caducados | Si un usuario no ha iniciado una sesión web en 60 días, su token de notificaciones push caduca. Dado que Braze no puede migrar tokens de notificaciones push caducados, debes enviar un mensaje preparatorio de push para volver a captarlos. |
Migración manual a través de la API
La migración manual de tokens de notificaciones push es el proceso de importar estas claves previamente creadas a tu plataforma Braze a través de la API.
Migra de forma programática tokens de iOS (APNs) y Android (FCM) a tu plataforma utilizando el endpoint users/track. Puedes migrar tanto usuarios identificados (usuarios con un ID externo asociado) como usuarios anónimos (usuarios sin un ID externo).

Braze asume que los tokens de notificaciones push importados son tokens de notificaciones push en primer plano válidos para tu aplicación y entorno.
Cuando importas tokens de iOS, Braze no almacena una puerta de enlace del servicio de notificaciones push de Apple (APN) (development o production) para ellos. Braze envía a estos tokens a través de la puerta de enlace configurada de tu aplicación. Si un token se generó para el otro entorno, APN lo rechaza con BadDeviceToken y el envío rebota.
Braze almacena una puerta de enlace para el token solo si el SDK registra posteriormente el mismo token e informa de una puerta de enlace.
Especifica el app_id de tu aplicación durante la migración de tokens de notificaciones push para asociar el token de notificaciones push adecuado con la aplicación correspondiente. Cada aplicación (iOS, Android, etc.) tiene su propio app_id, que se puede encontrar en la sección Identification de la página Claves de API. Asegúrate de usar el app_id de la plataforma correcta.

No es posible migrar tokens de notificaciones push web a través de la API. Esto se debe a que los tokens de notificaciones push web no siguen el mismo esquema que otras plataformas.
Si intentas migrar tokens de notificaciones push web de forma programática, es posible que veas un error como el siguiente: Received '400: Invalid subscription auth' sending to 'https://fcm.googleapis.com/fcm/send
Como alternativa a la migración por API, te recomendamos integrar el SDK y permitir que tu base de tokens se vuelva a llenar de forma natural.
Para usuarios identificados, establece la marca push_token_import en false (u omite el parámetro) y especifica los valores external_id, app_id y token en el objeto attributes del usuario.
Por ejemplo:
curl --location --request POST 'https://rest.iad-01.braze.com/users/track' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-API-KEY-HERE' \
--data-raw '{
"attributes" : [
{
"push_token_import" : false,
"external_id": "example_external_id",
"country": "US",
"language": "en",
"YOUR_CUSTOM_ATTRIBUTE": "YOUR_VALUE",
"push_tokens": [
{"app_id": "APP_ID_OF_OS", "token": "PUSH_TOKEN_STRING"}
]
}
]
}'
Al importar tokens de notificaciones push de otros sistemas, no siempre se dispone de un external_id. En esta circunstancia, establece la marca push_token_import en true y especifica los valores app_id y token. Braze crea un perfil de usuario temporal y anónimo para cada token, lo que te permite seguir enviando mensajes a estas personas. Si el token ya existe en Braze, la solicitud se ignora.
Por ejemplo:
curl --location --request POST 'https://rest.iad-01.braze.com/users/track' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-API-KEY-HERE' \
--data-raw '{
"attributes": [
{
"push_token_import" : true,
"email": "[email protected]",
"country": "US",
"language": "en",
"YOUR_CUSTOM_ATTRIBUTE": "YOUR_VALUE",
"push_tokens": [
{"app_id": "APP_ID_OF_OS", "token": "PUSH_TOKEN_STRING", "device_id": "DEVICE_ID"}
]
},
{
"push_token_import" : true,
"email": "[email protected]",
"country": "US",
"language": "en",
"YOUR_CUSTOM_ATTRIBUTE_1": "YOUR_VALUE",
"YOUR_CUSTOM_ATTRIBUTE_2": "YOUR_VALUE",
"push_tokens": [
{"app_id": "APP_ID_OF_OS", "token": "PUSH_TOKEN_STRING", "device_id": "DEVICE_ID"}
]
}
]
}'
Tras la importación, cuando el usuario anónimo lance la versión de tu aplicación con Braze habilitado, Braze mueve automáticamente su token de notificaciones push importado a su perfil de usuario de Braze y limpia el perfil temporal.
Braze comprueba una vez al mes si hay algún perfil anónimo con la marca push_token_import que no tenga un token de notificaciones push. Si el perfil anónimo ya no tiene un token de notificaciones push, Braze elimina el perfil. Sin embargo, si el perfil anónimo aún tiene un token de notificaciones push, lo que sugiere que el usuario real aún no ha iniciado sesión en el dispositivo con dicho token, Braze no hace nada.
Importar tokens de notificaciones push de iOS
Al migrar tokens de notificaciones push de iOS con /users/track, el campo gateway no se establece en el token de notificaciones push. Braze asume que los tokens importados a través de la API son tokens push de primer plano válidos, pero no puede determinar a qué entorno de APNs pertenece el token.
Sin el campo gateway, Braze utiliza la configuración de entorno alternativo configurada en tu aplicación al enviar notificaciones push. Esto puede provocar errores BadDeviceToken si el entorno real del token difiere del entorno alternativo configurado. Por ejemplo, un token de desarrollo enviado a través de la pasarela de producción fallará.
Para evitar problemas de entrega:
- Asegúrate de que la configuración de entorno de tu aplicación en el panel de Braze coincida con los tokens que estás importando.
- Para aplicaciones en producción, importa solo tokens de producción.
- Para entornos de prueba, verifica que tanto la configuración de tu aplicación como los tokens importados utilicen el entorno de desarrollo.

Los tokens registrados a través del SDK de Braze incluyen el campo gateway automáticamente, ya que el SDK detecta el entorno a partir de los derechos de tu aplicación.
Importar tokens de notificaciones push de Android

La siguiente consideración aplica solo para aplicaciones Android. Las aplicaciones iOS no requieren estos pasos porque esa plataforma solo tiene un framework para mostrar push, y las notificaciones push se muestran inmediatamente siempre que Braze tenga los tokens de notificaciones push y certificados necesarios.
Si necesitas enviar notificaciones push de Android a tus usuarios antes de que la integración del SDK de Braze esté completa, utiliza pares clave-valor para validar las notificaciones push.
Debes tener un receptor para gestionar y mostrar las cargas útiles de push. Para notificar al receptor de la carga útil de push, añade los pares clave-valor necesarios a la Campaign de push. Los valores de estos pares dependen del partner de push específico que hayas utilizado antes de Braze.

Para algunos proveedores de notificaciones push, Braze necesita aplanar los pares clave-valor para que puedan interpretarse correctamente. Para aplanar los pares clave-valor de una aplicación Android específica, contacta con tu administrador de éxito de cliente.
Preguntas frecuentes
¿Cómo encuentro usuarios tratados como correo no deseado o bloqueados para la mensajería?
Braze no proporciona una lista de correo no deseado específica en el panel. Braze bloquea perfiles de usuario individuales (“usuarios ficticios”) con más de cinco millones de sesiones, más de 20 000 nombres de eventos personalizados distintos o más de 20 000 nombres de productos distintos en compras, y deja de ingerir todos los datos entrantes para ese perfil tanto de los SDK como de la REST API. Si un identificador está bloqueado, /users/track puede devolver el error "provided external_id is blacklisted and disallowed". Esta redacción se toma textualmente de la respuesta de la API. Para encontrar perfiles bloqueados por sesiones excesivas, crea un Segment con el filtro Session Count configurado en more than 5,000,000, exporta el Segment como CSV y comprueba los campos del perfil en Engagement > Search users o con el endpoint /users/export/ids. No existe un filtro equivalente para nombres de eventos personalizados o nombres de productos distintos, así que contacta a tu director de cuentas de Braze para identificar perfiles bloqueados por esas razones. Para obtener más información, consulta Bloqueo de correo no deseado.