No code generation. No glue scripts. Define multi-step API sequences in YAML, then run, trace, replay, and debug them interactively.
arazzo: "1.0.0"
info:
title: User Authentication Flow
version: "1.0"
sourceDescriptions:
- name: api
url: https://api.example.com
type: openapi
workflows:
- workflowId: authenticate
steps:
- stepId: login
operationPath: POST /auth/login
parameters:
- name: Content-Type
in: header
value: "application/json"
requestBody:
payload:
username: {$inputs.username}
password: {$inputs.password}
successCriteria:
- condition: $statusCode == 200
outputs:
token: $response.body.token
- stepId: get-profile
operationPath: GET /users/me
parameters:
- name: Authorization
in: header
value: "Bearer {$steps.login.outputs.token}"
successCriteria:
- condition: $statusCode == 200
Three steps from YAML to running workflows.
Write your API workflow in YAML using the Arazzo 1.0 spec. Steps, parameters, criteria, control flow — all declarative.
Execute against live APIs. Expressions resolve automatically, retries fire on failure, control flow routes on criteria.
Set breakpoints in VS Code, step through workflows, inspect variables. Full DAP debugger with watch expressions.
Everything you need to run multi-step API workflows.
Execute HTTP steps, resolve expressions, evaluate success criteria, route control flow via onSuccess/onFailure actions.
DAG-based scheduling runs independent steps concurrently. Deterministic traces even under parallel execution.
Detailed trace.v1 JSON artifacts capture every request, response, criteria evaluation, and routing decision. Sensitive values auto-redacted.
Re-execute traces offline with injected responses. Detect request drift for CI regression testing without network access.
$inputs, $steps, $response, $env, XPath, JSON Pointer, string interpolation. Full Arazzo expression surface.
Type-check workflow inputs against JSON Schema. Strict mode makes validation errors fatal. Catch mistakes before network calls.
Scaffold CRUD workflows from OpenAPI 3.x specs. Authentication detection, chained outputs, realistic request bodies.
onSuccess/onFailure actions with goto, retry (with backoff), and end. Criteria guards select the first matching action.
--json on every command. Stable schemas, structured errors, JSON Schema introspection. Built for CI and scripting.
Full Debug Adapter Protocol implementation. Set breakpoints on workflow steps, success criteria, and actions. Step through execution, inspect variables, evaluate watch expressions.
One of only two DAP implementations that supports breakpoints directly in YAML source files.
Built for reliability.
No unsafe code. unwrap/expect denied by clippy. Bounded execution limits. Automatic secret redaction in traces and output.
Compiled Rust binary. Regex caching via LazyLock. Parallel DAG execution. Sub-second startup. LTO-optimized release builds.
MIT licensed. 339 tests, all hermetic. Full Arazzo 1.0 expression surface. Programmatic Rust API via arazzo-runtime crate.
Install, validate, run.
Install from source
Or download a prebuilt binary
Validate and run a workflow
Record a trace and replay it offline
Rust 1.82+ · Linux, macOS, Windows · MIT License