There are two types of actions Simplex exposes: agentic actions, which call our custom web agents, and non-agentic actions, which are traditional browser automation actions like going to a web page, typing in text, or emulating key presses.

Agentic actions

click

Click on an element on the page using a natural language description.

def click(self, element_description: str) -> None
element_description
string
required

Natural language description of the element to click.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.google.com")
simplex.click("the search bar")

If you need to upload or download files during a click, you can use the click_and_upload or click_and_download actions.

exists

Check if an element exists on the page.

def exists(element_description: str) -> Tuple[bool, str]
element_description
string
required

Natural language description of the element to check.

return
Tuple[bool, str]

A tuple containing:

  • exists (bool): Whether the element exists.
  • reasoning (str): The reasoning behind whether the element exists.

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://servicetitan.com/")
# determine whether we're signed in or not
exists, reasoning = simplex.exists("Sign in button")
if exists:
    print("We're not signed in")
else:
    print("We're signed in")

hover

Hover over an element on the page using a natural language description.

def hover(element_description: str) -> None
element_description
string
required

Natural language description of the element to hover over.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://service.ariba.com/")
simplex.hover("supplier button")

select_dropdown_option

Select an option from a dropdown using a natural language description. Helpful when click() occasionally fails to register dropdown options.

For this method, the element_description must be an exact match to the dropdown option.

def select_dropdown_option(element_description: str) -> None
element_description
string
required

Natural language description of the dropdown option to select.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://service.ariba.com/")
simplex.select_dropdown_option("supplier button")

scroll_to_element

Scroll to an element on the page using a natural language description.

def scroll_to_element(element_description: str) -> None
element_description
string
required

Natural language description of the element to scroll to.

return
None

Example Usage

scroll_to_element.py
from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://buildops.com/")
simplex.scroll_to_element("Industries We Serve")

Non-agentic actions

goto

Navigate to a specific URL.

def goto(self, url: str) -> None
url
string
required

The URL to navigate to.

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.create_session()
simplex.goto("https://www.google.com")

type

Type text into an input field using a natural language description.

def type(text: str) -> None
text
string
required

The text to type into the input field.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.google.com")
simplex.click("the search bar")
simplex.type("nvidia stock")

press_enter

Press the enter key on the keyboard.

def press_enter() -> None
return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.google.com")
simplex.click("the search bar")
simplex.type("nvidia stock")
simplex.press_enter()

scroll

Scroll the page by a specified number of pixels.

def scroll(scroll_amount: int) -> None
scroll_amount
int
required

The amount of pixels to scroll by.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.linkedin.com/feed/")
simplex.scroll(200)

wait

Wait for a specified amount of time.

def wait(wait_time: int) -> None
wait_time
int
required

The amount of time to wait in milliseconds.

return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.google.com")
simplex.wait(1000)

reload

Reloads the page.

def reload() -> None
return
None

Example Usage

from simplex import Simplex
simplex = Simplex(api_key="your_api_key")
simplex.goto("https://www.google.com")
simplex.reload()