Your first flow

Build your first API test in Bandura in about five minutes: a request node, an assertion on the response, and a run you can read. No keys, no setup.

3 min read

This tutorial builds the smallest useful flow: call a public API, then assert on the response. No API keys, no setup. Just a workspace folder.

1. Create the file

In the File Explorer, right-click the background and choose New File. Name it:

first-flow.aether

The flow editor opens with the Graph tab active.

2. Add a request node

Right-click the empty canvas, choose Add node, and pick Request. The new node arrives prefilled with a working example (a GET to a public test API), so it runs as-is.

Click the node to select it. The inspector on the right shows its full YAML in the Node tab:

- id: fetch_todo
  type: request
  config:
    method: GET
    url: https://jsonplaceholder.typicode.com/todos/1
  next: null

Everything about a node is editable right here: the method, the URL, headers, and next, which names the node that runs after this one.

3. Add an assertion

Right-click the canvas again and add an Assertion node. Its check is a JavaScript expression that must be truthy; set it in the Node tab:

- id: check_status
  type: assertion
  config:
    check: "response.status === 200 && response.body.id === 1"
  next: null

Then wire the two together: drag from the port on the right edge of the request node onto the assertion card. An edge appears, and the request node’s YAML gains a line:

next: check_status

That line is the edge. Routing always lives on the node itself (next, or then/else for conditions), and the graph draws its edges from those fields, so what you see is exactly what’s in the file. Typing the next: line by hand in the Code tab does the same thing and draws the same edge, which is the point of having both views.

4. Save and run

Press ⌘S to save, then ⌘⏎ (or the brass ▶ Run button, or F5) to run.

Watch the graph: each node pulses while it runs, then takes a green ring for passed or a red ring for failed. The status bar bottom-right flips from Running… to Completed or Failed.

5. Read the results

  • Console (bottom panel, ⌘J if hidden): a timestamped log of every step.
  • Click a node → Result tab (inspector): for a request node, the exact request it sent (with every variable resolved) and the status, headers, and body that came back.
  • Variables (bottom panel): the variable values as of the end of the run.
  • History: this run and every run before it; click a row for full detail.

6. Peek at the file

Switch to the Code tab. That YAML is the entire flow, the same thing the graph was showing, and the same file you’d commit to Git. Edit it here if you prefer text; the graph follows.

Where to go next

Last updated

Haven't installed it yet? Download Bandura. Windows and Linux builds are on the download page, and macOS follows once the builds are signed and notarized.