Skip to main content
The recipe tells a run how to install, build and start the program, and what each driver drives. Flow setup derives the recipe and proves it by running it. The recipe is stored with the rest of Flow setup’s results, one set per commit, and is never written into your repository. The web app does not edit the recipe. When the inputs the recipe was derived from change, the next Flow setup derives it again.
The recipe has a fingerprint. When it changes, the flows written against the old recipe are written again by the next Flow generation. That is also how declaring a service unblocks the flows that needed it.

Fields

The api block

How API tests use the server:
  • Each API test gets a fresh server in its own sandbox.
  • A test sends requests and checks the status, headers and body. It can capture values from a response body with capture, or from its headers with captureHeaders, and reuse them in later steps.
  • Each test has its own cookie jar. A cookie the server sets is sent back on later requests, so a login is just a first step.
  • Tests can also drive the server process itself, with boot, signal and logs steps.

The web block

A recipe that declares web also declares entry or api, because web steps run inside an ordinary test.

Credentials

Each entry in api.credentials names a request header and one source for its value: value, valueFromEnv or fromRequest. A test uses a credential by writing {{cred:<name>}} in a header value. An optional satisfies names the OpenAPI security scheme the credential fulfills, and an optional servers list limits it to the servers it authenticates against. fromRequest logs in instead of storing a value:
The run makes that call once and uses the captured value. capture is a path into the JSON body, and captureHeader reads a response header instead. When the login fails, the whole run stops as credential-request-failed rather than running unauthenticated. Every resolved credential is masked in transcripts as «cred:<name>».

Next steps

Seeding

Create the data and principals tests need.

External services

Stubs, faults and real accounts for third parties.