Conecta Supabase a los agentes de voz de ElevenLabs Conversational AI
Voz IA en tiempo real y sin complicaciones con la potencia de una base de datos
Permite que tus agentes de voz IA accedan a datos en directo con Supabase
La integración Supabase + ElevenLabs crea una interfaz potente basada en voz para los datos de tu aplicación. Ahora tus agentes IA pueden consultar bases de datos, reaccionar a cambios en tiempo real y activar lógica en el servidor conversando de forma natural, todo manteniendo el rendimiento de baja latencia que esperan tus usuarios.
Cómo funciona
Tus agentes de voz de ElevenLabs se conectan directamente a la API REST autogenerada de Supabase y a Edge Functions, lo que permite acceder a datos en tiempo real durante las conversaciones. Los usuarios pueden preguntar cosas como "¿Cuál es el estado de mi pedido?" o "Muéstrame las analíticas de hoy", y tu agente recupera y responde al instante con datos en directo de tu base de datos Supabase.
Capacidades clave
- Consultas de datos en tiempo real durante conversaciones por voz
- Integración segura con la API con autenticación integrada
- Ejecución de lógica sin servidor mediante Supabase Edge Functions
- Acceso global de baja latencia gracias a infraestructura distribuida
- Escalabilidad sin esfuerzo que crece con tu base de usuarios
Ventajas para desarrolladores
Esta integración está pensada para desarrolladores que necesitan una voz IA fiable y controlable que se integre fácilmente con sistemas existentes. No necesitas backends personalizados complejos: la base de PostgreSQL de Supabase te permite usar SQL estándar mientras ElevenLabs gestiona la capa de voz con fiabilidad de nivel empresarial.
Características
Funciones de la integración
Funciones avanzadas que hacen tus agentes de voz más inteligentes y ágiles
Acceso a la base de datos en tiempo real
- Llamadas directas a la API de Supabase durante conversaciones en vivo
- Recuperación instantánea de datos con tiempos de respuesta inferiores al segundo
- Soporte para consultas SQL complejas y joins
- Caché integrada para datos consultados con frecuencia
Autenticación y autorización seguras
- Autenticación basada en JWT con Supabase Auth
- Seguridad a nivel de fila para acceso a datos específicos de usuario
- Gestión de claves API con permisos por rol
- Transmisión de datos cifrada para información sensible
Integración con Edge Functions
- Ejecución de lógica personalizada sin servidor durante llamadas
- Operaciones multi-tabla y llamadas a APIs externas
- Soporte para TypeScript/JavaScript en flujos de trabajo complejos
- Despliegue global para latencia mínima
Soporte multilingüe de datos
- Interacciones por voz en más de 31 idiomas
- Consultas unificadas a la base de datos sin importar el idioma de entrada
- Traducción en tiempo real
- Respuestas adaptadas al contexto cultural
Sincronización de datos en tiempo real
- Actualizaciones en la base de datos durante conversaciones activas
- Soporte de webhooks para notificaciones proactivas
- Respuestas basadas en eventos ante cambios en los datos
- Integración fluida con flujos de trabajo existentes
Instalación
Guías de instalación
Pon en marcha tu integración Supabase + ElevenLabs rápidamente
Paso 1: Prepara el acceso a Supabase
Reúne las credenciales de tu proyecto Supabase
- Accede a tu panel de Supabase en app.supabase.com
- Selecciona tu proyecto o crea uno nuevo
- Ve a Configuración y luego a API en la barra lateral izquierda
- Copia la URL de tu proyecto, que tiene este formato: https://your-project.supabase.co
- Copia tu Service Role Key para operaciones en el servidor
- Anota tu Anon Key si necesitas acceso público
Configura la seguridad a nivel de fila
- Ve a Autenticación y luego a Políticas en Supabase
- Configura las políticas RLS adecuadas para las tablas a las que accederá tu agente
- Asegúrate de que la service role key tenga los permisos necesarios
- Prueba las políticas con consultas de ejemplo en el editor SQL
Paso 2: Configura el agente de ElevenLabs
Guarda las credenciales de Supabase de forma segura
- Accede a tu panel de Conversational AI de ElevenLabs
- Ve a Configuración y luego a Secrets Manager
- Crea un nuevo secreto llamado SUPABASE_SERVICE_KEY
- Pega tu service role key de Supabase como valor
- Crea otro secreto llamado SUPABASE_URL con la URL de tu proyecto
Accede a la configuración de herramientas
- Selecciona tu agente de voz en el panel
- Ve a la sección de Herramientas
- Haz clic en Añadir nueva herramienta para crear integraciones con la base de datos
Paso 3: Define las herramientas de base de datos
Herramienta de consulta de base de datos
- Nombre: query_database
- Descripción: Recupera datos de la base de datos Supabase
- Método: GET
- URL: Introduce la URL de tu proyecto Supabase seguida de /rest/v1/table_name
- Añade un header llamado apikey y selecciona SUPABASE_SERVICE_KEY de los secretos guardados
- Añade el header Authorization y selecciona la opción Bearer token con SUPABASE_SERVICE_KEY
- Añade el header Content-Type con valor application/json
Herramienta para insertar registros
- Nombre: insert_record
- Descripción: Crea nuevos registros en la base de datos Supabase
- Método: POST
- URL: Introduce la URL de tu proyecto Supabase seguida de /rest/v1/table_name
- Añade un header llamado apikey y selecciona SUPABASE_SERVICE_KEY de los secretos guardados
- Añade el header Authorization y selecciona la opción Bearer token con SUPABASE_SERVICE_KEY
- Añade el header Content-Type con valor application/json
- Añade el header Prefer con valor return=representation
Herramienta para actualizar registros
- Nombre: update_record
- Descripción: Actualiza registros existentes en Supabase
- Método: PATCH
- URL: Introduce la URL de tu proyecto Supabase seguida de /rest/v1/table_name
- Añade un header llamado apikey y selecciona SUPABASE_SERVICE_KEY de los secretos guardados
- Añade el header Authorization y selecciona la opción Bearer token con SUPABASE_SERVICE_KEY
- Añade el header Content-Type con valor application/json
- Configura los parámetros de consulta para seleccionar registros
Herramienta para eliminar registros
- Nombre: delete_record
- Descripción: Elimina registros de la base de datos Supabase
- Método: DELETE
- URL: Introduce la URL de tu proyecto Supabase seguida de /rest/v1/table_name
- Añade un header llamado apikey y selecciona SUPABASE_SERVICE_KEY de los secretos guardados
- Añade el header Authorization y selecciona la opción Bearer token con SUPABASE_SERVICE_KEY
- Configura los parámetros de consulta para seleccionar registros
Paso 4: Configura los prompts del agente
Actualiza el prompt del sistema
Añade instrucciones de acceso a la base de datos en el prompt del sistema de tu agente:
Tienes acceso a una base de datos Supabase con las siguientes herramientas:
- query_database: Utiliza esto para recuperar información cuando los usuarios pregunten por datos
- insert_record: Utiliza esto para crear nuevas entradas según lo que diga el usuario
- update_record: Utiliza esto para modificar datos existentes cuando lo pidan
- delete_record: Utiliza esto para eliminar registros cuando esté autorizado
Confirma siempre con el usuario antes de modificar datos (insertar, actualizar o eliminar). Cuando recuperes datos, preséntalos de forma natural y conversacional.
Configura las descripciones de herramientas
Para cada herramienta, proporciona descripciones claras que ayuden al agente a saber cuándo usarlas:
- Herramienta de consulta: Se activa con preguntas sobre datos existentes, búsquedas o consultas
- Herramienta de inserción: Se usa cuando el usuario quiere añadir información nueva o crear registros
- Herramienta de actualización: Se usa cuando el usuario pide cambios en datos existentes
- Herramienta de eliminación: Se usa con cuidado cuando el usuario necesita borrar información
Configura la gestión de respuestas
Entrena a tu agente para gestionar correctamente las respuestas de la base de datos:
- Analiza los datos devueltos y preséntalos de forma conversacional
- Gestiona resultados vacíos con mensajes útiles
- Confirma inserciones y actualizaciones exitosas
- Muestra mensajes de error en un lenguaje sencillo
Solución de problemas
Solución de problemas y soporte
Problemas comunes y soluciones para un funcionamiento fluido