Skip to content

Flows Quickstart

This walks through building the smallest useful flow: log in, grab the auth token from the response, use it on a second request, and assert that request succeeded. It assumes you already have a Login request and a Get Profile request saved somewhere in a Composer collection — see Composer if you need to build those first.

Switch to Composer (the Proxy / Compose toggle in the toolbar), find FLOWS in the sidebar, and click +. Give it a name — "Login Smoke Test" works — and confirm. An empty canvas opens with a single Start node already on it.

A brand-new flow: an empty canvas with just a Start node and an onboarding panel headed 'Chain API requests into a flow' with a 'Create sample flow' button

Drag your Login request from the collection tree in the sidebar onto the canvas. This creates a request node wired to that saved request. Connect Start's out-port to the Login node's in-port by dragging between them — press on the out-port, drag to the in-port, release.

The node's name (shown in its title, editable in the inspector) is what downstream nodes will use to reference it — leave it as login or rename it to something clearer. Renaming a node automatically rewrites every {{login.*}} reference elsewhere in the flow, so it's safe to do at any point.

Select the Login node to open its inspector. Under Extractions, click Add Extraction and fill in:

  • Name: token
  • Source: Body
  • Path: whatever your login response uses, e.g. data.accessToken

This publishes the value as {{login.outputs.token}} for any node downstream of Login — see Variables & Extractions for the other reference forms (you can also read a body path or header straight off a node without declaring an extraction first).

4. Add the Get Profile request and reference the token

Section titled “4. Add the Get Profile request and reference the token”

Drag Get Profile onto the canvas and connect Login's out-port to it. Select the Get Profile node, open its Headers (or wherever your API expects the token — an Authorization header is typical), and set:

Authorization: Bearer {{login.outputs.token}}

Probe resolves that at run time using whatever value Login extracted.

The Login → Get Profile flow on the canvas with the Get Profile node selected; its inspector is open on the right showing Inputs, Extractions, and Assertions, while the node card carries the token={{login.outputs.token}} reference in its URL

Still on the Get Profile node's inspector, under Assertions, click Add Assertion:

  • Source: Status
  • Operator: equals
  • Expected: 200

Add a second one if you want to check the body shape too — e.g. Body, path data.id, operator exists.

Click Run in the toolbar docked above the canvas. Each node's status dot updates live as it executes — running, then passed or failed. When the run finishes, the run report panel at the bottom lists every node with its status, duration, and assertion results; click a row to expand the full response body.

The run report panel after a passing run: Start, login, and get_profile rows each with a green check, status 200, per-node duration, and assertion counts; the login row is expanded to show its pretty-printed JSON response body

If a node fails — say the token extraction path was wrong — Login shows failed, and Get Profile (and anything after it) shows skipped, since {{login.outputs.token}} never resolved. Fix the path in the inspector and run again.