How to import an Arazzo workflow in API Spector
Arazzo is the OpenAPI Initiative's specification for describing a sequence of API calls: the steps, the order, what each step checks, and the values it passes to the next one. It is a good way to write a workflow down once in a portable file. API Spector can read that file and turn it into a Flow you can run and edit.
Import the file
Open Import in the toolbar and choose Arazzo. Pick your .arazzo, .yaml, or .json workflow document. API Spector reads it, imports the OpenAPI specs it references so the steps have real requests to call, and builds one Flow for each workflow in the document. The Flow opens on the canvas when the import finishes.
What maps to what
The mapping follows the shape of Arazzo closely:
- Each workflow becomes a Flow, and its inputs seed the Start block.
- Each step becomes a Send Request block pointing at the imported operation, with the step's parameters and request body filled in. Values that reference an input or an earlier step, like
{$inputs.petId}or{$steps.login.outputs.token}, come across as{{petId}}and{{token}}. - A step's successCriteria become a Validate block with the matching
sp.testassertions. - A step's outputs become an Evaluate block that stores each value in a variable the later steps can use.
- onSuccess and onFailure routing becomes the edges between blocks, so a goto lands on the right step and an end stops the flow.
Read the import notes
Arazzo uses runtime expressions such as $response.body#/token and $statusCode. The common forms translate directly. Anything the importer cannot map with confidence is left as a clearly marked placeholder and listed in the import notes, so you can see exactly what to finish by hand rather than discovering a silent gap later. When the notes are empty, the flow is ready to run.
After importing
The result is a normal Flow. You can open any block, adjust an assertion, add a Delay or an If, or wire in a Parallel block, and run it from the canvas or from the command line in CI. The imported requests live in a collection named after the workflow document, so you can send them on their own too.
Why it helps
An Arazzo file describes a workflow but does not run it. Bringing it into API Spector as a Flow turns the description into something you can execute, assert on, and change, while keeping the requests and the steps the document already defined.