Crear asistentes
Asistentes de IA
Crear asistentes
Crea un nuevo asistente de IA con la configuración especificada
POST
Crear asistentes
Crea un nuevo asistente de IA con la configuración especificadaEste endpoint te permite crear un nuevo asistente de IA con amplias opciones de configuración.
Modos de motor
La API admite tres modos de motor con diferentes capacidades:Cuerpo de la solicitud
Campos principales obligatorios
string
requerido
El nombre del asistente (máx. 255 caracteres)
integer
requerido
El ID de voz del asistente. Usa el endpoint Obtener voces con el parámetro de consulta
mode para obtener las voces compatibles con tu modo de motor.integer
requerido
El ID de idioma del asistente. Usa el endpoint Obtener idiomas para obtener los idiomas disponibles.
string
requerido
El tipo de asistente. Opciones:
inbound, outboundstring
requerido
El modo de motor. Opciones:
pipeline, multimodal, dualplexstring
requerido
La zona horaria del asistente (p. ej., “Europe/Berlin”, “America/New_York”)
string
requerido
El primer mensaje que dice el asistente al inicio de la llamada (máx. 200 caracteres)
string
requerido
El prompt del sistema que define el comportamiento y la personalidad del asistente
Campos específicos del modo
integer
El ID del modelo LLM. Obligatorio para el modo
pipeline.Usa el endpoint Obtener modelos para obtener los modelos disponibles.integer
El ID del modelo multimodal. Obligatorio para los modos
multimodal y dualplex.Usa el endpoint Obtener modelos para obtener los modelos multimodales disponibles.integer
ID del modelo LLM de respaldo para llamadas a herramientas en
multimodal/dualplex. Opcional.number
Sensibilidad de la detección de turnos en
multimodal/dualplex (0-1). Predeterminado: automáticoIdiomas secundarios
integer[]
Array de IDs de idiomas adicionales que el asistente puede hablar. El asistente reconoce automáticamente el idioma y cambia en consecuencia.
Ajustes de la base de conocimientos
integer
El ID de la base de conocimientos que se debe adjuntar a este asistente
string
Cómo se usa la base de conocimientos. Opciones:
function_call- la IA llama a una función para buscar (obligatorio para multimodal/dualplex)prompt- el conocimiento se inyecta en el prompt (solo pipeline)
Organización
integer
ID de una carpeta en la que colocar este asistente. Debe pertenecer a tu cuenta. Envía
null para dejar el asistente sin categorizar.integer[]
Array de IDs de etiquetas que se aplicarán a este asistente. Cada etiqueta debe pertenecer a tu cuenta.
Número de teléfono
integer
El ID de un número de teléfono para asignar al asistente. Debe pertenecer a tu cuenta.
Herramientas personalizadas durante la llamada
integer[]
Array de IDs de herramientas personalizadas durante la llamada que se deben adjuntar. Cada herramienta debe pertenecer a tu cuenta.
Herramientas integradas
array
Array de herramientas integradas. Cada herramienta tiene un campo
type y campos específicos de la herramienta. En Actualizar asistente, esto sustituye todas las herramientas integradas existentes: envía un array vacío [] para eliminarlas todas.Cuando enumeras los asistentes, cada herramienta configurada se devuelve como
{ "type": "...", "data": { ... } }, con los mismos nombres de campo anidados bajo data (no en el nivel superior).Ajustes de voz y TTS
boolean
predeterminado:"true"
Si la síntesis de voz emocional (TTS) está habilitada
number
predeterminado:"0.70"
Estabilidad de la voz (0-1). Más alto = más consistente
number
predeterminado:"0.50"
Similitud de voz (0-1). Más alto = más cercano al original
number
predeterminado:"1.00"
Multiplicador de velocidad de habla (0.7-1.2)
number
predeterminado:"0.10"
Temperatura del LLM (0-1). Más bajo = más determinista
integer
ID del proveedor de TTS personalizado. Si no se indica, se selecciona automáticamente según el idioma. Consulta Obtener proveedores de síntesis de voz.
integer
ID del proveedor de STT personalizado. Si no se indica, se selecciona automáticamente según el idioma. Solo para
pipeline. Consulta Obtener proveedores de transcripción.Ajustes de comportamiento de la llamada
boolean
predeterminado:"true"
Si se permiten las interrupciones de quien llama.
boolean
predeterminado:"false"
Si se deben usar frases de relleno en audio durante el procesamiento (p. ej., “eh”, “un momento”).
object
Perfiles de frases de relleno personalizados por categoría. Si no se especifica, se usan los valores predeterminados según el idioma. Cada categoría es un array de frases cortas.
positive: frases de relleno para respuestas afirmativas (p. ej., “¡Genial!”, “¡Perfecto!”)negative: frases de relleno para respuestas negativas o neutras (p. ej., “Mmm.”, “Ajá.”)question: frases de relleno mientras se procesa una pregunta (p. ej., “Buena pregunta.”, “Un momento.”)neutral: frases de relleno para confirmaciones neutras (p. ej., “Vale.”, “Entendido.”)
boolean
predeterminado:"false"
Si la llamada debe grabarse
boolean
predeterminado:"true"
Si se debe habilitar la cancelación de ruido
boolean
predeterminado:"false"
Si es
true, el asistente espera a que quien llama hable primeroAjustes de tiempo
integer
predeterminado:"600"
Duración máxima de la llamada en segundos (20-1200)
integer
predeterminado:"40"
Duración máxima del silencio antes del reenganche, en segundos (1-360)
integer
Silencio máximo justo después de iniciar la llamada antes de finalizarla (1-120 segundos). Opcional.
integer
predeterminado:"30"
Tiempo máximo de timbre antes de cancelar (1-60 segundos)
Ajustes de reenganche
integer
predeterminado:"30"
Intervalo de reenganche en segundos (7-600)
string
Prompt personalizado para los mensajes de reenganche (máx. 1000 caracteres)Ejemplo:
"¿Sigues ahí? ¿Tienes alguna otra pregunta?"Ajustes de buzón de voz
boolean
predeterminado:"true"
Si se debe finalizar la llamada al detectar un buzón de voz
string
Mensaje que se deja en el buzón de voz (máx. 1000 caracteres)
Detección de fin de turno
string
predeterminado:"vad"
Tipo de detección de actividad de voz. Opciones:
vad, ainumber
predeterminado:"0.5"
Sensibilidad de fin de turno (0-5)
number
predeterminado:"0.5"
Sensibilidad a la interrupción (0-5)
integer
Número mínimo de palabras antes de permitir la interrupción (0-10). Defínelo para activarlo.
Sonido ambiental
string
Sonido ambiental de fondo. Opciones:
off, office, city, forest, crowded_room, cafe, naturenumber
predeterminado:"0.5"
Volumen del sonido ambiental (0-1)
Configuración del webhook
boolean
predeterminado:"false"
Si las notificaciones de webhook están habilitadas
string
La URL del webhook para las notificaciones posteriores a la llamada. Obligatoria si
is_webhook_active es true.boolean
predeterminado:"true"
Si se deben enviar webhooks solo para las llamadas completadas (no para las fallidas o sin respuesta)
boolean
predeterminado:"true"
Si se debe incluir la URL de la grabación en el payload del webhook
Evaluación posterior a la llamada
boolean
predeterminado:"true"
Si la evaluación de IA posterior a la llamada está habilitada
array
Definición del esquema para la extracción de datos posteriores a la llamada
Variables
object
Pares clave-valor de variables personalizadas que se pueden usar en los prompts mediante
{{variable_name}}Ajustes de fin de conversación
integer
predeterminado:"30"
Minutos de inactividad del chat antes de considerar que la conversación ha finalizado (1–1440)
boolean
predeterminado:"false"
Si la conversación se puede reiniciar después de finalizar por inactividad
string
URL del webhook que se invoca cuando una conversación de chat finaliza por inactividad. Independiente del webhook de llamadas.
Ejemplos de solicitud
Asistente en modo pipeline
Asistente en modo multimodal
Asistente en modo dualplex
Respuesta
string
Mensaje de éxito que confirma la creación del asistente
object
Notas
- Todos los campos obligatorios deben proporcionarse para que la creación se realice correctamente
- Usa el endpoint Obtener voces con el parámetro de consulta
modepara obtener las voces compatibles - Para
multimodal/dualplex,knowledgebase_modedebe establecerse enfunction_call - Para
multimodal/dualplex,allow_interruptionsestá siempre habilitado fillerssolo está disponible en el modopipeline- Los asistentes nuevos se crean con el estado
inactivede forma predeterminada