Docs
API 1.39
Status
DSL

Actions

One page per step action.

ActionDescription
fillTypes a value into a field. The target must be visible and editable; values typed into type=password fields are redacted.
clickClicks an element once it is visible, enabled and not covered; an obstacle in the way is handled by the obstacle layer first.
pressPresses a key, named as Playwright names keys (Enter, Tab, Control+A).
hoverMoves the mouse over an element, for menus and tooltips that open on hover.
selectChooses an option of a native <select> element, by exactly one of value, label or index (lint E001 otherwise).
checkChecks a checkbox or selects a radio button.
uncheckUnchecks a checkbox.
uploadSets the files of a file input from your organisation's uploaded assets.
scrollScrolls an element into view when given a target, or scrolls the page with the object form, for infinite-scroll lists. The object form needs to or until.
wait_forWaits until a condition holds, up to the step's timeout_ms, without doing anything else.
set_sessionLoads the named session's storage state at this point in the program. Rarely needed; prefer options.session.
extractReads data from the page with an extract schema. The last extract into data produces the job's result; several merge shallowly, later keys winning.
capture_responseWaits for a network response matching url (and method), observed since the step started, and stores its parsed JSON body in a variable. Bodies are limited to 2 MB.
evaluateRuns your own JavaScript in the page. The healer cannot see inside it, so lint warns W006, and it requires a paid organisation.
paginateRuns extract on each page, then follows next. Top-level many: true fields are concatenated across pages and other fields come from the first page; it stops at max_pages, when stop_when holds, when next is not found, or when the step's expect does not hold after next. A page whose extraction fails fails the step on that page; a next that breaks after some pages keeps them, with a pagination_incomplete warning.
downloadClicks a trigger, captures the file it downloads and stores it as a job artifact with the response's content type. A PDF passes the PDF security gate first: a blocked one is never stored, and the step fails with its code.
read_pdfReads the tables of a PDF the job has stored: the page the job is on when it is a PDF, or a named artifact such as a download's. Cells are returned exactly as printed, as strings; a table that continues over pages is one table. The file already passed the PDF security gate; nothing is fetched again. Lint warns W010 when no earlier goto or download could have produced the PDF.
set_varsSets variables from templates, as a map of variable name to template; each is readable later as {{vars.<name>}}.
sleepPauses for a fixed number of milliseconds, at most 10000. Lint warns W003; a wait_for condition is usually better.
reloadReloads the current page. The value is always true.
gotoNavigates the top frame to a URL, given as a template string or an object. It then waits for the page to settle (500 ms of network quiet, at most 10 s); lint warns W001 without an expect.
await_inputPauses the job as awaiting_input until a value such as a one-time code is supplied, then stores it in vars.<name>. The string form names the input.
checkpointSaves the page URL, variables and browser state so a parked or resumed job can return here. The string form is the checkpoint's name.
screenshotTakes a screenshot, stored as the artifact artifacts.<name>. The string form is the name.
whenRuns do when a condition holds and else, if given, when it does not.
loop_untilRepeats do until a condition holds. The condition is checked before each iteration; after max iterations the job fails with loop_exhausted unless the step is optional.

Was this page helpful?