Steps

Creating, configuring, and managing HTTP request steps within a flow.

What is a Step?

A step is a single HTTP request within a flow. Each step is a full-featured HTTP request with its own method, URL, headers, body, authentication, assertions, pre/post scripts, and variable extractions.

Creating Steps

There are three ways to add steps to a flow:

1. Create Manually

  1. 1Click the + button in the Step List header to open the inline create form
  2. 2Select the HTTP method and enter a name
  3. 3Press Enter or click the checkmark to create

2. Import from Box

Click the button next to the + button → From Box to import saved requests. Select one or more items from your Box and they'll be added as steps with all their configuration preserved.

3. Import from Projects

Click the button → From Projects to import endpoints from your API projects. Select endpoints from any project and module. Response contracts are also imported if available.

Configuring a Step

Click a step in the Step List to open it in the detail panel. The detail panel shows the same HTTP request editor you use for regular requests:

  • Request Line: Method, URL, and Send button (to test the step individually)
  • Request / Response toggle: Switch between configuring the request and viewing the response
  • Request tabs: Body, Params, Headers, Auth, Vars, Processors (pre/post scripts, assertions)
  • Retry tab: Configure retry behavior (max retries, delay strategy, retry conditions)
  • Response tabs: Body, Headers, Cookies, Detail, Contract

Tip: You can test any step individually by clicking its Send button. This sends the request without running the entire flow, useful for debugging a single step.

Managing Steps

ActionHow
ReorderDrag a step by its handle (dots icon) and drop at the new position
Enable / DisableClick the eye icon on hover. Disabled steps are skipped during execution.
RenameOpen the step menu (three dots) → Rename
DuplicateOpen the step menu → Duplicate. Creates a copy with all configuration.
DeleteOpen the step menu → Delete. A confirmation dialog appears if enabled in preferences.

Retry Configuration

Steps can be configured to automatically retry failed requests. Open a step and navigate to the Retry tab to configure:

  • Max Retries: How many times to retry before giving up (e.g., 3 retries = 4 total attempts)
  • Retry on Network Error: Retry when the request fails to reach the server (DNS, timeout, connection refused)
  • Retry on Server Error: Retry when the server returns 5xx status codes
  • Retry on Rate Limit: Retry when the server returns 429 (Too Many Requests)

Delay Strategies:

fixedWait the same duration between each retry (e.g., 1000ms every time)
exponentialDouble the delay each time (e.g., 1s → 2s → 4s → 8s). Capped at 5 minutes.

The Base Delay field sets the initial wait time in milliseconds. For fixed strategy, this is the delay between every retry. For exponential, this is the starting delay that doubles with each attempt.

Note: After execution, the retry count is shown in the step results so you can see how many attempts were needed.

Pre-Request & Post-Response Scripts

Each step can have JavaScript scripts that run before the request is sent and after the response is received. Configure them in the Processors tab.

Scripting API (tg.*):

NamespaceAvailable InMethods / Properties
tg.requestPre (read/write), Post (read-only).url, .method, .headers, .body, .setHeader(), .removeHeader()
tg.responsePost only.status, .statusText, .headers, .body, .json(), .timing
tg.environmentPre & Post.get(key), .set(key, value), .has(key)
tg.flowPre & Post (flow execution only).get(key), .set(key, value), .has(key)

Note: The script editor provides autocomplete for all tg.* methods. Just type tg. and the editor will suggest available namespaces and methods.

Step Status Indicators

During and after flow execution, each step in the list shows its status:

⋮⋮Pending — not yet executed
Running — currently executing
Success — completed successfully
Failure — request failed or assertion failed
»Skipped — step was disabled or unreachable in graph mode