Widget de chat

Todos los endpoints utilizados por el widget de chat integrado en sitios web de clientes.

Este grupo reúne todos los endpoints públicos utilizados por el widget de chat integrado en sitios web de clientes: comprobación de accesibilidad (`GET /api/public/widget/health`), consulta de la configuración pública del widget (`GET /api/public/widget/config/:widget_code`) y envío/historial de mensajes (`POST /api/public/widget/message`, `GET /api/public/widget/history`). La autorización de dominios la mantiene Zentor al crear el widget; no existe una interfaz de configuración para ello en el dashboard del tenant. Si el origen no está autorizado puede aparecer el código `WIDGET_ORIGIN_DENIED`. La creación del widget está reservada a Master Admin, mientras el tenant recibe el código de integración terminado.

No existe un sistema general de API Keys para desarrolladores. `health` y `config` son accesibles sin autenticación porque se utilizan para inicializar el widget en el navegador. `message` y `history`, en cambio, requieren el header `X-Widget-Token` y además se comprueban contra una allowlist de Origin del servidor. El Embed Token se muestra una sola vez en texto plano al crear el widget y no debe aparecer en repositorios públicos, capturas de soporte o logs del navegador.

Cada página de detalle del grupo describe individualmente método, ruta, autenticación, idempotencia y códigos de error documentados del endpoint correspondiente. Una llamada correcta a un endpoint no demuestra automáticamente que otro del mismo grupo vaya a funcionar; en particular, un `health` correcto no confirma ni un widget válido, ni una Origin autorizada ni la accesibilidad de un proveedor de IA.

El límite API confirmado para toda la plataforma es de 2.000 solicitudes en 15 minutos. Solo se menciona un límite distinto para un endpoint de widget cuando está expresamente demostrado. `message` no es idempotente; un cliente no debe repetir automáticamente un envío ambiguamente interrumpido sin comprobar primero si el primer mensaje ya fue procesado.

La revisión técnica de este grupo se basa en la Registry `app/frontend/src/content/api-reference/groups/widget.ts` y las rutas backend asociadas. Cada página de detalle indica si se comprobó un flujo de éxito live, un flujo negativo o solo una analogía de código. Esta distinción se aplica a todo el grupo y no debe sustituirse por afirmaciones generales de éxito.

GET/api/public/widget/healthGET/api/public/widget/config/:widget_codePOST/api/public/widget/messageGET/api/public/widget/historyPOST/api/public/widget/pollPOST/api/public/widget/ratingPOST/api/public/widget/trackPOST/api/public/widget/voice-transcribePOST/api/public/widget/voice-speak
Referencia API