Skip to main content
POST
Crear automatización
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.
Este endpoint crea una automatización a partir de su definición (un activador y sus pasos encadenados), la activa, ejecuta una prueba real con tu payload de ejemplo y reporta el resultado paso a paso. La ejecución de prueba es la puerta de entrada: una automatización cuya prueba falla queda desactivada, y una automatización de eventos de asistente solo se vincula al asistente después de superar la prueba. Cuando una plantilla lista para usar se ajusta a lo que necesitas, aplicarla es más sencillo que escribir una definición desde cero.
La ejecución de prueba ejecuta la automatización de verdad. Las definiciones que contienen pasos que envían mensajes o correos, o inician llamadas, se rechazan a menos que pases explícitamente confirm_side_effects: true; y cuando lo haces, esos pasos realmente se ejecutan durante la prueba. Dirígelos a destinatarios que te pertenezcan.

El formato de la definición

El objeto flow es la definición de la automatización. La forma preferida es una lista plana:
Los pasos se encadenan al activador en el orden indicado. El único anidamiento que debes escribir tú mismo es el que necesita un paso concreto: los pasos condicionales de un paso BRANCH van bajo onSuccessAction / onFailureAction. (También se acepta un árbol anidado a mano, en el que cada paso está bajo el nextAction del anterior). Una definición siempre reemplaza toda la automatización; nunca se combina con la anterior. Un activador sin pasos se rechaza (no_steps): una automatización que no hace nada no se puede activar.

Activadores admitidos (trigger.settings)

Los pasos referencian la salida de pasos anteriores por el nombre del paso: {{step_1['body']['field']}} para pasos HTTP (su JSON se anida bajo body). Formas habituales de paso: solicitudes HTTP, transformaciones de código, ramificaciones, retrasos, pasos de respuesta y acciones de la plataforma Famulor (enviar SMS/WhatsApp, iniciar una llamada, volver a poner un lead en cola). La forma más fácil de aprender la estructura exacta de un paso es leer una automatización existente con Obtener automatización o aplicar una plantilla e inspeccionar lo que ha creado.

Cuerpo de la solicitud

string
requerido
Un nombre breve y legible para la automatización (máx. 255 caracteres)
object
requerido
La definición de la automatización — {"trigger": {...}, "steps": [...]} como se describe arriba. Máx. 1 MB.
object
Un payload de ejemplo con una forma realista para la ejecución de prueba (lo que recibirá el activador). Para eventos de asistente, si se omite se usa un ejemplo canónico construido a partir de las propias variables del asistente. Máx. 256 KB.
integer
Obligatorio para automatizaciones de eventos de asistente (phoneCallEnded, inboundCall, newConversation y bind_webhook): el asistente al que se vincula esta automatización. Empieza a recibir los eventos reales de ese asistente después de superar la prueba. (En los activadores de plataforma, seleccionar el asistente dentro de settings.input.assistant del activador también funciona; el parámetro explícito tiene prioridad).
string
Solo para una definición activada por webhook: la vincula al evento de conversación finalizada del asistente. El único valor admitido es conversation_ended. Requiere assistant_id.
boolean
Obligatorio (true) cuando la definición contiene pasos que envían mensajes o correos, inician llamadas o hacen solicitudes HTTP que no son GET; la ejecución de prueba los ejecuta de verdad.

Respuesta

Devuelve 201 cuando la automatización está activa (active / active_untested), 200 cuando se creó pero su ejecución de prueba falló (test_failed), y 422 para una definición que nunca llegó a la ejecución de prueba (consulta los códigos de error más abajo).
string
El ID de la automatización creada
string | null
Para automatizaciones activadas por webhook (incluidas las de conversación finalizada): la URL que llaman los sistemas externos para dispararla. null para automatizaciones de eventos de asistente y de programación.
string
active — la ejecución de prueba se superó; la automatización está activa (y vinculada, en el caso de eventos de asistente). active_untested — el activador no se puede disparar a demanda (programaciones, integraciones externas); la automatización está activa y lista, y el primer evento real es la prueba. test_failed — la ejecución de prueba falló; la automatización quedó desactivada. Consulta test.steps para la clasificación por paso.
object
El resultado de la ejecución de prueba
object | string | null
Para automatizaciones probadas de forma síncrona (activadores de webhook e inbound): lo que respondió la automatización durante la ejecución de prueba
object | null
Para automatizaciones de eventos de asistente: {"type": "post_call" | "inbound" | "conversation" | "conversation_ended", "assistant_id": <id>, "bound": <bool>}. bound solo es true después de una prueba superada.

Códigos de error (422)

Los fallos graves devuelven {"message": "...", "error": "<code>"} y no se activa nada. Códigos destacados: