Skip to main content
The graph builder gives you full control over execution flow. You define nodes (HTTP requests, browser steps, waits, assertions) and edges (the order they run in). This is the right choice when you need branching, parallel paths, or non-linear flows. For simple linear monitors, see the Sequential Builder. For browser-based monitoring, see Browser Monitors.

Basic example

Configuration

Adding nodes

Use addNode(name, node) to register steps. Four node types are available:

HTTP requests

HttpRequest config:

Browser steps

See Browser Monitors for the full step reference and BrowserAction config.

Waits

Assertions

See Assertions for the full assertion API.

Adding edges

Edges define execution order. Use addEdge(from, to) with START and END constants:
Rules:
  • Every graph must have at least one edge from START
  • Every graph must have at least one edge to END
  • Every node must have at least one incoming and one outgoing edge
  • The TypeScript compiler enforces these constraints — you’ll get a type error if a node is unconnected

Compile-time safety

The graph builder uses TypeScript’s type system to catch errors at compile time:

Complete example