Saltar al contenido principal

Acerca de las acciones

Las acciones definen lo que ocurre después de que se dispara un activador. Puedes encadenar varias acciones para crear automatizaciones complejas.
  • Usa el selector de variables (haz clic en el icono (x+)) para explorar los datos disponibles de pasos anteriores
  • Pasa el cursor sobre cualquier campo de entrada para ver de qué paso proviene una variable — útil cuando el mismo campo (p. ej., ID) existe en varios pasos anteriores
  • Asigna a cada acción un nombre descriptivo para facilitar el mantenimiento

Acciones con registros

Crear Registro

Agrega un nuevo registro a un objeto seleccionado. Configuración:
  • Seleccione el objeto de destino
  • Complete los campos obligatorios y opcionales
  • Usa datos de pasos anteriores o introduce valores manualmente para completar los campos
Salida: Los datos del registro recién creado están disponibles para su uso en pasos posteriores.

Actualizar Registro

Modifica un registro existente en un objeto seleccionado. Configuración:
  • Seleccione el objeto de destino
  • Elija el registro específico a actualizar.
    • Puedes elegir un registro fijo, usando el menú desplegable que muestra todos los registros disponibles.
    • O puedes seleccionar el registro de forma dinámica, designando un registro encontrado en un paso anterior, usando el (x+). No puedes buscar el registro en función de diferentes criterios en esta etapa. Si aún no has identificado el registro, añade un paso Search Record antes de este paso Update Record.
  • Seleccione campos a modificar e ingrese nuevos valores
Salida: Los datos del registro actualizado están disponibles para su uso en pasos posteriores.

Eliminar Registro

Elimina un registro de un objeto seleccionado. Configuración:
  • Seleccione el objeto de destino
  • Elija el registro específico a eliminar
Salida: Los datos del registro eliminado permanecen disponibles para su uso en pasos posteriores.

Buscar Registros

Encuentra registros dentro de un objeto seleccionado usando condiciones de filtro. Configuración:
  • Seleccione el objeto a buscar
  • Establezca criterios de filtro para restringir resultados
  • Configure la clasificación y los límites
Salida: Devuelve registros coincidentes que se pueden usar en pasos posteriores.
Límite: Search Records devuelve un máximo de 200 registros. Si necesitas procesar más, añade filtros específicos para reducir los resultados o utiliza flujos de trabajo programados para procesar por lotes.
Mejor práctica: Usa ramas después de Search Records para manejar escenarios de “encontrado” vs “no encontrado”.

Insertar o actualizar registro

Crea un registro nuevo o actualiza uno existente según criterios de coincidencia. Esto es útil cuando no estás seguro de si un registro ya existe. Configuración:
  • Seleccione el objeto de destino
  • Ten en cuenta qué campos pueden usarse para la coincidencia: email para Personas, dominio para Empresas, ID para cualquier objeto o cualquier campo marcado como Único. Deberás completar al menos uno de los siguientes.
  • Completa los valores de los campos. No olvides completar al menos uno de los identificadores únicos.
La coincidencia suele funcionar aún mejor al agregar solo un identificador único. Por ejemplo, la captura de pantalla a continuación hará coincidir empresas según su dominio. El ID no es estrictamente necesario.
  • Utilice datos de pasos anteriores para completar los campos
Cómo funciona:
  1. Busca un registro que coincida con sus criterios
  2. Si se encuentra → actualiza el registro existente
  3. Si no se encuentra → crea un registro nuevo
Salida: Los datos del registro creado o actualizado están disponibles para su uso en pasos posteriores.

Seleccionar registro

Selecciona un único registro de una lista de candidatos mediante una estrategia de distribución. Útil para asignar un cliente potencial entrante a un representante o distribuir registros entre un conjunto de propietarios. Configuración:
  • Seleccione los registros candidatos en el campo Elegir de
Elegir de solo acepta un conjunto estático de registros seleccionados manualmente; no puede pasar una variable como la salida de un paso Search Records.
  • Elija una estrategia:
  • Para Balanceado por carga, seleccione el objeto y el campo utilizados para contar la carga existente por candidato
Balanceado por carga cuenta todos los registros vinculados en ese campo, independientemente del estado; por ejemplo, todas las oportunidades vinculadas a un representante, no solo las abiertas.
Salida: El registro seleccionado está disponible para usarse en pasos posteriores.

Acciones de flujo

Iterador

Itera a través de un array de registros devueltos por un paso anterior, lo que le permite realizar acciones en cada registro de forma individual. Configuración:
  • Seleccione la matriz de registros de un paso anterior (por ejemplo, resultados de registros de búsqueda, de un disparador manual con disponibilidad masiva, de un nodo Code). Cuando un paso de Code o de una función lógica devuelve un array de nivel superior, selecciona la opción Lista completa para iterar sobre toda la salida.
  • Defina las acciones a realizar en cada registro en el bucle.
  • Puede agregar varias acciones dentro de un Iterador.
  • Cuando use ramas dentro de un Iterador, asegúrese de que el último paso de cada rama se conecta de vuelta al Iterador para cerrar el bucle.
  • Acceda a los campos de Elemento actual: para usar campos del registro que se está procesando, haga clic en el paso Iterador y luego seleccione Elemento actual. Se mostrará la lista de campos disponibles de ese registro y podrá seleccionarlos para usarlos en acciones posteriores. También puedes seleccionar Usar el elemento completo para pasar el elemento actual completo a un paso posterior.

Filtro

Filtra registros según condiciones especificadas, permitiendo que solo los registros que cumplan los criterios pasen. Configuración:
  • Seleccione el registro a filtrar
  • Defina condiciones y criterios de filtro
  • Configure qué registros deben pasar a pasos posteriores
  1. Salida: Los nodos de filtro no devuelven datos—actúan como compuertas. Si se cumplen las condiciones, el flujo de trabajo continúa. Si no, el flujo de trabajo se detiene en esa rama.
  2. El operador IS se puede usar con campos numéricos. Funciona como un EQUAL.

Retraso

Pausa la ejecución del flujo de trabajo durante una duración especificada o hasta una fecha/hora específica. Tipos de retraso: Configuración para la duración:
  • Establezca días, horas, minutos y/o segundos
  • Combine múltiples unidades (p. ej., 2 días y 4 horas)
Configuración para la fecha programada:
  • Seleccione una fecha y hora
  • Puede hacer referencia a un campo de fecha de un paso anterior (p. ej., hacer seguimiento 3 días después de una reunión)
Casos de uso:
  • Esperar 24 horas antes de enviar un correo de seguimiento
  • Pausar hasta la fecha de cierre de una oportunidad
  • Programar acciones para el horario laboral
La fecha programada no puede estar en el pasado. Si se usa un campo de fecha de un paso anterior y la fecha ya ha pasado, el flujo de trabajo fallará.
Límites y créditos:
  • Sin límite máximo de duración—puede establecer retrasos de minutos, días, semanas o más
  • Se consume un crédito de 0.0001 (0.0001(0.0001) cuando se ejecuta el nodo Retraso, al igual que un paso de flujo de trabajo estándar, independientemente de la duración
  • No se consumen créditos mientras se espera—un retraso de 5 minutos cuesta lo mismo que uno de 5 días

Acciones de comunicación

Enviar correo electrónico

Envía un correo electrónico desde su flujo de trabajo. Esto es ideal para correos electrónicos grupales con plantillas. Los correos se verán como los que envía desde su buzón. No es adecuado para boletines (que requieren un formato más richer) o secuencias de correo electrónico automatizadas. Prerrequisitos: Agregue una cuenta de correo electrónico en Configuración → Cuentas Configuración:
  • Seleccione la cuenta de correo del remitente
Solo puede enviar correos desde buzones sincronizados con su propia cuenta de Twenty. El envío desde los buzones de otros miembros del equipo (p. ej., el correo del propietario de la cuenta) está en la hoja de ruta.
En todos los pasos siguientes, puede hacer referencia a variables de pasos anteriores para la personalización.
  • Ingrese la dirección de correo electrónico del destinatario.
Por el momento, solo es posible un destinatario.
  • Establezca la línea de asunto.
  • Redacte el cuerpo del mensaje. Puede formatear enlaces, crear listas numeradas, listas de puntos de ballet y añadir archivos adjuntos.
No es posible agregar firmas HTML por el momento.

Borrador de correo electrónico

Crea un borrador de correo electrónico en lugar de enviarlo. Tiene la misma configuración que Enviar correo electrónico, pero el mensaje se guarda en la carpeta Borradores del buzón conectado para revisarlo y enviarlo manualmente, en lugar de enviarse automáticamente. Configuración: Los mismos campos que Enviar correo electrónico: cuenta del remitente, destinatario, asunto y cuerpo. Caso de uso: Correos electrónicos generados por IA o por flujos de trabajo que desea que una persona revise antes de enviarlos.

Crear evento de calendario

Crea un evento en un calendario conectado. Configuración:
  • Seleccione la cuenta de calendario conectada
  • Establezca el título, la descripción y la ubicación del evento
  • Establezca la fecha y hora de inicio y fin, o marque el evento como de día completo
  • Opcionalmente, establezca una zona horaria
  • Agregar asistentes
  • Elija si desea enviar invitaciones de calendario a los asistentes
  • Elija si desea agregar un enlace de conferencia al evento
Salida: Los datos del evento creado están disponibles para su uso en pasos posteriores.

Formulario

Abre un formulario para la persona que inicia el flujo de trabajo, a fin de recopilar información en el momento. Las respuestas pueden usarse luego en pasos posteriores para crear registros, enviar correos o ejecutar cualquier otra acción según la entrada.
Los formularios están diseñados solo para disparadores manuales. La persona que ejecuta el flujo de trabajo rellena un formulario de inmediato, y este no llega a la bandeja de entrada de nadie. Para flujos de trabajo con otros disparadores (Registro Creado, Actualizado, etc.), los formularios solo son accesibles a través de la interfaz de ejecución de flujos de trabajo. Para pedirle a alguien una respuesta o una aprobación en su bandeja de entrada, usa el paso Enviar a la bandeja de entrada.
Configuración:
  • Configure los campos que se pedirá a los usuarios que completen. Para cada campo, elija
    • un tipo entre texto, número, fecha, un registro dado, un campo de selección. Los campos de todos los objetos están disponibles para su selección.
    • una etiqueta
    • un valor predeterminado en Placeholder (opcional)
  • Edite el título del formulario
  • Añade instrucciones que se muestren encima de los campos (opcional). Pueden incluir variables de pasos anteriores, por ejemplo, el nombre del registro al que se refiere el formulario.
Salida: Las respuestas del formulario están disponibles para su uso en pasos posteriores. Ejemplo: El flujo de trabajo “Quick Lead” está disponible por defecto en todos los espacios de trabajo, disponible en cualquier lugar del menú de comandos Cmd+K. Cómo completar el formulario:
  • Activa tu flujo de trabajo manual desde el menú de comandos Cmd+K
  • Complete el formulario que se muestra en el panel lateral y haga clic en Submit.
Los campos no se pueden hacer obligatorios.

Acciones de integración

Código

Ejecuta JavaScript personalizado dentro de su flujo de trabajo. Detrás de escena, cada acción de código está respaldada por su propia función lógica —una función TypeScript del lado del servidor que se ejecuta en la plataforma Twenty—. Cuando agregas una acción de código, Twenty crea una función lógica dedicada para ese paso y muestra su editor en línea, de modo que el código que escribes queda asociado al flujo de trabajo. Configuración:
  • Acceda a variables de pasos anteriores. Puede editar los nombres de las variables dinámicamente.
  • Escriba el código JavaScript en el editor
  • Devuelva variables para su uso en pasos posteriores
  • Pruebe el código directamente en el paso
Si necesita usar claves de API externas en su código, debe introducirlas directamente en el cuerpo de la función. No puede configurar claves de API en otro lugar y hacer referencia a ellas en la función lógica.
¿Trabaja con arrays? Los arrays de sistemas externos o de pasos anteriores pueden venir como cadenas. Consulte Cómo manejar arrays en acciones de código para la solución.
Haga clic en el icono cuadrado en la parte superior derecha del editor de código para mostrarlo en pantalla completa — es útil, ya que el ancho predeterminado del editor es limitado.

Reutilizar una función lógica en distintos flujos de trabajo

La acción de código en línea es ideal para lógica puntual, pero el código que contiene pertenece a ese único paso. Cuando quieras compartir la misma lógica en varios flujos de trabajo —o mantenerla como código fuente versionado en una app—, define una función lógica reutilizable en lugar de copiar y pegar código en cada acción de código. Una función lógica se define una sola vez en una app (usando el defineLogicFunction del SDK) y se expone al generador de flujos de trabajo agregando workflowActionTriggerSettings. Una vez que tu app está instalada, esa función aparece como su propia acción en el generador de flujos de trabajo, junto con las acciones integradas. Al seleccionarla se muestran los campos de entrada que declaraste (con selectores de variables, como en las demás acciones) y se ejecuta tu código compartido; no se requiere JavaScript en línea. Ambas se ejecutan en el mismo entorno de ejecución de funciones lógicas, por lo que una acción de código que hayas prototipado en línea puede luego promocionarse a una función lógica reutilizable con cambios mínimos.
Para la referencia orientada a desarrolladores sobre cómo definir funciones lógicas y exponerlas en el generador de flujos de trabajo, consulta Logic Functions, en particular la sección Exposing a function as an AI tool or workflow action y workflowActionTriggerSettings.

Solicitud HTTP

Envía una solicitud a un API externo como parte de su flujo de trabajo. Configuración:
  • Ingrese la URL del extremo de la API. Es posible usar parámetros de pasos anteriores.
  • Seleccione el método HTTP (GET, POST, PUT, PATCH, DELETE)
  • Agregue encabezados y valores necesarios
  • Proporcione una respuesta de muestra para vista previa de estructura
Límites: la solicitud falla si tarda más de 30 segundos o si el cuerpo de la solicitud o la respuesta supera los 10 MB.

Acciones de IA

Agente de IA

Ejecuta un agente de IA dentro de su flujo de trabajo para realizar tareas inteligentes. Configuración:
  • Agente: Seleccione un agente de IA existente o use el agente predeterminado
  • Prompt: Escriba la instrucción para el agente de IA
  • Haga referencia a variables de pasos anteriores en el prompt
Qué pueden hacer los agentes de IA:
  • Analizar y resumir datos
  • Clasificar o categorizar registros
  • Generar contenido de texto
  • Tomar decisiones basadas en datos
  • Interactuar con sus datos de CRM usando herramientas
Salida: La respuesta del agente de IA está disponible para su uso en pasos posteriores. Si el agente tiene un esquema de salida estructurado, la respuesta seguirá ese formato.
Las acciones del agente de IA consumen créditos de flujo de trabajo según el modelo de IA utilizado. Consulte Créditos de flujo de trabajo para obtener detalles.
Los agentes de IA respetan los permisos basados en roles. Puede asignar roles específicos a los agentes en Configuración → Miembros → Roles para controlar a qué datos pueden acceder. Consulte Permisos para obtener detalles.

Clasificar

Pide a un modelo de IA que responda una o más preguntas estructuradas sobre datos de pasos anteriores; por ejemplo, calificar un cliente potencial o categorizar un mensaje entrante. A diferencia de Agente de IA, Clasificar siempre devuelve un valor con la estructura que definió, por lo que es adecuado para controlar ramas de forma determinista.
Requisito previo: Clasificar se ejecuta en el modelo de evaluación de Twenty (Jev), que un administrador debe habilitar y configurar con una clave de API de TypeSafe AI. Sin ella, la ejecución de este paso falla.
Configuración:
  • Entrada: Los datos que se van a clasificar (p. ej., un registro o texto de un paso anterior)
  • Preguntas: Agregue una o más preguntas, cada una con:
    • Un nombre: se utiliza para leer la respuesta en pasos posteriores (p. ej., {{stepId.answers.<name>}})
    • Un tipo: boolean, choice o score
    • Instrucciones para el modelo
    • Criterios: las posibles opciones o los niveles de puntuación de menor a mayor (no es necesario para boolean)
Salida: La respuesta a cada pregunta, identificada por su nombre, además del modelo utilizado.