Skip to main content
Extraction actions capture data from web pages during automation—essential for scraping, validation, and feeding dynamic values into subsequent actions.

Extraction Types

Common Properties

These properties sit on the extraction_action object itself, regardless of extraction type:

allow_none

By default, if you declare output_variable_names and any of those variables comes back null, the workflow fails immediately with an error like:
Set allow_none: true on the extraction_action when the value may legitimately be absent on some pages:
Only use output_variable_names when you need to reference the extracted value in a later action (e.g. {price[0]}). If you only need the value in the output data and won’t reference it downstream, omit output_variable_names entirely — the null-check is skipped and the value is simply stored in OutputData.

LLM Extraction

The most powerful extraction method. Uses AI to parse page content into structured data.

Properties

Source Selection

Extraction Format

Define output structure with type hints:
Only str and List[str] are supported types.

Storing as Variables

Use output_variable_names to make extracted values available for subsequent actions:
After this action, use {order_ids[0]}, {order_ids[index]}, or iterate with for_loop_node.

Writing Good Instructions

Good examples:
Poor examples:
Be specific about where data appears, what it looks like, and expected format.

Locator Extraction

Extract text from a specific element on the page using a Playwright locator — no LLM tokens consumed. If the locator fails, it can fall back to LLM extraction.

Properties

Fallback Behavior

If the locator fails to find the element or find text content, two outcomes are possible:
  • With extraction_instructions — falls back to LLM extraction automatically
  • Without extraction_instructions — variable is set to None

When to Use Locator vs LLM

Always provide extraction_instructions as a fallback. This makes the extraction resilient if the page structure changes.

Network Call Extraction

Capture data from API requests and responses:

Properties

Use network_call to intercept requests the page already makes. Use api_call (below) to initiate your own HTTP request to any external endpoint.

API Call Extraction

Make an outbound REST API call directly from the automation—useful for hitting webhooks, triggering backend jobs, enriching data from a third-party service, or polling an async endpoint until it’s ready. The full response is stored as a variable for use in later actions.

Properties

Response Shape

The stored variable holds a dict with the following keys:

Using the Response

Reference fields of the response in later actions with dot-path syntax: {var.field}, {var.nested.field}, and {var.array[0].field}. Both object keys and array indices are supported.
After this action, {create_result.body.id} resolves to the new customer’s ID, and {create_result.status_code} resolves to 201.
Dot-path resolution ({var.field}) applies only to dict-valued variables such as API responses. The existing list-indexing format {var[0]} from llm extraction is unaffected.

Polling

For asynchronous endpoints, set poll_condition to keep re-requesting until the condition is met (or max_poll_attempts is reached). The condition is a Python-style boolean expression evaluated against the response dict, supporting both top-level keys and dot-paths:
Example conditions: If the condition is never met within max_poll_attempts, the last response is stored and the automation continues.

Screenshot Extraction

Save a screenshot for later analysis:

State Extraction

Capture page state, including URL/title plus browser storage and cookies:

Output

state extraction appends an OutputData.json_data object with the following shape:

Python Script Extraction

Run a custom Python function to extract data from the current page’s accessibility tree or perform any computed logic.

Properties

The code_fn function receives the page’s accessibility tree as a plain string (axtree) and the Playwright browser object. Return None to skip storing any output.

Two-Factor Authentication Extraction

Wait for and extract 2FA code:

Properties

Action Types

For more information on how to use the 2FA code in your automation, please refer to the Two-Factor Authentication Integration documentation.

Timing

Extraction actions have different timing defaults to allow pages to fully load: Override if needed:

When to Use Each Type