Flows Quickstart
Overview
Section titled “Overview”Orvanta’s flows are state machines represented as Directed Acyclic Graphs (DAGs) that compose scripts together. Scripts are at the basis of flows and apps, allowing you to build distributed workflows by sequencing actions, triggers, approvals, and error handlers.
Key features
Section titled “Key features”Performance: The overhead between steps is approximately 20ms, giving Orvanta faster workflow execution than competing orchestration engines.
Data exchange: Flows exchange data between steps using:
- Static values (fixed constants)
- Flow environment variables (accessible via
flow_env.VARIABLE_NAME) - Dynamic linking to previous step outputs via JSON objects
Shared directory: For heavy ETLs and non-JSON outputs, the ./shared folder allows data persistence between steps beyond result-based passing.
Core components
Section titled “Core components”The flow editor supports four script types:
- Action (default step type)
- Trigger (conditional execution)
- Approval (security and control gates)
- Error Handler (failure management)
Advanced workflow patterns include:
- For loops and while loops for iteration
- Branching (conditional execution via “Branch one” or parallel “Branch all”)
- Retry mechanisms with customizable attempts and delays
- Suspend/approval steps for manual intervention
Triggering & testing
Section titled “Triggering & testing”Flows activate through:
- Autogenerated UI from the editor
- Orvanta Apps (customized interfaces)
- Scheduled triggers using CRON expressions
- CLI execution
- Webhook invocation
- Trigger scripts with conditional logic
You can test individual steps or entire flows up to specific points before deployment.
Alternative approach
Section titled “Alternative approach”“Workflows as code” allows defining jobs and dependencies within Python or TypeScript scripts as an alternative to visual flow composition.