Jump to
Overview
Learn about the key components that make up a routine.
What is a routine?
A routine is a portable automation recipe that captures how to perform a specific task in any web app.
Define once. Reuse everywhere. Automate anything you can do in a browser.
Each routine includes:
- name: A human-readable identifier
- description: What the routine does
- parameters: Input values the routine needs to run (e.g. URLs, credentials, text)
- operations: The ordered browser actions that perform the automation
Example: Navigate to a dashboard, search based on keywords, and return results, all as a reusable routine.
Parameters
- Defined as typed inputs. Each parameter has required
nameanddescriptionfields. Optional fields includetype(defaults tostring),required(defaults totrue),default, andexamples. - Parameters are referenced inside
operationsusing placeholder tokens like"{{paramName}}"or"\"{{paramName}}\""(see Placeholder Interpolation below). - Parameter Types: Supported types include
string,integer,number,boolean,date,datetime,email,url, andenum. - Parameter Validation: Parameters support validation constraints such as
min_length,max_length,min_value,max_value,pattern(regex),enum_values, andformat. - Reserved Prefixes: Parameter names cannot start with reserved prefixes:
sessionStorage,localStorage,cookie,meta,uuid,epoch_milliseconds.
Operations
Operations define the executable steps of a routine. They are represented as a typed list and are executed sequentially by a browser.
navigate
Open a URL in the browser.
JSON
sleep
Pause execution for a given duration (in seconds).
JSON
fetch
Perform an HTTP request defined by an endpoint object (method, URL, headers, body, credentials). Optionally, store the response under a session_storage_key.
JSON
return
Return the value previously stored under a session_storage_key.
JSON
click
Click on an element using a CSS selector. Automatically validates element visibility.
JSON
input_text
Type text into an input element. Automatically validates element visibility.
JSON
press
Press a keyboard key (e.g., "Enter", "Tab", "Escape").
JSON
wait_for_url
Wait for the current URL to match a regex pattern.
JSON
scroll
Scroll the page or a specific element. Can scroll to absolute positions or by relative amounts.
JSON
return_html
Return HTML content from the page or a specific element.
JSON
Example sequence:
JSON
This defines a UI automation flow: navigate → fill form → submit → wait for redirect → scroll → return page HTML.
Placeholder interpolation
Placeholders inside operation fields are resolved at runtime:
Parameter placeholders:
{{paramName}}or\"{{paramName}}\"→ substituted from routine parametersStorage placeholders (read values from the current session):
{{sessionStorage:myKey.path.to.value}}: Access nested values in sessionStorage{{localStorage:myKey}}: Access localStorage values{{cookie:CookieName}}: Read cookie values{{meta:name}}: Read meta tag content (e.g.,<meta name="csrf-token">)