Automation Workflows
Automation workflows allow you to create sophisticated, multi-step email sequences and contact management rules that execute automatically based on triggers.Visual Flow Builder
Workflows are built using a drag-and-drop visual canvas powered by React Flow (AutomationFlowBuilder.tsx).

Workflow Components
Triggers
Workflows start with a trigger event:| Trigger Type | Description |
|---|---|
contact_added_to_list | Contact joins a specific list |
tag_added | Tag is applied to contact |
campaign_sent | Campaign is delivered |
campaign_opened | Contact opens a campaign |
campaign_clicked | Contact clicks link in campaign |
no_activity | Contact inactive for X days |
scheduled_date | Specific date/time reached |
manual | Manually triggered by admin |
types.ts:lines 383-400:
Node Types
Build your workflow using these action nodes:Send Email
Send a personalized email to the contact.- Color: Blue (
#2563eb) - Icon: Mail
- Label: “Enviar Email”
Wait
Pause the workflow for a specified duration.- Color: Orange (
#d97706) - Icon: Clock
- Display: “Esperar “
Condition
Create branching logic based on contact behavior.- Color: Green (
#059669) - Icon: GitBranch
- Two output handles: “SÍ” (green) and “NO” (red)
Condition nodes create two separate branches in the flow. Each branch can contain its own sequence of nodes.
Update Tag
Add or remove tags from the contact.- Color: Pink (
#db2777) - Icon: Tag
- Display: ”+ Agregar” or ”− Quitar” + tag name
Move to List
Transfer contact to a different list.- Color: Cyan (
#0891b2) - Icon: List
End
Terminate the workflow.- Color: Gray (
#6b7280) - Icon: Flag
Creating a Workflow
Build Flow
Add nodes from the node palette:
- Send Email: Welcome message
- Wait: 2 days
- Condition: Check if email opened
- Branch True: Send follow-up
- Branch False: Send reminder
- End: Terminate flow
Configure Nodes
Click each node to edit:
- Email subject and content
- Wait duration
- Condition checks
- Tag names
- List IDs
Node Rendering
FromAutomationFlowBuilder.tsx:lines 42-112, nodes render with:
- Header: Icon + type label (uppercase)
- Body: Primary label (e.g., email subject, wait duration)
- Sublabel: Secondary info (e.g., “De: Admin”)
- Handles: Input (top) and output (bottom) connection points
Workflow Execution
When a trigger fires:- System creates an
AutomationExecutionrecord - Workflow processes nodes sequentially
- Each step is logged with timestamp
- Execution status:
running→completedorfailed
types.ts:lines 454-464:
Analytics
View workflow performance metrics:Example Workflows
Welcome Series
Re-engagement Campaign
Canvas Controls
The flow builder includes:- Pan: Click and drag canvas background
- Zoom: Mouse wheel or zoom controls
- MiniMap: Overview of entire workflow (bottom-right)
- Node Dragging: Reposition nodes (positions saved automatically)
AutomationFlowBuilder.tsx:lines 292-318:
Best Practices
Start Simple
Begin with 2-3 nodes, then expand as you learn.
Test Thoroughly
Use manual trigger to test workflows before activating.
Monitor Executions
Check execution logs regularly for failures.
Use Conditions Wisely
Too many branches create complexity. Keep flows linear when possible.
Troubleshooting
Workflow Not Triggering
- Verify workflow status is
Active - Check trigger configuration (correct listId, tag, etc.)
- Ensure contacts match trigger criteria
Nodes Not Executing
- Review execution logs for error messages
- Verify SMTP configuration for email nodes
- Check that list/tag IDs exist in the system
Condition Branches Not Working
- Ensure condition check matches actual data (e.g.,
has_tagrequires exact tag match) - Verify both branches have nodes (or explicit End nodes)
Related Documentation
- Email Campaigns - Standalone campaign sending
- SMTP Configuration - Required for email nodes
- CRM Lists - Creating lists and segments