Saltar al contenido principal

API de Purple Hub: Qué se puede hacer con ella

Una referencia técnica para gerentes de TI y arquitectos de red sobre cómo aprovechar la API de Purple Hub. Esta guía detalla los endpoints disponibles, la autenticación y los casos de uso del mundo real para integrar los datos de WiFi de invitados con sistemas empresariales para mejorar la inteligencia de negocios y la eficiencia operativa. Cubre patrones de integración tanto de API REST como de Webhooks, con casos de estudio concretos de los sectores de hotelería, retail y eventos.

Por Tom HackettPublicado
📖 9 min de lectura2,716 palabras2 ejemplos resueltos3 preguntas de práctica9 definiciones clave

Video overview

Escucha esta guía

Ver transcripción del podcast
Bienvenido a la sesión técnica de Purple. Soy estratega sénior de contenido aquí en Purple, y en los próximos diez minutos le daré una perspectiva concisa y práctica de nuestra Portal API: qué es, qué puede hacer con ella y cómo aprovecharla para obtener el máximo impacto comercial. Esto está dirigido a los gerentes de TI, arquitectos y directores de operaciones que necesitan saber cómo transformar su WiFi para invitados de un simple servicio a un poderoso activo de datos. Comencemos con el contexto. Usted ofrece WiFi para invitados en todos sus establecimientos. Cada día, cientos o miles de personas se conectan. Proporcionan su correo electrónico, tal vez su nombre, y aceptan sus términos. Esos son valiosos datos de primera mano. El Purple Hub le brinda excelentes paneles para visualizar esto, pero el verdadero poder surge cuando conecta esos datos con el resto de su ecosistema empresarial. Ahí es donde entra la Portal API. Es el puente que permite a sus sistemas comunicarse con nuestra plataforma de manera programática. Ahora, entremos en el detalle técnico. La Portal API es una interfaz REST estándar. La autenticación es sencilla y segura, utilizando una clave API directa. No necesita preocuparse por complejos flujos de autenticación OAuth para la comunicación de servidor a servidor. Fundamentalmente, no hay límites de velocidad de transmisión de datos. La diseñamos para escalar a nivel empresarial, por lo que ya sea que gestione un solo hotel o una cadena nacional de quinientas tiendas minoristas, la API puede manejar su volumen de tráfico. Tiene dos formas principales de extraer datos. Primero, el método de extracción (pull): puntos de conexión REST estándar. Piense en puntos de conexión como visitantes y establecimientos. Puede escribir un script para llamar a estos puntos de conexión de forma programada, extraer todos los datos de visitantes de las últimas veinticuatro horas y cargarlos en su almacén de datos para su análisis. Esta es su opción ideal para la inteligencia empresarial, para crear esos paneles de información general en Power BI o Tableau. Pero la parte realmente emocionante es el método de inserción (push): Webhooks. Esto es para tiempo real. Usted configura un punto de conexión de escucha de su lado, y en el momento en que un invitado se autentica en su WiFi, le enviamos una carga útil JSON con todos sus detalles: nombre, correo electrónico, en qué establecimiento se encuentra, su número de visitas e incluso el método de autenticación que utilizó, ya sea un formulario de registro, inicio de sesión social o cualquier otro. Es casi instantáneo. Esto es lo que permite una interacción inmediata y personalizada. Es la diferencia entre enviar un correo electrónico de marketing mañana, o enviar una notificación de bienvenida con una oferta única en el segundo en que un cliente leal entra por su puerta. Permítame hablar sobre los campos de datos que recibe. El payload de Webhook se estructura en cuatro objetos principales. El objeto client le proporciona la dirección MAC y el user agent. Los objetos company y venue le brindan los identificadores y las coordenadas geográficas de la ubicación específica. El objeto session le entrega la marca de tiempo de autenticación. Y el objeto user es donde está el verdadero valor: nombre, apellido, correo electrónico, género, fecha de nacimiento, número móvil, código postal y un conteo de visitas por venue que muestra las fechas de la primera y última visita. También puede capturar campos personalizados desde el formulario de registro de su página de bienvenida, por lo que si solicita a los huéspedes su número de programa de lealtad o su número de habitación en un hotel, eso también se transmite. Ahora, en la versión uno punto siete de la API, hay una mejora importante que vale la pena señalar. El campo unsubscribed ahora distingue claramente entre los usuarios que optaron activamente por no recibir marketing después de haber estado suscritos previamente, frente a aquellos que simplemente nunca optaron por participar. Esto es fundamental para el cumplimiento de GDPR y para una segmentación precisa. No querrá tratar a un suscriptor inactivo de la misma manera que a alguien que nunca estuvo en su embudo de marketing. Hablemos de los patrones de integración con más detalle. Para el patrón de extracción de REST API, su flujo de trabajo típico es un script programado, quizás en Python o Node.js, que se ejecuta todas las noches. Se autentica con su clave de API, consulta el endpoint de visitantes para cada venue, transforma los datos al formato requerido y los carga en una base de datos central. Este es un proceso ETL clásico. Para un operador de múltiples sitios, iteraría a través de sus ID de venue y agregaría los datos de manera centralizada. Para el patrón de inserción de Webhook, la arquitectura es ligeramente diferente. Necesita un endpoint accesible de forma pública y protegido por SSL. Una función serverless es ideal aquí: AWS Lambda, Azure Functions o Google Cloud Functions. Es rentable, se escala automáticamente y maneja la concurrencia que vería en un venue concurrido. Cuando la función recibe la solicitud POST de Purple, debe analizar el JSON, realizar su lógica de negocio (tal vez una búsqueda en el CRM o una verificación de lealtad) y devolver una respuesta doscientos OK lo más rápido posible. Esto me lleva al requisito de implementación más importante: su receptor debe responder en un plazo de diez segundos. Si no lo hace, Purple volverá a poner la solicitud en cola y reintentará después de tres horas. Las fallas persistentes harán que el Webhook se desactive automáticamente por razones de seguridad. Por lo tanto, mantenga su receptor ligero. Realice el procesamiento mínimo necesario para devolver una respuesta rápida y, si necesita realizar un procesamiento pesado, envíe el evento a una cola interna y procéselo de forma asíncrona. Ahora veamos algunos escenarios del mundo real para hacer esto concreto. Considere un hotel de doscientas habitaciones. Quieren registrar automáticamente a los nuevos huéspedes de WiFi en un flujo de correo electrónico de bienvenida en su plataforma de marketing. La solución es sencilla: configure un Webhook, cree un receptor serverless simple y, cuando lleguen los datos de un nuevo usuario, verifique si ya existe en la plataforma de marketing. Si no es así, agréguelo y active el flujo de bienvenida. El hotel también puede usar el campo de recuento de visitas para distinguir a los visitantes nuevos de los recurrentes y adaptar la comunicación en consecuencia. Un huésped recurrente podría recibir una oferta de recompensa por lealtad en lugar de una bienvenida genérica. Ahora considere una cadena minorista nacional con cincuenta tiendas. Quieren un tablero central que muestre las tendencias de tráfico de personas en todas las ubicaciones. Aquí, el patrón de extracción de la REST API es la elección correcta. Un script nocturno consulta el endpoint de visitantes para cada uno de los cincuenta establecimientos, agrega los datos y los carga en un almacén de datos. Luego, el equipo de analítica crea sus tableros sobre esta base. Pueden ver qué tiendas tienen las tasas de visitantes nuevos más altas, cuáles tienen las mejores proporciones de visitantes recurrentes y cómo se correlacionan los tiempos de permanencia con el rendimiento de las ventas. Permítame ahora cubrir algunos errores comunes y cómo evitarlos. El primer error es el manejo de eventos duplicados. Una sola visita de un huésped puede activar múltiples eventos de autenticación - por ejemplo, si permiten que la pantalla de su teléfono se bloquee y este se reconecta, o si realizan roaming entre puntos de acceso. Su receptor debe ser idempotente. Antes de realizar una acción como enviar un correo electrónico, verifique si ya procesó un evento para ese usuario hoy. El segundo error es no validar la URL de su receptor antes de comenzar a operar en vivo. Purple requiere que valide el endpoint en el portal antes de que pueda recibir datos. Asegúrese de que su receptor esté activo y devuelva el encabezado wifiWebhookListener correcto antes de asociarlo a un LogicFlow. El tercer error es ignorar el estado de suscripción. Siempre verifique el campo de baja de suscripción antes de agregar a un usuario a una lista de marketing. Enviar comunicaciones de marketing a alguien que ha optado por no recibirlas es una infracción de GDPR con consecuencias significativas. Ahora pasemos a una sesión de preguntas y respuestas rápidas. ¿Puedo sincronizar esto con mi CRM personalizado? Sí. Si su CRM tiene una API, puede usar un receptor de Webhook como middleware para dar formato a los datos de Purple y enviarlos a su sistema. Los ID devueltos en la carga útil del Webhook coinciden con los de la REST API, por lo que también puede realizar llamadas de seguimiento para obtener detalles adicionales si es necesario. ¿Cómo manejo a un usuario que visita múltiples sitios en mi propiedad? La API proporciona recuentos de visitas por ID de establecimiento, por lo que puede rastrear fácilmente el recorrido de un cliente a través de toda su propiedad y crear un perfil completo de múltiples sitios. ¿Hay un límite en la cantidad de URL de Webhook que puedo configurar? No. Puede validar y usar tantas URL de receptor como necesite, lo cual es útil si diferentes equipos o sistemas necesitan recibir los mismos datos de eventos. ¿Qué sucede si mi receptor se apaga por mantenimiento? Purple reintentará las entregas fallidas, por lo que podría recibir una acumulación de eventos pendientes cuando su receptor vuelva a estar en línea. Su receptor debe manejar esto de manera fluida, procesando los eventos que puedan llegar fuera de orden cronológico. Para resumir todo lo que hemos cubierto hoy, la API del Portal de Purple es su clave para desbloquear el inmenso valor que se encuentra dentro de sus datos de WiFi de invitados. Utilice la API REST para extraer datos para informes y analíticas. Utilice Webhooks para enviar datos en tiempo real para una interacción con el cliente inmediata y personalizada. Recuerde el principio clave: enviar para tiempo real, extraer para informes. Su siguiente paso es revisar la documentación de la API en nuestro portal de soporte. Si tiene una licencia de Engage, genere una clave de API y comience a explorar con Postman. Cree un receptor de Webhook sencillo. Vea cómo fluyen los datos. Ese es el momento en que el potencial de esta herramienta se vuelve sumamente claro. Gracias por escuchar el Informe Técnico de Purple. Si desea hablar con uno de nuestros arquitectos de soluciones sobre sus requisitos de integración específicos, visite purple dot ai y reserve una demostración. Hasta la próxima.

Parte de nuestra serie principal: Guía de Captive Portal →

API de Purple Hub: Qué se puede hacer con ella

Resumen Ejecutivo

Para los líderes de TI en recintos multi-sitio - hoteles, cadenas de tiendas, estadios y centros de conferencias - la red WiFi para invitados es más que un simple servicio. Es una fuente rica y constantemente actualizada de datos de primera mano que puede impulsar un impacto comercial medible en marketing, operaciones y experiencia del cliente. La API de Purple Portal proporciona la interfaz programática necesaria para liberar este valor a escala. Permite a los equipos técnicos ir más allá de los tableros de analítica integrados y crear integraciones sólidas y automatizadas que alimentan datos de visitantes que cumplen con el GDPR directamente en los sistemas de negocio principales, desde plataformas CRM y herramientas de automatización de marketing hasta programas de lealtad y almacenes de inteligencia de negocios.

Esta guía es una referencia práctica y accionable para arquitectos de soluciones, gerentes de TI y desarrolladores senior. Detalla el modelo de autenticación, los endpoints disponibles, los patrones de integración y los escenarios de implementación del mundo real que demuestran cómo la API de Purple WiFi puede transformar una implementación de WiFi de un centro de costos a un activo de datos estratégico. Ya sea que esté evaluando la API por primera vez o planeando una integración de nivel de producción, este documento proporciona el sustento técnico y los marcos de decisión que necesita para proceder con confianza.

Análisis Técnico Detallado

Autenticación y Control de Versiones de la API

La API de Purple Portal utiliza autenticación por API Key, un modelo sencillo y seguro muy adecuado para integraciones de servidor a servidor. A diferencia de los flujos de OAuth 2.0, que requieren intercambio de tokens y ciclos de renovación, la autenticación por API Key consiste en incluir un secreto estático en los encabezados de la solicitud. Esta simplicidad reduce la complejidad de la integración sin comprometer la seguridad, siempre que la clave se almacene de forma segura y se rote periódicamente como parte de su política estándar de gestión de credenciales.

La versión de producción actual es la v1.7, la cual introdujo varias mejoras importantes sobre la v1.6.2. De manera muy significativa, la propiedad unsubscribed en el objeto de datos del usuario ahora distingue claramente entre un usuario que canceló activamente su suscripción de marketing después de haber estado suscrito previamente, y un usuario que nunca se suscribió. Esta distinción es crítica para el cumplimiento de GDPR y para una segmentación precisa de la audiencia. Además, los endpoints de Visitors y Venues ahora devuelven una respuesta HTTP 200 OK cuando no se encuentran datos, en lugar de un 404 Not Found, lo que anteriormente causaba confusión en la lógica de monitoreo y manejo de errores.

Endpoints Disponibles

La API de la empresa del portal expone tres categorías principales de endpoints con las que los equipos de TI interactuarán regularmente.

Endpoint Método Propósito
/visitors GET Recuperar perfiles de visitantes invitados, incluyendo datos de contacto, demografía e historial de visitas
/venues GET Recuperar datos a nivel de recinto y metadatos de configuración
/unsubscribes GET Recuperar una lista de usuarios que han optado por no recibir comunicaciones de marketing

Todos los endpoints devuelven datos en formato JSON. El endpoint de visitors es el más utilizado, ya que expone toda la riqueza de los datos del perfil de invitado recopilados durante el proceso de autenticación del Captive Portal. Esto incluye nombre, apellido, dirección de correo electrónico, género, fecha de nacimiento, número de teléfono móvil, código postal, proveedor de autenticación (por ejemplo, formulario de registro, inicio de sesión social), recuentos de visitas por sucursal y cualquier campo personalizado configurado en la splash page.

Límites de velocidad

Una ventaja arquitectónica clave de la API de Purple Portal es que no hay límites de velocidad. La plataforma está diseñada para admitir cualquier volumen de solicitudes o transacciones, lo que la hace adecuada para implementaciones a gran escala donde los scripts pueden necesitar procesar miles de registros de sucursales o millones de perfiles de visitantes. Esto elimina una restricción común que complica el diseño de integración con otras plataformas y elimina la necesidad de limitar las solicitudes o implementar lógica de back-off en su código de cliente.

Patrones de integración: Pull vs. Push

La API de Purple WiFi admite dos patrones de integración fundamentalmente diferentes, cada uno adecuado para diferentes casos de uso. Comprender qué patrón aplicar en un escenario determinado es la decisión arquitectónica más importante que tomará.

El patrón de extracción REST API (pull) implica que su sistema realice solicitudes bajo demanda o programadas a los endpoints de la API para recuperar datos. Este es el enfoque correcto para el procesamiento por lotes, informes e inteligencia de negocios. Un script ETL nocturno que extrae todos los datos de los visitantes del día anterior y los carga en un almacén de datos es un ejemplo canónico. El patrón pull le brinda control total sobre cuándo y cuántos datos recupera.

El patrón de inserción Webhook (push) implica que Purple envíe datos a su sistema en el momento en que ocurre un evento específico - específicamente, cuando un invitado se autentica en la red WiFi. Su sistema debe exponer un endpoint HTTP accesible públicamente y protegido por SSL (un "listener") que pueda recibir y procesar estas cargas útiles JSON POST. El patrón Webhook es la opción correcta para cualquier caso de uso que requiera datos casi en tiempo real, como activar un mensaje de bienvenida personalizado, actualizar el estado de "última visita" de un cliente en un CRM o notificar a un gerente de hotelería que ha llegado un invitado VIP.

API de Purple Hub: Qué se puede hacer con ella - api architecture diagram

Estructura de la carga útil de Webhook

La carga útil JSON entregada por un Webhook de Purple está estructurada en cuatro objetos principales, cada uno de los cuales proporciona una dimensión diferente de contexto para el evento de autenticación.

Objeto Campos clave Descripción
client mac, userAgent Identificadores a nivel de dispositivo
company id, name, uniqId Detalles de la cuenta de su empresa
venue id, name, latitude, longitude La ubicación específica donde ocurrió la autenticación
session authenticationTime Marca de tiempo ISO 8601 del evento de autenticación
user email, firstName, lastName, gender, provider, visitCountForVenues, customFields Datos completos del perfil del invitado

El objeto user.visitCountForVenues es especialmente valioso para los operadores con múltiples sucursales. Proporciona un conteo de visitas por sucursal junto con las marcas de tiempo de firstVisit y lastVisit, lo que le permite identificar a los visitantes primerizos frente a los clientes recurrentes leales en el momento de la autenticación - sin necesidad de realizar llamadas API adicionales.

¿Tiene preguntas sobre su configuración específica?

Nuestro equipo trabaja con gestores de espacios, responsables de TI e ingenieros de redes en 80 000 establecimientos. Reserve una llamada de 20 minutos y le mostraremos cómo lo resolvieron otros profesionales como usted.

Guía de implementación

Prerrequisitos y configuración

El acceso a la API del portal requiere una licencia de Purple Engage. Una vez obtenida la licencia, genere su clave API desde la configuración del portal de Purple. Para el desarrollo y las pruebas iniciales, Postman es la herramienta recomendada; Purple proporciona una guía de configuración dedicada para configurar las variables de entorno y los encabezados de solicitud correctos. También está disponible un archivo de demostración en PHP para los equipos que prefieran un punto de partida de programación del lado del servidor.

Configuración de una integración de Webhook

La implementación de una integración de Webhook consta de cinco pasos. Primero, compile e implemente su endpoint de escucha en una URL de acceso público y protegida por SSL. Una función sin servidor (AWS Lambda, Azure Functions o Google Cloud Functions) es una opción de arquitectura sólida: se escala automáticamente, incurre en un costo mínimo con volúmenes bajos y gestiona solicitudes concurrentes sin necesidad de configuración. Segundo, valide la URL del endpoint de escucha en el portal de Purple navegando a Administración > Sucursales > Webhooks. Purple enviará una solicitud de prueba para confirmar que el endpoint está accesible y devuelve el encabezado requerido wifiWebhookListener: 1. Tercero, cree o edite un LogicFlow en el portal y agregue un nodo de acción de Webhook, seleccionando su URL validada. Cuarto, asegúrese de que el estado del LogicFlow esté configurado como "En línea". Quinto, asocie el LogicFlow al proceso de acceso (Access Journey) correspondiente. A partir de este momento, cada autenticación de invitado en ese proceso activará su Webhook.

Gestión de reintentos e idempotencia

Su endpoint de escucha debe estar diseñado para hacer frente a las realidades de los sistemas distribuidos. Purple reintentará la entrega de un Webhook fallido después de tres horas si su endpoint de escucha no responde (el tiempo de espera supera los 10 segundos) o si devuelve un estado de error. Esto significa que su endpoint de escucha puede recibir el mismo evento varias veces. Además, una sola visita de un invitado puede activar múltiples eventos de autenticación - por ejemplo, cuando un dispositivo se vuelve a conectar después de que la pantalla se bloquea, o cuando un usuario realiza roaming entre puntos de acceso. Por lo tanto, su lógica de procesamiento debe ser idempotente: aplicar el mismo evento dos veces debe producir el mismo resultado que aplicarlo una sola vez. Un patrón de implementación común consiste en verificar si ya se ha realizado una acción (como enviar un correo electrónico de bienvenida) para un ID de usuario determinado dentro de un periodo de tiempo definido antes de ejecutarla.

Mejores prácticas

Varios principios deben guiar cualquier implementación en producción de la Purple Portal API. Siempre realice la implementación apuntando a la versión más reciente de la API (v1.7) y actualice sus rutas de URL y la lógica de análisis de respuestas cuando se lancen nuevas versiones. Trate su API Key como una credencial confidencial: almacénela en un administrador de secretos (como AWS Secrets Manager o Azure Key Vault) en lugar de hacerlo en el código fuente o en variables de entorno en sistemas compartidos. Para los oyentes de Webhooks, implemente un registro estructurado de cada carga útil entrante y respuesta para facilitar la depuración y los seguimientos de auditoría. Respete los campos unsubscribed y unsubscribedDate en el objeto de usuario; procesar acciones de marketing dirigidas a usuarios que han optado por no participar constituye una infracción del GDPR. Finalmente, pruebe su integración con toda la gama de casos límite: usuarios sin dirección de correo electrónico, usuarios con campos personalizados nulos y eventos de autenticación que llegan fuera del orden cronológico.

API de Purple Hub: Qué se puede hacer con ella - webhook integration infographic

Resolución de problemas y mitigación de riesgos

El modo de fallo más común en una integración de Webhook es un oyente lento o no disponible. Si el punto de conexión falla sistemáticamente al responder en un plazo de 10 segundos, Purple desactivará automáticamente el Webhook después de un período prolongado de falta de respuesta, lo que requerirá una verificación manual en el portal. Para mitigar este riesgo, implemente un punto de conexión de comprobación de estado en el mismo servidor que su oyente e inclúyalo en el monitoreo de su infraestructura. Asegúrese de que su oyente realice solo un procesamiento síncrono mínimo antes de devolver una respuesta 200 OK; delegue cualquier cálculo pesado o llamadas de API secundarias a una cola asíncrona.

Para las integraciones de la REST API, el riesgo principal es la obsolescencia de los datos en los sistemas secundarios si el trabajo de extracción programado falla de forma silenciosa. Implemente alertas en sus scripts de ETL para notificar al equipo de operaciones si una ejecución falla o no genera resultados de manera inesperada. Al migrar de la API v1.6.2 a la v1.7, audite todo el código que hace referencia al campo unsubscribed y al punto de conexión Unsubscribes, ya que el nombre de la propiedad se corrigió de unsubcribers a unsubscribers en la v1.7.

ROI e impacto comercial

El caso de negocio para la integración con la Purple Portal API está bien consolidado en múltiples sectores verticales. En el sector de la hospitalidad, los hoteles que utilizan integraciones de CRM activadas por Webhooks reportan mejoras significativas en las tasas de apertura de correos electrónicos para comunicaciones personalizadas en comparación con las campañas de difusión genéricas, ya que el mensaje se entrega en el momento de máxima relevancia: cuando el huésped se encuentra físicamente en el establecimiento. En el sector minorista, conectar los datos de WiFi de invitados a un programa de fidelidad permite a los operadores identificar y recompensar a los visitantes de alta frecuencia, incrementando el gasto promedio y las tasas de visitas recurrentes. Para grandes recintos públicos y centros de conferencias, los análisis impulsados por API proporcionan los datos detallados de afluencia necesarios para justificar las valoraciones de patrocinios y optimizar la ubicación de las concesiones.

La ausencia de límites de tarifa en la Purple WiFi API significa que el costo de la integración se escala con su infraestructura, no con el volumen de datos que procesa. Para una cadena minorista nacional que procesa cientos de miles de autenticaciones diarias, esta es una ventaja material frente a las plataformas que cobran por llamada de API o imponen límites de rendimiento. Por lo tanto, el costo total de propiedad para una integración de Purple API bien estructurada consiste principalmente en el costo de desarrollo de una sola vez y el costo de infraestructura continuo del receptor, los cuales se recuperan típicamente dentro del primer trimestre únicamente a través de la mejora en las tasas de conversión de marketing.

API de Purple Hub: Qué se puede hacer con ella - retail integration usecase

Casos de estudio

Caso de estudio 1: Hospitalidad - Whitbread Group

Whitbread, la compañía de hoteles y restaurantes más grande del Reino Unido, opera miles de puntos de acceso WiFi para invitados en todas sus propiedades de Premier Inn y restaurantes. Al integrar la Purple Portal API con su plataforma de CRM, el grupo pudo crear un perfil de invitado unificado que combinaba los datos de reservaciones en línea con el comportamiento de visitas físicas registrado en el Captive Portal de WiFi. La integración de Webhook se activa con cada autenticación de invitado, enriqueciendo el registro del CRM con la marca de tiempo de la última visita, la ubicación del establecimiento y la información del dispositivo. Esto permite al equipo de marketing segmentar las audiencias por antigüedad, frecuencia y ubicación, así como activar campañas de reactivación altamente personalizadas. El resultado técnico clave fue una reducción en el tiempo entre la llegada de un invitado y su ingreso a un flujo de marketing activo de 24 horas (bajo el modelo anterior de consulta por lotes) a menos de 60 segundos.

Caso de estudio 2: Comercio minorista - Distribuidor de moda multisitio

Un minorista nacional de moda con más de 80 tiendas implementó la Purple Portal API para resolver una brecha crítica en su estrategia de datos de clientes: tenían datos sólidos de comercio electrónico pero prácticamente ninguna información sobre el comportamiento de los visitantes en la tienda. Al conectar la API de WiFi para invitados de Purple a su almacén de datos existente mediante un proceso ETL nocturno, crearon una vista de cliente omnicanal por primera vez. Se consultaba el endpoint /visitors para cada tienda todas las noches y los datos se unían con los registros de transacciones de comercio electrónico utilizando la dirección de correo electrónico como clave común. En tres meses, el equipo de analítica identificó que los clientes que se conectaban al WiFi de la tienda tenían un valor promedio de pedido un 34% más alto en su siguiente compra en línea, lo que proporcionó un caso de negocio sólido para una mayor inversión en la experiencia digital dentro de la tienda. La integración no requirió cambios en la infraestructura de comercio electrónico existente, lo que demuestra la naturaleza de baja fricción del patrón de extracción de la API REST.

Caso de estudio 3: Eventos - Centro de conferencias

Un importante centro de conferencias en el Reino Unido utilizó la Purple Portal API para proporcionar a los patrocinadores datos verificados de afluencia por primera vez. Anteriormente, los informes de los patrocinadores dependían de recuentos manuales y escaneo de credenciales, lo que requería mucha mano de obra y era impreciso. Al exponer recuentos de visitantes agregados y anonimizados por zona (mapeados a IDs de ubicaciones en la plataforma Purple) a través de la API, el equipo de eventos pudo proporcionar a los patrocinadores tableros en tiempo real que mostraban el tiempo de permanencia y el volumen de visitantes en las áreas patrocinadas. Los datos se extraían a través de la API REST cada 15 minutos durante los eventos y se mostraban en un portal de patrocinadores personalizado. Esta capacidad contribuyó directamente a un aumento del 22% en las tasas de renovación de patrocinios en el primer año, ya que los patrocinadores ahora podían cuantificar el alcance de sus activaciones con datos de primera parte verificados.

Definiciones clave

Webhook

Un mecanismo automatizado mediante el cual un servidor envía una notificación de datos en tiempo real (un push) a otra aplicación cuando ocurre un evento específico, a través de una solicitud HTTP POST.

En el contexto de Purple, un Webhook envía una carga útil JSON con los datos del visitante a su sistema en el momento en que un invitado se autentica en la red WiFi. Esto es fundamental para el marketing en tiempo real y las actualizaciones de CRM.

API REST

Un estilo arquitectónico estandarizado para la creación de servicios web que permite a un sistema solicitar (o extraer) datos de otro utilizando métodos HTTP estándar como GET y POST.

Los equipos de TI utilizan la API REST de Purple para escribir scripts que extraen datos masivos de visitantes y sucursales para su análisis en herramientas de inteligencia de negocios como Power BI o Tableau.

Autenticación por clave de API

Un modelo de seguridad donde el acceso a una API se concede proporcionando un token secreto único (la clave) con cada solicitud, normalmente en el encabezado HTTP Authorization.

Esto es más sencillo que OAuth e ideal para integraciones de servidor a servidor. Sus scripts deben incluir la clave de API válida en los encabezados de la solicitud para acceder a los datos de Purple.

Idempotencia

Una propiedad de una operación que significa que se puede aplicar varias veces sin cambiar el resultado más allá de la aplicación inicial.

Su receptor de Webhook debe ser idempotente. Si recibe el mismo evento de autenticación dos veces (lo que puede ocurrir debido a reintentos o reconexiones de dispositivos), no debería, por ejemplo, enviar dos correos electrónicos de bienvenida.

JSON (JavaScript Object Notation)

Un formato ligero y basado en texto para el intercambio de datos que es fácil de leer para los humanos y fácil de analizar y generar para las máquinas.

La API de Purple y los Webhooks entregan todos los datos en formato JSON. Su aplicación deberá analizar este JSON para extraer campos como correo electrónico, nombre y recuento de visitas.

LogicFlow

La herramienta visual y de arrastrar y soltar de Purple para crear flujos de trabajo automatizados de marketing y participación que pueden activar acciones basadas en el comportamiento y la demografía del visitante.

Usted utiliza LogicFlow para definir el recorrido del invitado. Es donde conecta su Webhook, indicando al sistema que lo active cuando un usuario alcance el estado 'En línea' de su recorrido de acceso.

Captive Portal

La página web que un usuario ve y con la que debe interactuar antes de que se le otorgue acceso a una red WiFi pública, que normalmente requiere autenticación o captura de datos.

La plataforma Purple impulsa el captive portal, y los datos ingresados por el usuario en esta página (por ejemplo, nombre, correo electrónico, campos personalizados) son los que quedan disponibles a través de la API del Portal.

GDPR (General Data Protection Regulation)

Una ley integral de privacidad de datos en la Unión Europea que rige la recopilación, el procesamiento y el almacenamiento de datos personales de los residentes de la UE.

La API de Purple proporciona las herramientas para crear integraciones que cumplan con el GDPR, como respetar el estado de suscripción cancelada de un usuario y permitir la exportación de datos para solicitudes de acceso del interesado. La actualización de la API v1.7 mejoró específicamente la claridad del campo de suscripción cancelada para respaldar el cumplimiento.

ETL (Extract, Transform, Load)

Un proceso de integración de datos que implica extraer datos de un sistema de origen, transformarlos al formato requerido y cargarlos en un sistema de destino, como un almacén de datos.

El patrón de extracción de la API REST se implementa típicamente como un proceso ETL, donde los datos se extraen del endpoint /visitors de Purple, se transforman para coincidir con el esquema de destino y se cargan en un CRM o almacén de datos.

Ejemplos resueltos

Un hotel de 200 habitaciones desea agregar automáticamente nuevos usuarios de WiFi de invitados a su flujo de Salesforce Marketing Cloud y enviarles un correo electrónico de bienvenida.

  1. En el Purple Hub, valide una nueva URL de Webhook que apunte a un endpoint seguro (por ejemplo, una función serverless en AWS Lambda). 2. Cree un LogicFlow 'En línea' que incluya el nodo de Webhook, configurado para usar la URL validada. 3. Asigne este LogicFlow al flujo de acceso de WiFi de invitados del hotel. 4. La función serverless recibe la carga útil JSON tras la autenticación del invitado, extrae el correo electrónico y el nombre del usuario, y realiza una llamada de API a Salesforce Marketing Cloud para agregar al usuario al flujo de 'Nuevo invitado'. 5. La función devuelve una respuesta 200 OK a Purple dentro del límite de tiempo de espera de 10 segundos.
Comentario del examinador: Esta solución utiliza correctamente el patrón de Webhook en tiempo real, el cual es ideal para acciones inmediatas como enviar un correo de bienvenida. El uso de una función serverless es una forma rentable y escalable de alojar el endpoint del receptor. Una alternativa sería realizar consultas periódicas (polling) al endpoint de la API /visitors, pero esto introduciría un retraso de hasta 24 horas y sería significativamente menos eficiente para un requisito en tiempo real.

Una cadena de tiendas de retail con 50 sucursales desea crear un panel centralizado en Power BI para analizar las tendencias de los visitantes en todas sus ubicaciones.

  1. Cree un script (por ejemplo, en Python) que se ejecute de forma programada todas las noches. 2. El script se autentica en la API de Purple Hub utilizando la clave de API de la empresa. 3. Itera a través de cada uno de los 50 ID de las sucursales, realizando una llamada al endpoint /visitors para cada una de ellas para recuperar todos los datos de visitantes del día anterior. 4. El script transforma y carga estos datos en un almacén de datos centralizado (por ejemplo, Azure SQL o BigQuery). 5. Power BI se conecta al almacén de datos para crear el panel de análisis entre sucursales.
Comentario del examinador: Este es un proceso ETL (Extracción, Transformación y Carga) clásico y es el uso correcto del patrón de consulta periódica (polling) de la API REST. Es adecuado para la agregación de datos a gran escala y que no requiere tiempo real para la inteligencia de negocios. El uso de un almacén de datos centralizado es una mejor práctica para el rendimiento y la escalabilidad cuando se manejan datos de múltiples fuentes. La ausencia de límites de velocidad (rate limits) en la API de Purple significa que el script puede procesar las 50 sucursales sin preocuparse por la limitación de ancho de banda (throttling).

Preguntas de práctica

Q1. ¿Un estadio desea identificar a los titulares de abonos de temporada VIP cuando se conectan al WiFi y enviar una notificación al tablero del gerente de hospitalidad más cercano. ¿Qué patrón de integración deberían usar y por qué?

Sugerencia: Considere la velocidad requerida de la notificación y si la acción se desencadena por un evento.

Ver respuesta modelo

Deberían utilizar el patrón de Webhook (push). Este es un requisito en tiempo real: cuando el VIP se conecta, se activa un Webhook de inmediato hacia un servicio que busca el correo electrónico o la dirección MAC del usuario en la base de datos de titulares de abonos de temporada. Si se encuentra una coincidencia, envía una notificación al tablero de hospitalidad correspondiente. Un patrón de API REST (pull) sería demasiado lento, ya que depende de consultas periódicas y podría introducir retrasos de minutos u horas.

Q2. Tiene la tarea de crear un informe diario de las 10 sucursales más visitadas en su cadena nacional de cafeterías. ¿Cómo recuperaría los datos necesarios de Purple?

Sugerencia: ¿Se trata de un requisito de informes por lotes o en tiempo real? ¿Qué endpoint consultaría?

Ver respuesta modelo

Esta es una tarea de informes por lotes, por lo que el patrón de API REST (pull) es el adecuado. Un script programado se ejecutaría diariamente, consultaría el endpoint /visitors para cada sucursal, agregaría los recuentos de visitas del día anterior y luego calcularía las 10 principales. No es necesario contar con la notificación casi instantánea que proporcionan los Webhooks. La ausencia de límites de frecuencia significa que se pueden consultar todas las sucursales en una sola ejecución de script sin preocupaciones de regulación de velocidad.

Q3. El endpoint de su receptor de Webhook está fallando. Revisa los registros y ve un error de tiempo de espera. ¿Cuál es la causa más probable según la documentación de Purple y cuáles son las dos consecuencias inmediatas?

Sugerencia: Piense en los requisitos de rendimiento de un receptor y en lo que hace Purple cuando no puede entregar una carga útil.

Ver respuesta modelo

La causa más probable es que el receptor esté tardando más de 10 segundos en procesar la carga útil JSON entrante y devolver una respuesta 200 OK. Las dos consecuencias inmediatas son: (1) Purple dejará de intentar enviar la solicitud actual y la volverá a poner en cola para un intento de reintento en 3 horas, lo que significa que la entrega de datos se retrasará; y (2) si esto continúa durante un período prolongado, Purple desactivará automáticamente el Webhook por completo, lo que requerirá una verificación manual en el portal antes de poder volver a activarlo.

¿Tiene preguntas sobre su configuración específica?

Nuestro equipo trabaja con gestores de espacios, responsables de TI e ingenieros de redes en 80 000 establecimientos. Reserve una llamada de 20 minutos y le mostraremos cómo lo resolvieron otros profesionales como usted.