Workflows
A workflow is the central unit of automation in Orvanta. It is a directed acyclic graph (DAG) of nodes, where each node represents a discrete step: a script execution, a conditional branch, a human approval, or an external API call.
Anatomy of a workflow
Section titled “Anatomy of a workflow”Trigger → Node A → Node B ──→ Node C └──→ Node D (parallel branch)Each workflow has:
- A unique ID and name. Used to reference the workflow in the CLI and API.
- Nodes. Individual steps connected by directed edges.
- Edges. Define the execution order and pass outputs between nodes.
- Triggers. Determine when the workflow runs (manual, scheduled, webhook, or API call).
- Context. A shared key-value store available to all nodes in a run.
Node types
Section titled “Node types”| Type | Description |
|---|---|
| Script | Runs a versioned script in a polyglot runtime (Bash, Python, TypeScript, Go, …). |
| ConsentGate | Pauses execution until a designated approver signs off. |
| Condition | Routes execution based on a boolean expression evaluated against the context. |
| Webhook | Sends an HTTP request to an external service and waits for a response. |
| Delay | Waits for a specified duration before continuing. |
| Sub-workflow | Invokes another workflow and waits for it to complete. |
Triggers
Section titled “Triggers”Workflows can be triggered in four ways:
- Manual. Via the UI Run button or
orvanta flow run. - Scheduled. Cron expression defined on the workflow.
- Webhook. An inbound HTTP POST to the workflow’s unique webhook URL.
- API. Programmatic trigger via the REST API.
Versioning
Section titled “Versioning”Every workflow change is versioned. You can pin a trigger to a specific version or always run the latest. Previous versions remain available for audit and rollback.
Related
Section titled “Related”- Scripts: Reusable code units used inside Script nodes.
- Jobs and runs: Individual executions of a workflow.
- Approval steps: Human-in-the-loop approval.