Opciones de configuracion
Hay dos formas de configurar el widget:- Atributos
data-*en el script tag — auto-init, ideal para setups simples. ThaliqWidget.init({ ... })en JS — control total, podes pasar campos que no tienendata-*equivalente (ej:container,mcpTokens).
Tabla completa
| Atributo HTML | Campo JS | Tipo | Default | Descripcion |
|---|---|---|---|---|
data-api-key | apiKey | string | uno de los dos | API Key del tenant (tq_live_xxx) |
| — | jwtToken | string | uno de los dos | Alternativa: JWT del usuario (uso interno / SDK) |
data-api-url | apiUrl | string | https://api.thaliq.com | URL de la API (override para self-hosted o staging) |
data-agent-id | agentId | string | (resuelto por API key) | Forzar un agente especifico. Si la API key ya apunta a un agente, este campo lo sobreescribe |
data-theme | theme | 'light' | 'dark' | 'light' | Tema visual |
data-position | position | 'bottom-right' | 'bottom-left' | 'bottom-right' | Posicion del boton |
data-title | title | string | 'Asistente' | Titulo del header del chat |
data-primary-color | primaryColor | string | '#00D4AA' | Color principal (hex). Default: signal teal de Thaliq |
data-welcome | welcomeMessage | string | 'Hola! ¿En que puedo ayudarte?' | Mensaje de bienvenida inicial |
data-show-launcher | showLauncher | boolean | true | Mostrar el boton flotante. Usa false para controlarlo con tu propio boton |
data-channel | channel | string | 'widget' | Canal de la conversacion ('widget', 'sdk', etc) — afecta filtrado de stats |
| — | container | HTMLElement | (overlay flotante) | Mountear el widget dentro de un elemento del DOM en vez de overlay flotante |
| — | mcpTokens | Record<string, string> | {} | Tokens MCP por server ID (passthrough al backend para auth de MCP servers que lo requieren) |
Ejemplo programatico (control total)
Personalizar el color
ElprimaryColor se aplica al boton de chat, header y botones de envio. Usa un color hex que combine con tu marca:
Cambiar la posicion
Puedes colocar el boton de chat en la esquina inferior izquierda o derecha:Personalizar textos
Ejemplo completo
CSS Variables
El widget usa CSS variables internamente. Los estilos estan encapsulados y no afectan al resto de tu sitio:Responsive
El widget se adapta automaticamente:| Pantalla | Comportamiento |
|---|---|
| Desktop (>480px) | Ventana flotante de 380x520px |
| Mobile (≤480px) | Pantalla completa |

