Skip to main content

Introducción

El endpoint Widget WebView es un wrapper HTML interactivo que te permite embeber el widget de chat de Lovi de forma segura dentro de páginas web o aplicaciones móviles. En lugar de devolver una respuesta JSON estándar, este endpoint sirve un documento HTML completo que contiene un iframe apuntando a la interfaz de chat. Este wrapper actúa como un puente seguro, obteniendo los metadatos de integración necesarios (como el mensaje de bienvenida del agente y la configuración de idioma) en el lado del servidor e inyectándolos de forma segura en la vista web usando comunicación postMessage estándar.

🌐 Obtener WebView del Widget

Método: GET Formato: HTML

Endpoint

Formato de ruta alternativo: GET https://cloud.lovi.ai/functions/v1/widgetWebView/{customer_id}/{widget_id}

Parámetros de Consulta

Si no estás usando la estructura de ruta mencionada arriba, debes pasar los parámetros requeridos en la cadena de consulta.

Cómo Funciona

  1. Autenticación: El servidor valida el customer_id (Access Key) y verifica la propiedad del widget_id.
  2. Obtención de Metadatos: Recupera la configuración del widget y opcionalmente consulta el backend de traducción de Lovi para traducir el mensaje de bienvenida del agente al lang solicitado.
  3. Entrega de HTML: El servidor devuelve una página HTML que contiene un <iframe src="https://widget.lovi.ai/?cw_id=...">.
  4. Puente PostMessage: El HTML cargado contiene JavaScript que escucha los eventos get_widget y get_customer disparados por el iframe. Responde de forma segura con la configuración del widget (widgetData) y maneja el almacenamiento local (como generar un ID de usuario único).

Errores Comunes

Si el widget falla al cargar, podrías recibir uno de los siguientes códigos de estado HTTP en lugar del payload HTML:
  • 400 Bad Request: Faltan customer_id o widget_id, o el widget_id no es un UUID válido.
  • 403 Forbidden: customer_id inválido (falló la validación de Access Key).
  • 404 Not Found: No se pudo encontrar la empresa o el widget especificado.
  • 500 Internal Server Error: Ocurrió un error inesperado al generar el wrapper.
🧭 Importante: Si el widget aparece atascado en una pantalla de “Loading Widget…”, revisa la consola del navegador. Asegúrate de que tu entorno permita iframes de origen cruzado y no bloquee la comunicación postMessage entre el WebView y widget.lovi.ai.
Este endpoint embebe el chat de texto. Para una llamada hablada en el navegador, ver el widget de voz.