Skip to content

Resumen de la API

Este artículo de referencia cubre los conceptos básicos de la API, incluida la terminología común y un resumen de las claves de la API REST, los permisos y cómo mantenerlas seguras.

Colección API REST de Braze

Colección Propósito
Catálogos Crea y administra catálogos y artículos de catálogo para referenciarlos en tus Campaigns de Braze.
Ingesta de datos de Cloud Gestiona las integraciones y sincronizaciones de tu almacén de datos.
Listas y direcciones de correo electrónico Configura y gestiona la sincronización bidireccional entre Braze y tus sistemas de correo electrónico.
Exportar Accede y exporta varios detalles de tus Campaigns, Canvas, KPI y mucho más.
Biblioteca de medios Administra los activos dentro de Braze.
Mensajes Programa, envía y gestiona tus Campaigns y Canvas.
Centro de preferencias Construye tu centro de preferencias y actualiza su estilo.
SCIM Administra las identidades de los usuarios en aplicaciones y servicios basados en la nube.
SMS Gestiona los números de teléfono de tus usuarios en tus grupos de suscripción.
Grupos de suscripción Enumera y actualiza los grupos de suscripción por SMS y correo electrónico almacenados en el panel de Braze.
Plantillas Crea y actualiza plantillas para mensajes por correo electrónico y Content Blocks.
Datos de usuario Identifica, rastrea y administra a tus usuarios.

Definiciones de la API

A continuación encontrarás un resumen de los términos que puedes ver en la documentación de la API REST de Braze.

Puntos finales

Braze gestiona varias instancias diferentes para nuestro dashboard y puntos finales REST. Cuando tu cuenta esté aprovisionada, iniciarás sesión en una de las siguientes URL. Utiliza el punto final REST correcto en función de la instancia a la que estés aprovisionado. Si no estás seguro, abre un ticket de soporte o utiliza la siguiente tabla para emparejar la URL del dashboard que utilizas con el punto final REST correcto.

Para encontrar tu punto final REST en Braze:

  1. Inicia sesión en Braze y ve a Settings > APIs and Identifiers > API Keys.
  2. Selecciona una clave de API existente o selecciona Create API Key para crear una nueva.
  3. Copia el punto final REST que se muestra en esta pestaña y utilízalo para tus solicitudes de API.
Instancia URL Punto de conexión REST Punto final de SDK
US-01 https://dashboard-01.braze.com https://rest.iad-01.braze.com sdk.iad-01.braze.com
US-02 https://dashboard-02.braze.com https://rest.iad-02.braze.com sdk.iad-02.braze.com
US-03 https://dashboard-03.braze.com https://rest.iad-03.braze.com sdk.iad-03.braze.com
US-04 https://dashboard-04.braze.com https://rest.iad-04.braze.com sdk.iad-04.braze.com
US-05 https://dashboard-05.braze.com https://rest.iad-05.braze.com sdk.iad-05.braze.com
US-06 https://dashboard-06.braze.com https://rest.iad-06.braze.com sdk.iad-06.braze.com
US-07 https://dashboard-07.braze.com https://rest.iad-07.braze.com sdk.iad-07.braze.com
US-08 https://dashboard-08.braze.com https://rest.iad-08.braze.com sdk.iad-08.braze.com
US-10 https://dashboard.us-10.braze.com https://rest.us-10.braze.com sdk.us-10.braze.com
EU-01 https://dashboard-01.braze.eu https://rest.fra-01.braze.eu sdk.fra-01.braze.eu
EU-02 https://dashboard-02.braze.eu https://rest.fra-02.braze.eu sdk.fra-02.braze.eu
AU-01 https://dashboard.au-01.braze.com https://rest.au-01.braze.com sdk.au-01.braze.com
ID-01 https://dashboard.id-01.braze.com https://rest.id-01.braze.com sdk.id-01.braze.com
JP-01 https://dashboard.jp-01.braze.com https://rest.jp-01.braze.com sdk.jp-01.braze.com
KR-01 https://dashboard.kr-01.braze.com https://rest.kr-01.braze.com sdk.kr-01.braze.com

Límites de la API

Para la mayoría de las API, Braze tiene un límite de velocidad predeterminado de 250 000 solicitudes por hora. Sin embargo, ciertos tipos de solicitudes tienen su propio límite de velocidad para gestionar mejor los grandes volúmenes de datos de la base de clientes. Para más detalles, consulta los límites de velocidad de la API.

ID de usuario

  • ID externo de usuario: El external_id sirve como identificador único del usuario cuyos datos envías. Este identificador debe ser el mismo que el que estableciste en el SDK de Braze para evitar crear varios perfiles para el mismo usuario.
  • ID de usuario de Braze: braze_id sirve como identificador único de usuario establecido por Braze. Puedes utilizar este identificador para eliminar usuarios a través de la REST API, además de los external_ids.

Para más información, consulta los siguientes artículos en función de tu plataforma: iOS, Android y Web.

Acerca de las claves de API REST

Una clave de API REST (clave de interfaz de programación de aplicaciones REST) es un código único que se pasa a una API para autenticar la llamada e identificar la aplicación o el usuario que realiza la llamada. Accedes a la API mediante solicitudes web HTTPS al punto final de la REST API de tu empresa. Las claves de API REST funcionan en conjunto con las claves identificadoras de aplicaciones para realizar el seguimiento, acceder, enviar, exportar y analizar datos con el fin de garantizar que todo funcione correctamente.

Los espacios de trabajo y las claves de API van de la mano en Braze. Los espacios de trabajo están diseñados para albergar versiones de la misma aplicación en varias plataformas. Muchos clientes también utilizan espacios de trabajo para contener versiones gratuitas y premium de sus aplicaciones en la misma plataforma. Como puedes observar, estos espacios de trabajo también utilizan la REST API y tienen sus propias claves de API REST. Se puede definir individualmente el ámbito de estas claves para que incluyan acceso a puntos finales específicos de la API. Cada llamada a la API tiene que incluir una clave con acceso al punto final correspondiente.

Nos referimos tanto a la clave de la API REST como a la clave de la API del espacio de trabajo como api_key. El api_key se incluye en cada solicitud como encabezado de solicitud y actúa como clave de autenticación que te permite utilizar nuestras REST API. Estas REST API se utilizan para rastrear usuarios, enviar mensajes, exportar datos de usuario, etc. Cuando crees una nueva clave de API REST, debes darle acceso a puntos finales específicos. Al asignar permisos específicos a una clave de API, puedes limitar exactamente qué llamadas puede autenticar dicha clave.

Panel de claves de API REST en la pestaña Claves de API.

Crear claves de API REST

Para crear una nueva clave de API REST:

  1. Ve a Settings > APIs and Identifiers.
  2. Selecciona Create API Key.
  3. Asigna un nombre a tu nueva clave para identificarla de un vistazo.
  4. Especifica las direcciones IP y subredes permitidas para la nueva clave.
  5. Selecciona los permisos que quieres asociar a tu nueva clave.

Permisos de la clave de API REST

Los permisos de clave de API son permisos que puedes asignar a un usuario o grupo para limitar su acceso a determinadas llamadas de API. Para ver tu lista de permisos de clave de API, ve a Settings > APIs and Identifiers y selecciona tu clave de API.

Permiso Punto de conexión Descripción
users.track /users/track Registra atributos de usuario, eventos personalizados y compras.
users.delete /users/delete Elimina cualquier usuario.
users.alias.new /users/alias/new Crea un nuevo alias para un usuario existente.
users.identify /users/identify Identifica a un usuario de solo alias con un ID externo.
users.export.ids /users/export/ids Consulta la información del perfil de usuario por ID de usuario.
users.export.segment /users/export/segment Consulta la información del perfil de usuario por Segment.
users.merge /users/merge Fusiona dos usuarios existentes entre sí.
users.external_ids.rename /users/external_ids/rename Cambia el ID externo de un usuario existente.
users.external_ids.remove /users/external_ids/remove Elimina el ID externo de un usuario existente.
users.alias.update /users/alias/update Actualiza un alias para un usuario existente.
users.export.global_control_group /users/export/global_control_group Consulta la información del perfil de usuario en el Grupo de control global.
Permiso Punto de conexión Descripción
messages.send /messages/send Envía un mensaje inmediato a usuarios concretos.
messages.schedule.create /messages/schedule/create Programa un mensaje para que se envíe a una hora específica.
messages.schedule.update /messages/schedule/update Actualiza un mensaje programado.
messages.schedule.delete /messages/schedule/delete Elimina un mensaje programado.
messages.schedule_broadcasts /messages/scheduled_broadcasts Consulta todos los mensajes de difusión programados.
messages.live_activity.update /messages/live_activity/update Actualiza una actividad en vivo de iOS.
Permiso Punto de conexión Descripción
campaigns.trigger.send /campaigns/trigger/send Desencadena el envío de una Campaign existente.
campaigns.trigger.schedule.create /campaigns/trigger/schedule/create Programa el envío de una Campaign con entrega desencadenada por API.
campaigns.trigger.schedule.update /campaigns/trigger/schedule/update Actualiza una Campaign programada con entrega desencadenada por API.
campaigns.trigger.schedule.delete /campaigns/trigger/schedule/delete Elimina una Campaign programada con entrega desencadenada por API.
campaigns.list /campaigns/list Consulta una lista de Campaigns.
campaigns.data_series /campaigns/data_series Consulta los análisis de una Campaign en un intervalo de tiempo.
campaigns.details /campaigns/details Consulta los detalles de una Campaign concreta.
sends.data_series /sends/data_series Consulta los análisis de envío de mensajes a lo largo de un intervalo de tiempo.
sends.id.create /sends/id/create Crea un ID de envío para el seguimiento de la difusión de mensajes.
campaigns.url_info.details /campaigns/url_info/details Consulta los detalles de la URL de una variación de mensaje concreta dentro de una Campaign.
transactional.send /transactional/v1/campaigns/{campaign_id}/send Permite enviar mensajes transaccionales utilizando el punto final de mensajería transaccional.
Permiso Punto de conexión Descripción
canvas.trigger.send /canvas/trigger/send Desencadena el envío de un Canvas existente.
canvas.trigger.schedule.create /canvas/trigger/schedule/create Programa el envío de un Canvas con entrega desencadenada por API.
canvas.trigger.schedule.update /canvas/trigger/schedule/update Actualiza un Canvas programado con entrega desencadenada por API.
canvas.trigger.schedule.delete /canvas/trigger/schedule/delete Elimina un Canvas programado con entrega desencadenada por API.
canvas.list /canvas/list Consulta una lista de Canvas.
canvas.data_series /canvas/data_series Consulta los análisis de Canvas a lo largo de un intervalo de tiempo.
canvas.details /canvas/details Consulta los detalles de un Canvas concreto.
canvas.data_summary /canvas/data_summary Consulta el acumulado de los análisis de Canvas a lo largo de un intervalo de tiempo.
canvas.url_info.details /canvas/url_info/details Consulta los detalles de la URL de una variación específica de un mensaje dentro de un paso en Canvas.
Permiso Punto de conexión Descripción
segments.list /segments/list Consulta una lista de Segments.
segments.data_series /segments/data_series Consulta los análisis de Segments en un intervalo de tiempo.
segments.details /segments/details Consulta los detalles de un Segment concreto.
Permiso Punto de conexión Descripción
purchases.product_list /purchases/product_list Consulta una lista de los productos adquiridos en tu aplicación.
purchases.revenue_series /purchases/revenue_series Consulta el total de dinero gastado al día en tu aplicación durante un intervalo de tiempo.
purchases.quantity_series /purchases/quantity_series Consulta el número total de compras diarias en tu aplicación en un intervalo de tiempo.
Permiso Punto de conexión Descripción
events.list /events/list Consulta una lista de eventos personalizados.
events.data_series /events/data_series Consulta las ocurrencias de un evento personalizado en un intervalo de tiempo.
Permiso Punto de conexión Descripción
sessions.data_series /sessions/data_series Consulta las sesiones diarias durante un intervalo de tiempo.
Permiso Punto de conexión Descripción
kpi.dau.data_series /kpi/dau/data_series Consulta los usuarios activos únicos al día durante un intervalo de tiempo.
kpi.mau.data_series /kpi/mau/data_series Consulta el total de usuarios activos únicos durante un período acumulado de 30 días en un intervalo de tiempo.
kpi.new_users.data_series /kpi/new_users/data_series Consulta los usuarios nuevos al día durante un intervalo de tiempo.
kpi.uninstalls.data_series /kpi/uninstalls/data_series Consulta las desinstalaciones de la aplicación por día durante un intervalo de tiempo.
Permiso Punto de conexión Descripción
templates.email.create /templates/email/create Crea una nueva plantilla de correo electrónico en el dashboard.
templates.email.info /templates/email/info Consulta información sobre una plantilla concreta.
templates.email.list /templates/email/list Consulta una lista de plantillas de correo electrónico.
templates.email.update /templates/email/update Actualiza una plantilla de correo electrónico almacenada en el dashboard.
Permiso Descripción
sso.saml.login Configura el inicio de sesión iniciado por el proveedor de identidad. Para más información, consulta el inicio de sesión iniciado por el proveedor de servicios (SP).
Permiso Punto de conexión Descripción
content_blocks.info /content_blocks/info Consulta información sobre una plantilla concreta.
content_blocks.list /content_blocks/list Consulta una lista de Content Blocks.
content_blocks.create /content_blocks/create Crea un nuevo Content Block en el dashboard.
content_blocks.update /content_blocks_update Actualiza un Content Block existente en el dashboard.
Permiso Punto de conexión Descripción
preference_center.get /preference_center/v1/{preferenceCenterExternalId} Obtiene un centro de preferencias.
preference_center.list /preference_center/v1/list Lista los centros de preferencias.
preference_center.update /preference_center/v1

/preference_center/v1/{preferenceCenterExternalID}
Crea o actualiza un centro de preferencias.
preference_center.user.get /preference_center/v1/{preferenceCenterExternalId}/url/{userId} Obtiene un enlace al centro de preferencias para un usuario.
Permiso Punto de conexión Descripción
subscription.status.set /subscription/status/set Configura el estado del grupo de suscripción.
subscription.status.get /subscription/status/get Obtiene el estado del grupo de suscripción.
subscription.groups.get /subscription/user/status Obtiene el estado de los grupos de suscripción a los que determinados usuarios están explícitamente suscritos o han cancelado su suscripción.
Permiso Punto de conexión Descripción
sms.invalid_phone_numbers /sms/invalid_phone_numbers Consulta los números de teléfono no válidos.
sms.invalid_phone_numbers.remove /sms/invalid_phone_numbers/remove Retira la marca de número de teléfono no válido de los usuarios.
Permiso Punto de conexión Descripción
catalogs.add_items /catalogs/{catalog_name}/items Añade varios elementos a un catálogo existente.
catalogs.update_items /catalogs/{catalog_name}/items Actualiza varios elementos en un catálogo existente.
catalogs.delete_items /catalogs/{catalog_name}/items Elimina varios elementos de un catálogo existente.
catalogs.get_item /catalogs/{catalog_name}/items/{item_id} Obtiene un elemento único de un catálogo existente.
catalogs.update_item /catalogs/{catalog_name}/items/{item_id} Actualiza un elemento único en un catálogo existente.
catalogs.create_item /catalogs/{catalog_name}/items/{item_id} Crea un elemento único en un catálogo existente.
catalogs.delete_item /catalogs/{catalog_name}/items/{item_id} Elimina un elemento único de un catálogo existente.
catalogs.replace_item /catalogs/{catalog_name}/items/{item_id} Sustituye un elemento único de un catálogo existente.
catalogs.create /catalogs Crea un catálogo.
catalogs.get /catalogs Obtiene una lista de catálogos.
catalogs.delete /catalogs/{catalog_name} Elimina un catálogo.
catalogs.get_items /catalogs/{catalog_name}/items Obtiene una vista previa de elementos de un catálogo existente.
catalogs.replace_items /catalogs/{catalog_name}/items Reemplaza elementos en un catálogo existente.
Permiso Punto de conexión Descripción
sdk_authentication.create /app_group/sdk_authentication/create Crea una nueva clave de Autenticación SDK para tu aplicación.
sdk_authentication.primary /app_group/sdk_authentication/primary Marca una clave de Autenticación SDK como clave principal para tu aplicación.
sdk_authentication.delete /app_group/sdk_authentication/delete Elimina una clave de Autenticación SDK para tu aplicación.
sdk_authentication.keys /app_group/sdk_authentication/keys Obtiene todas las claves de Autenticación SDK para tu aplicación.

Gestión de claves de API REST

Puedes ver los detalles de las claves de API REST existentes o eliminarlas desde Settings > APIs and Identifiers > pestaña API Keys. Ten en cuenta que no puedes editar las claves de API REST después de crearlas.

La pestaña API Keys incluye la siguiente información para cada clave:

Campo Descripción
Nombre de clave de API El nombre dado a la clave en el momento de su creación.
Identificador La clave de API.
Creada por La dirección de correo electrónico del usuario que creó la clave. Este campo aparece como «N/A» para las claves creadas antes de junio de 2023.
Fecha de creación La fecha de creación de esta clave.
Visto por última vez La fecha en que se utilizó esta clave por última vez. Este campo aparece como «N/A» para las claves que nunca se han utilizado.

Para ver los detalles de una clave de API, pasa el cursor por encima de la clave y selecciona View. Esto incluye todos los permisos que tiene esta clave, las IP de la lista blanca (si las hay) y si esta clave está incluida en la lista blanca de IP de Braze.

La lista de permisos de la clave de API en el panel de Braze.

Ten en cuenta que, al eliminar un usuario, Braze no elimina las claves de API asociadas que ese usuario haya creado. Para eliminar una clave, pasa el cursor sobre ella y selecciona Delete.

Una clave de API llamada «Last Seen» con el icono de la papelera resaltado, mostrando «Delete».

Seguridad de la clave de API REST

Las claves de API se utilizan para autenticar una llamada a la API. Cuando creas una nueva clave de API REST, es necesario darle acceso a puntos finales específicos. Al asignar permisos específicos a una clave de API, puedes limitar exactamente qué llamadas puede autenticar dicha clave.

Dado que las claves de API REST permiten acceder a puntos finales de REST API potencialmente sensibles, protege estas claves y compártelas solo con socios de confianza. Nunca deben quedar expuestas públicamente. Por ejemplo, no utilices esta clave para hacer llamadas AJAX desde tu sitio web ni la expongas de ninguna otra forma pública.

Una buena práctica de seguridad es asignar a un usuario solo el acceso necesario para completar su trabajo: este principio también puede aplicarse a las claves de API asignando permisos a cada clave. Estos permisos te proporcionan mayor seguridad y control sobre las distintas áreas de tu cuenta.

Si expones una clave accidentalmente, puedes eliminarla de la consola para desarrolladores. Para obtener ayuda con este proceso, abre un ticket de soporte.

Seguridad de las claves de API REST y las claves de API de SDK

Las claves de API REST y las claves de API de SDK tienen perfiles de seguridad diferentes.

  Claves de API REST Claves de API de SDK
Propósito Autenticación del lado del servidor para la REST API (envío de mensajes, exportación de datos, gestión de usuarios) Identificación del lado del cliente para el SDK de Braze (ingesta de datos, mensajes dentro de la aplicación, Content Cards)
Visibilidad Deben permanecer privadas. Nunca las expongas en código del lado del cliente, repositorios públicos o aplicaciones de usuario. Diseñadas para ser públicas. Se incluyen dentro del binario de tu aplicación o son visibles en el JavaScript del navegador web, de forma similar a un ID de seguimiento de Google Analytics.
Solución si se exponen Revoca la clave inmediatamente y crea un reemplazo en Settings > APIs and Identifiers > API Keys. Una clave de API REST expuesta puede usarse para enviar mensajes, exportar datos de usuario o modificar la configuración de la cuenta. No se requiere ninguna acción. Una clave de API de SDK solo puede ingerir datos y recuperar mensajería del lado del cliente (como mensajes dentro de la aplicación y Content Cards). No puede exportar datos de usuario, enviar mensajes en tu nombre ni modificar Campaigns.

Lista de direcciones IP permitidas de la API

Para mayor seguridad, puedes especificar una lista de direcciones IP y subredes a las que se permite realizar solicitudes de REST API para una clave de API REST determinada. Esto se denomina lista permitida o lista blanca. Para permitir direcciones IP o subredes específicas, añádelas a la sección Whitelist IPs al crear una nueva clave de API REST:

Opción para permitir IPs al crear una clave de API.

Si no especificas ninguna, las solicitudes pueden enviarse desde cualquier dirección IP.

Autenticación y seguridad de la API

Autenticación mediante token de portador

Braze autentica las solicitudes de la REST API utilizando la clave de API REST pasada como token Bearer en el encabezado de solicitud Authorization. Cuando envíes una solicitud, incluye tu clave de API en el siguiente formato:

1
Authorization: Bearer YOUR_REST_API_KEY

En cada solicitud, Braze realiza las siguientes comprobaciones de validación del lado del servidor:

  1. Validez del token: Verifica que la clave de API REST existe en Braze y está activa (por ejemplo, que no ha sido revocada ni desactivada).
  2. Autorización del token: Confirma que la clave de API tiene los permisos necesarios para el punto final solicitado.

Si la autenticación falla, la API devuelve una respuesta de error con un código de estado HTTP. Por ejemplo, 401 Unauthorized indica una clave no válida o ausente, mientras que 403 Forbidden indica que la clave no tiene permiso para el punto final solicitado. Para obtener más información, consulta Errores de API.

Seguridad a nivel de red

Las solicitudes de REST API a Braze están protegidas por el cifrado Transport Layer Security (TLS) en toda la ruta de la solicitud. La siguiente tabla describe el flujo de red para una solicitud de API desde tu servidor a Braze:

Paso Componente Descripción
1 Tu servidor Inicia una solicitud HTTPS con cifrado TLS.
2 Cloudflare Termina la conexión TLS del cliente y aplica protecciones a nivel de red.
3 Equilibrador de carga de red (NLB) Reenvía paquetes a la infraestructura de la aplicación. Los NLB operan en la capa 4, lo que significa que no hay proxy de capa 7. Los paquetes se reenvían sin inspección ni modificación a nivel HTTP.
4 Ingreso NGINX Termina la conexión TLS interna y enruta la solicitud.
5 Unicorn (servidor de aplicaciones) Procesa la solicitud autenticada.

El cifrado TLS cubre todos los eslabones de la cadena. Tu servidor se conecta a Cloudflare a través de TLS, y Cloudflare establece una conexión TLS independiente a través del NLB con el ingreso NGINX, por lo que tu clave de API y los datos de la solicitud permanecen cifrados durante la transmisión.

Recursos adicionales

Biblioteca cliente Ruby

Si estás implementando Braze con Ruby, puedes utilizar la biblioteca de clientes Ruby para reducir el tiempo de importación de datos. Una biblioteca cliente es una colección de código específico de un lenguaje de programación —en este caso, Ruby— que facilita el uso de una API.

La biblioteca cliente Ruby admite los puntos finales de usuario.

New Stuff!