Workflow Execution¶
Test, run, and monitor workflows with detailed execution logs and step-by-step status tracking.
Overview¶
Workflow Execution provides:
- Test Runs β Execute workflows in test mode before activating
- Execution Logs β Step-by-step status with input/output data
- Run History β View past workflow executions
- Real-Time Monitoring β Live progress tracking
- Error Handling β Detailed error messages and troubleshooting
Test Runs¶
What is a Test Run?¶
A test run executes a workflow without marking it as a production run. It’s used to verify that all steps work correctly before activating the workflow.
Running a Test¶
- Navigate to the Workflow Builder
- Click Test Run in the top-right corner
- The workflow executes:
- All steps run in sequence
- Real-time progress is displayed
- Results are shown for each step
- Review the execution log
- Fix any issues
- Run another test if needed
Test Run Behavior¶
| Aspect | Test Run | Production Run |
|---|---|---|
| Execution | Steps run normally | Steps run normally |
| Run Count | Not incremented | Incremented |
| Last Run At | Not updated | Updated |
| Webhook Calls | Real (if configured) | Real |
| Schedule | Not triggered by scheduler | Triggered by scheduler |
| Cost | Incurs real costs | Incurs real costs |
Execution Logs¶
Log Panel¶
The execution log panel appears at the bottom of the Workflow Builder during and after execution:
| Column | Description |
|---|---|
| Step | Step number and name |
| Action | Action type performed |
| Status | Pending, Running, Success, Failed, or Skipped |
| Duration | Time taken for the step |
| Error | Error message (if failed) |
Step Status¶
| Status | Icon | Description |
|---|---|---|
| Pending | Clock | Waiting to execute |
| Running | Spinner | Currently executing |
| Success | Green check | Completed successfully |
| Failed | Red X | Failed with error |
| Skipped | Gray dash | Skipped due to upstream failure |
Viewing Step Details¶
Click on a step to expand and view:
| Section | Description |
|---|---|
| Input Data | Parameters sent to the action |
| Output Data | Response from the action |
| Error Details | Full error message (if failed) |
| Duration | Execution time in milliseconds |
Overall Status¶
| Status | Description |
|---|---|
| Running | Workflow is currently executing |
| Completed | All steps finished successfully |
| Failed | One or more steps failed |
Run History¶
Viewing Past Runs¶
- Navigate to Workflows from the main menu
- Click on a workflow
- Click Execution History
History Table¶
| Column | Description |
|---|---|
| Run ID | Unique identifier |
| Status | Success, Failed, or Running |
| Trigger | Manual, Schedule, or Webhook |
| Started | Start timestamp |
| Completed | End timestamp |
| Duration | Total execution time |
Viewing Run Details¶
Click on a run to view the full execution log with step-by-step details.
Real-Time Monitoring¶
Live Progress¶
During execution, the log panel updates in real-time:
- Steps change from Pending β Running β Success/Failed
- Duration updates as each step completes
- Input/output data appears as steps finish
- Overall status updates when all steps complete
Polling¶
The frontend polls workflow_execution_steps every 1.5 seconds to track progress. Up to 60 polling attempts are made (90 seconds total).
Expression Resolution¶
Step References¶
Reference data from previous steps using the expression syntax:
Examples: - {{Step 1.output.contact_id}} β Contact ID from Step 1 - {{Step 2.output.event_id}} β Event ID from Step 2 - {{Step 1.output.email}} β Email from Step 1
Trigger References¶
Reference data from the trigger:
Examples: - {{trigger.email}} β Email from webhook payload - {{trigger.phone_number}} β Phone number from webhook - {{trigger.customer_name}} β Customer name from trigger
Nested References¶
Reference nested fields in JSON objects:
Error Handling¶
Step Failures¶
When a step fails:
- The step status changes to Failed
- An error message is displayed
- All subsequent steps are marked as Skipped
- The overall workflow status becomes Failed
Common Errors¶
| Error | Cause | Solution |
|---|---|---|
| Connection Required | Account not connected | Connect account in Settings β Connectors |
| Invalid Parameters | Wrong parameter format | Check parameter documentation |
| Rate Limited | Too many requests | Wait and retry |
| Permission Denied | Insufficient permissions | Check account permissions |
| Resource Not Found | Target doesn’t exist | Verify resource exists |
Retry Logic¶
The workflow engine implements:
- Automatic Retries β Failed actions retry with exponential backoff
- Max Retries β Configurable maximum retry attempts
- Dead Letter Queue β Failed messages after max retries
Production Runs¶
Activating a Workflow¶
- Navigate to the Workflow Builder
- Click Activate in the top-right corner
- The workflow becomes active and will be triggered by:
- Manual runs
- Scheduled triggers (cron)
- Webhook triggers
Deactivating a Workflow¶
- Navigate to the Workflow Builder
- Click Deactivate
- The workflow stops accepting new triggers
- In-progress executions continue to completion
Best Practices¶
- Always test first β Run a test before activating
- Use descriptive step names β Makes debugging easier
- Handle empty results β Use conditions to handle missing data
- Monitor execution logs β Check for errors regularly
- Set appropriate timeouts β Prevent long-running steps
- Use idempotent actions β Ensure safe retries
What’s Next¶
- Triggers β Configure when workflows run
- Actions β Explore available actions
- Templates β Use pre-built workflow templates
- FAQ β Common questions about workflows
Still questions? Ask on Discord or explore tutorials