Nodos de flujo y datos
Trigger
Objetivo: iniciar el run. Configurá familia, evento y filtros. Puede haber varios triggers; todos deben entregar un contexto compatible con los pasos posteriores. Ver catálogo.
Condición
Objetivo: dividir entre verdadero y falso. Elegí si deben cumplirse todas o alguna de las reglas.
Reglas disponibles:
| Regla | Configuración |
|---|---|
| Tiene email / tiene owner / existe contacto | Sin campos adicionales |
| Lifecycle del contacto | estado |
| Etapa del deal | etapa |
| Tiene tag / no tiene tag | uno o más tags |
| Campo del contacto | campo y valor |
| Score del contacto | campo numérico, operador y valor |
| Canal de conversación | email o WhatsApp |
| Resultado de IA | ruta del output, operador y valor |
Conectá siempre Verdadero y Falso, aunque una rama termine inmediatamente.
Esperar tiempo
Objetivo: pausar antes de continuar. Configurá cantidad y unidad, hora local exacta y, si corresponde, ventana permitida. Verificá zona horaria y evitá ventanas imposibles.
Esperar evento
Objetivo: reanudar cuando ocurre una señal o cuando vence el plazo. Eventos disponibles: mensaje recibido, apertura o clic de campaña, evento de contacto, actualización de contacto y actividad completada. Configurá evento, timeout y unidad. Conectá Evento y Timeout.
Nodo IA
Objetivo: analizar contexto y producir JSON, no ejecutar cambios por sí solo.
| Tarea | Resultado esperado |
|---|---|
| Calificar contacto | score y clasificación |
| Personalizar email | borrador contextual |
| Detectar intención | categoría de intención |
| Próxima mejor acción | sugerencia estructurada |
| Estrategia comercial | seguimiento y próximos pasos |
| Bundle de marketing | propuesta de audiencia, landing, form y campaña |
| Prompt personalizado | salida definida por instrucciones |
Configurá tarea e instrucciones. Consumí la salida con una condición o acción controlada. Para efectos sensibles, agregá aprobación humana.
Data source
Objetivo: leer contactos, deals, tickets o empresas. Elegí recurso, registro actual o búsqueda, entrega individual o colección, límite y filtros de audiencia. Su salida alimenta pasos posteriores; limitá resultados para evitar runs costosos.
HTTP request
Objetivo: llamar una API y usar la respuesta. Configurá URL HTTPS, método, path, query, headers, body e inclusión del contexto. Cada sección puede usar campos fijos o expresiones.
No incluyas secretos en valores exportables. Validá códigos, timeout, tamaño de respuesta y rama de error.
Code
Objetivo: transformar datos con JavaScript. Tiene acceso a contacto, deal, sujeto, nodos, variables e input. Debe devolver un valor serializable. Configurá código y timeout; evitá lógica de negocio que podría resolverse con nodos visibles.
Variables
Objetivo: declarar valores reutilizables. Cada entrada define nombre, tipo, modo fijo o template y valor. Usá nombres únicos y no guardes credenciales.
Aprobación humana
Objetivo: pausar hasta que una persona apruebe o rechace. Configurá título, resumen y propuesta. Conectá Aprobado y Rechazado. El run aparecerá pendiente en Ejecuciones.
Acción
Objetivo: producir un efecto en CRM, Inbox, Marketing o un sistema externo. Elegí el subtipo y completá sus campos. Ver todas las acciones.
Fin
Objetivo: cerrar una rama de manera explícita. No requiere configuración. Usalo para que éxito, descarte, rechazo, timeout y error tengan un final legible.
Salidas y referencias
Cada nodo expone resultado y estado en el contexto del run. Usá el selector del editor para insertar rutas y previsualizá el nodo con un registro real de prueba. Si una ruta depende de una rama que no siempre corre, validá su existencia antes de usarla.
Referencia de configuración por nodo
Trigger: ficha completa
- Entrada: evento del sistema y sujeto relacionado.
- Configuración: familia, evento y filtros; opcionalmente protección por sujeto.
- Salida: payload del evento, sujeto, IDs relacionados y metadatos de ejecución.
- Ramas: una salida de inicio.
- Ejemplo:
deal.stage_changedfiltrado a la etapa Propuesta. - Verificación: el run muestra el ID del deal y etapa esperada.
- Fallas: evento incorrecto, filtro demasiado amplio, payload sin relación o workflow inactivo.
Los triggers no deben depender de campos que el propio workflow crea después. Para eventos repetibles, definí si cada ocurrencia es válida o si necesitás deduplicación.
Condición: ficha completa
- Entrada: contexto, variables y outputs anteriores.
- Configuración: modo Todas/Alguna y una o más reglas.
- Salida: evaluación booleana y detalle disponible en el run.
- Ramas: Verdadero y Falso.
- Ejemplo: tiene email y lifecycle es oportunidad.
- Verificación: probá un sujeto que cumpla y otro que no.
- Fallas: campo vacío, tipo incompatible, referencia a nodo no ejecutado o rama sin conexión.
Ordená reglas desde el concepto más general al más específico y documentá por qué una persona sigue cada ruta.
Esperar tiempo: ficha completa
- Entrada: fecha actual, zona horaria y contexto del run.
- Configuración: cantidad, unidad, hora exacta y ventana permitida.
- Salida: fecha programada y reanudación.
- Ramas: continuación al finalizar.
- Ejemplo: esperar un día y reanudar a las 10:00 de la zona del workspace.
- Verificación: confirmá fecha calculada en un run de prueba.
- Fallas: zona horaria inesperada, ventana imposible, pausa excesiva o workflow modificado mientras espera.
Esperar evento: ficha completa
- Entrada: sujeto y clave de correlación del evento.
- Configuración: tipo de evento, timeout y unidad.
- Salida: evento recibido o vencimiento con metadatos.
- Ramas: Evento y Timeout.
- Ejemplo: esperar respuesta del contacto durante 48 horas.
- Verificación: ejecutá una prueba con respuesta y otra sin respuesta.
- Fallas: se espera otro evento, el sujeto no coincide, timeout ausente o una rama no termina.
IA: ficha completa
- Entrada: instrucciones, contexto seleccionado y referencias anteriores.
- Configuración: tarea, prompt, datos incluidos y estructura esperada.
- Salida: JSON del análisis y metadatos de estado.
- Ramas: continuación o manejo de error según el editor.
- Ejemplo: devolver
{ "score": 72, "reason": "..." }para calificar un contacto. - Verificación: comprobá que la salida conserve las claves requeridas en casos distintos.
- Fallas: API key ausente, timeout, JSON inválido, contexto insuficiente o costo excesivo.
Pedí una estructura explícita y validala antes de ejecutar acciones. Una explicación convincente no equivale a un dato verificado.
Data source: ficha completa
- Entrada: sujeto, IDs, filtros y variables.
- Configuración: recurso, registro actual o búsqueda, filtros, límite y modo individual/colección.
- Salida: objeto o lista de registros autorizados.
- Ejemplo: obtener deals abiertos del contacto actual con límite 10.
- Verificación: revisá cantidad, campos y alcance.
- Fallas: recurso ausente, filtro inválido, colección vacía, límite alto o permisos insuficientes.
HTTP request: ficha completa
- Entrada: URL, path, query, headers, body y contexto opcional.
- Configuración: método, secciones fijas/templates y timeout disponible.
- Salida: status, headers y body procesable.
- Ejemplo: enviar el ID de deal a un endpoint HTTPS y leer su estado.
- Verificación: probá 2xx, 4xx, 5xx y timeout con un entorno seguro.
- Fallas: DNS, TLS, autenticación, formato, tamaño o servicio remoto.
No pegues tokens. Usá una integración o mecanismo de secretos aprobado. Limitá datos personales enviados.
Code: ficha completa
- Entrada:
contact,deal,subject,nodes,varseinputcuando existan. - Configuración: JavaScript y timeout.
- Salida: valor serializable en JSON.
- Ejemplo: normalizar una lista de importes y devolver total y moneda.
- Verificación: probá vacío, nulo, tipos inesperados y volumen máximo.
- Fallas: excepción, timeout, valor no serializable o referencia inexistente.
El nodo debe transformar, no esconder reglas comerciales críticas que el equipo necesita leer en el canvas.
Variables: ficha completa
- Entrada: valores fijos o templates del contexto.
- Configuración: nombre único, tipo, modo y valor.
- Salida:
vars.<nombre>. - Ejemplo:
vars.followupDays = 3. - Verificación: revisá valor resuelto y tipo.
- Fallas: nombre duplicado, conversión inválida, template vacío o secreto expuesto.
Aprobación humana: ficha completa
- Entrada: sujeto, resumen y propuesta.
- Configuración: título, texto accionable y datos necesarios para decidir.
- Salida: decisión, actor y fecha.
- Ramas: Aprobado y Rechazado.
- Ejemplo: aprobar un descuento antes de actualizar el deal y enviar email.
- Verificación: probá ambas decisiones y revisá permisos del aprobador.
- Fallas: propuesta ambigua, aprobador sin acceso, run abandonado o rama rechazada sin cierre.
Acción: ficha completa
- Entrada: sujeto, configuración y outputs usados.
- Configuración: subtipo y campos obligatorios de la acción.
- Salida: ID o confirmación del efecto, más error si corresponde.
- Ejemplo: crear una tarea para el owner del deal.
- Verificación: abrí el registro afectado y confirmá un único efecto.
- Fallas: permisos, relación ausente, catálogo eliminado, integración o duplicación.
Fin: ficha completa
- Entrada: estado final de la rama.
- Configuración: ninguna.
- Salida: cierre legible del camino.
- Ejemplo: terminar después del rechazo sin enviar comunicación.
- Verificación: el run completa y no deja nodos pendientes.
Patrón completo de ejemplo
Trigger: deal cambia a Propuesta → Condición: contacto tiene email → IA: resume riesgos en JSON → Aprobación: manager revisa → Acción aprobada: enviar email y crear tarea → Acción rechazada: crear nota → Fin en ambas ramas.
Probá contacto sin email, aprobación, rechazo, error de IA y repetición del mismo cambio antes de activar.