Importa agentes desde otra plataforma
Transfiere agentes, herramientas y bases de conocimiento desde Vapi, Retell, ElevenLabs Agents o Bland con una clave de API o una exportación JSON, revisa la asignación e impórtalos.
Si tus agentes están en Vapi, Retell, ElevenLabs Agents o Bland, el importador los obtiene, asigna cada campo a ThunderPhone y te muestra el resultado antes de crear nada.
Inicia una importación
- Abre Agentes y elige Importar (o Importar desde Vapi, Retell, ElevenLabs o Bland en una página de agentes vacía).
- Elige la plataforma.
- Sigue los pasos numerados del cuadro de diálogo para crear una clave en esa plataforma (abrirán la página de configuración correcta), pégala o cambia a Pegar JSON exportado y pega uno o más objetos de agente desde el panel o la API de esa plataforma.
- Elige Obtener mis agentes. La obtención y asignación suelen tardar menos de un minuto; puedes salir de la página y volver desde la bandeja de tareas.
Revisa el plan
Cada agente muestra el nombre, la voz coincidente (con el nivel de confianza de la coincidencia), el nivel de inteligencia, las herramientas y bases de conocimiento que incluye, y notas sobre cualquier cambio realizado durante la traducción. Expande una fila para leer el prompt:
- Reescrito — un prompt coherente en el estilo de la guía de prompts, con todos los números de teléfono, URL, nombres de herramientas y marcadores de posición de la fuente preservados.
- Estructurado — la configuración de origen organizada bajo encabezados, exactamente como se extrajo. Se usa automáticamente cuando no se puede verificar la reescritura.
Desmarca los agentes que no quieras (las copias de prueba vienen desmarcadas de forma predeterminada), edita los nombres, las voces, los niveles o la opción de prompt y, luego, Importar. Los agentes creados se abren en el constructor con sus conexiones de API y conocimientos adjuntos.
Qué se importa
Obtener una clave
- Abre dashboard.vapi.ai/org/api-keys (Configuración de la organización → Claves de API).
- Crea una clave y elige Privada — las claves públicas no pueden mostrar asistentes.
- Cópiala en el diálogo. Las claves de Vapi no tienen alcance; elimina la clave en Vapi después de la importación si la creaste solo para esto.
| Campo de Vapi | ThunderPhone |
|---|---|
model.messages[system] | Prompt |
firstMessage, firstMessageMode | Línea de apertura en el prompt; quién habla primero |
voice.provider + voiceId | Voz de catálogo más cercana (se muestra la confianza de coincidencia) |
transcriber.language | Idioma principal |
model.model | Nivel de inteligencia |
model.tools / toolIds (function, apiRequest) | Conexiones de API |
Destinos de transferCall | Sección de transferencia del prompt (transferencia integrada) |
endCall, dtmf | Funciones integradas |
Herramientas query (knowledgeBases[].fileIds) y knowledgeBaseId heredado | Base de conocimiento con los archivos cargados como documentos |
endCallMessage, endCallPhrases, voicemailMessage, messagePlan.idleMessages | Secciones del prompt; configuración del mensaje de buzón de voz |
silenceTimeoutSeconds | Colgar por silencio |
maxDurationSeconds, server.url, squads, workflows, herramientas sms/ghl/make/code/mcp | Se informa, no se importa |
Obtener una clave
- Abre dashboard.retellai.com/apiKeys (Configuración del sistema → Claves de API) y elige Crear clave.
- Activa Restringir permisos y configura Agente, Base de conocimiento y Teléfono como Lectura. Deja todos los demás grupos sin seleccionar; el importador nunca escribe en Retell.
- Copia la clave en el diálogo.
| Campo de Retell | ThunderPhone |
|---|---|
Retell LLM general_prompt, begin_message, start_speaker | Prompt; línea de apertura; quién habla primero |
states + starting_state | Procedimiento ordenado de llamadas en el prompt |
Flujo de conversación global_prompt + nodos | Procedimiento ordenado de llamadas; los nodos de transferencia también se convierten en reglas de transferencia |
Personalizadas de general_tools | Conexiones de API |
transfer_call, end_call, press_digit | Transferencia en el prompt + funciones integradas |
voice_id (11labs-, openai-, cartesia-, …) | Voz de catálogo más cercana |
language | Idiomas principales y adicionales |
model / s2s_model | Nivel de inteligencia |
knowledge_base_ids (fuentes de URL, documento y texto) | Base de conocimiento con documentos |
voicemail_option, end_call_after_silence_ms, boosted_keywords | Configuración de buzón de voz; colgar por silencio; términos del prompt |
webhook_url, max_call_duration_ms (cuando es inferior al valor predeterminado de 60 minutos), motores LLM personalizados, send_sms, MCP | Se informa, no se importa |
Obtener una clave
- Abre elevenlabs.io/app/settings/api-keys y elige Crear clave de API.
- En permisos, asígnale Plataforma de agentes: Lectura (y Base de conocimiento: Lectura si aparece); el importador no necesita nada más.
- Copia la clave en el diálogo.
| Campo de ElevenLabs | ThunderPhone |
|---|---|
conversation_config.agent.prompt.prompt | Prompt |
first_message, language | Línea de apertura; idioma principal |
prompt.llm | Nivel de inteligencia |
tts.voice_id | Voz de catálogo más cercana |
tools / tool_ids de tipo webhook | Conexiones de API (esquema de consulta o cuerpo) |
Herramientas del sistema end_call, transfer_to_number, teclado | Funciones integradas + transferencia en el prompt |
Entradas de URL/texto/archivo de knowledge_base | Base de conocimiento: las entradas de URL se convierten en documentos de URL; las entradas de texto y archivo se obtienen por ID y se importan como texto extraído |
turn.silence_end_call_timeout | Colgar por silencio |
conversation.max_duration_seconds, herramientas de cliente, MCP | Se informa, no se importa |
Obtener una clave
- Abre app.bland.ai/dashboard/settings.
- Copia la clave de API que aparece allí (Bland tiene una clave por cuenta; no tiene alcance, así que rótala después si lo prefieres).
- Pégala en el diálogo.
Los agentes web no tienen nombre en Bland, por lo que el importador los nombra según el saludo ("Hola, soy Nova…") o el prompt ("Eres Nova…").
| Campo de Bland | ThunderPhone |
|---|---|
Agente web prompt, first_sentence, language, model, voice | Prompt; línea de apertura; idioma; nivel; voz más cercana |
tools personalizados (name, url, method, input_schema, headers) | Conexiones de API |
prompt o pathway_id de número entrante | Un agente por número entrante |
| Cada ruta, esté asociada o no a un número | Un agente por ruta |
| Nodos y bordes de ruta (Default, Knowledge Base, Transfer Call, End Call, Webhook) | Procedimiento ordenado de llamadas; el texto del nodo de base de conocimiento se convierte en un documento; las transferencias y los webhooks se convierten en funciones integradas y conexiones de API |
transfer_phone_number | Sección de transferencia |
max_duration, webhook | Se informa, no se importa |
| Números propiedad de Bland | Se informa como no transferibles |
Qué requiere un paso en ThunderPhone
El informe al final de la página de revisión enumera todo lo que no se movió y por qué:
- Números de teléfono. Los números que tienes con un operador pueden conectarse como números VoIP. Los números propiedad de la plataforma no pueden moverse; obtén un número nuevo y asígnalo al agente importado.
- Webhooks por agente. ThunderPhone entrega webhooks firmados por organización; configura uno en Webhooks.
- Credenciales almacenadas por el proveedor. Se copian los encabezados de herramientas que estaban visibles. Las credenciales que la plataforma anterior almacenó por id se marcan; agrégalas a los encabezados de la conexión API.
- Herramientas sin un equivalente (envío de SMS, automatizaciones específicas de la plataforma) se enumeran para que nada se omita silenciosamente.
- Límites de duración de llamadas. ThunderPhone no tiene una duración máxima de llamada por agente; usa en su lugar la configuración para colgar por silencio y las reglas de finalización de tu prompt.
Importar sin una clave
Elige Pegar JSON exportado y pega los objetos que exporta la API o el panel de tu plataforma, como un objeto o una lista JSON:
- Vapi — el objeto de asistente (
GET /assistant/{id}). Las herramientas asociadas mediantetoolIdsy los archivos de conocimiento necesitan una clave para resolverse. - Retell — el objeto de agente (
GET /get-agent/{id}) junto con su Retell LLM (GET /get-retell-llm/{id}) o el objeto de flujo de conversación en la misma lista; el importador los vincula por id. Un LLM o flujo pegado por sí solo se importa con un nombre generado. - ElevenLabs — el objeto de agente (
GET /v1/convai/agents/{id}); sus herramientas de webhook se incluyen en línea, por lo que nada queda sin resolver. - Bland — un agente web, la respuesta de
/v1/agentso un objeto de ruta.
Todo lo que se referencia solo por id y no está presente en el contenido pegado se enumera en las notas.
Después de la importación
- Abre cada agente y lee sus notas.
- Haz una llamada de prueba desde el creador.
- Asigna un número de teléfono.
- Prueba cada conexión API con el probador de solicitudes.
- Verifica que los documentos de conocimiento hayan terminado de indexarse.
- Configura un webhook de organización si los agentes anteriores usaban uno.
El importador también está disponible mediante la API REST.