Workflows
Durable workflows — a DAG of functions with retry-per-step and resumable state.
What it is
Workflows is a durable execution engine. Each step is a function call; the engine persists step results so the workflow survives crashes and retries. Define in YAML or in the SDK.
When to use it
- Multi-step ETL with retries per step.
- User-facing workflows (signup → KYC → fund → notify).
- Long-running tasks where you want guaranteed completion.
Quickstart
asc workflows create signup --definition ./signup.yaml
asc workflows runs start signup --input '{"user":"alice"}'client.workflows.create('signup', definition_path='./signup.yaml')
client.workflows.runs.start('signup', input={'user':'alice'})await client.workflows.runs.start('signup', { input: { user: 'alice' } });Limits & quotas
| Limit | Default | Burst | Notes |
|---|---|---|---|
| Max steps per workflow | 100 | — | |
| Max workflow duration | 30 days | — | |
| Per million step executions | $0.50 | — |
Pricing
See pricing. Pay-as-you-go, billed monthly via Stripe.
API surface
POST /v1/workflowsPOST /v1/workflows/{name}/runs
Required scope(s): workflows:write. See Scopes.
Security
All access is authenticated and scoped. See Auth & scopes and Network controls.