Skip to main content
POST
Crear asistentes
API de Famulor 1.0 (legado). Esta página se aplica únicamente a Famulor 1.0 (app.famulor.de) y se conserva por compatibilidad. Para la plataforma actual, usa la referencia de la API de Famulor 2.0.
Crea un nuevo asistente de IA con la configuración especificada
Este 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, outbound
string
requerido
El modo de motor. Opciones: pipeline, multimodal, dualplex
string
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ático

Idiomas 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.
En los asistentes inbound, el número de teléfono no debe ser de tipo caller ID y no debe estar ya asignado a otro asistente inbound.

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.
No se puede desactivar en multimodal y dualplex.
boolean
predeterminado:"false"
Si se deben usar frases de relleno en audio durante el procesamiento (p. ej., “eh”, “un momento”).
Solo disponible en el modo pipeline.
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 primero

Ajustes 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, ai
number
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, nature
number
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 mode para obtener las voces compatibles
  • Para multimodal/dualplex, knowledgebase_mode debe establecerse en function_call
  • Para multimodal/dualplex, allow_interruptions está siempre habilitado
  • fillers solo está disponible en el modo pipeline
  • Los asistentes nuevos se crean con el estado inactive de forma predeterminada