Automate web application
Description
The Automate Web Application activity enables automation of tasks within a web browser by simulating human-like interactions. It allows workflows to open a URL, interact with input fields, click buttons, extract text, wait for events, run custom scripts, and more—all within a defined sequence of actions.
This activity is ideal for browser automation, UI-based scraping, or integrating with third-party apps that lack APIs.
Use case:
In a price-monitoring workflow, use this activity to navigate to an eCommerce site, input a product name, extract its price, and take a screenshot. The result can be logged, analyzed, or emailed via a downstream activity.
Input
- Data – Optional
Output
| Output Type | Format | Description |
|---|---|---|
| Data | JSON | Result of executed browser actions, including screenshots and logs |
Configuration Fields
| Field Name | Description |
|---|---|
| Start URL | The initial URL to launch in the browser for automation (e.g., https://example.com/login). |
| Browser | Web browser to use. Options: Chrome, Firefox. |
| Key Column | Maps a unique identifier from the input data to each execution cycle. Helps track outputs row-wise. |
| Args | Optional input arguments from previous activity to dynamically control actions (e.g., user credentials, search terms). |
| Actions | A sequenced list of browser-based tasks to perform. See details in the next section. |
Action Types & Selector Syntax
Each action supports configuration of its selector and parameters.
Selector Basics
Most actions use a selector to identify the target HTML element. Selectors must follow CSS Selector conventions.
To get the selector of an element on a webpage, right-click the element in your browser, choose “Inspect”, then in the Developer Tools panel, right-click the highlighted HTML and choose “Copy → Copy selector”. This gives a unique CSS selector you can use in automation.
| Selector Type | Example | Description |
|---|---|---|
| ID | #username | Matches element with ID username. |
| Class | .login-button | Matches any element with class login-button. |
| Tag | input | Matches all <input> elements. |
| Attribute | input[name='email'] | Matches input element with name="email". |
| Hierarchy | div.form-group > input[type=text] | Matches child input inside div.form-group. |
| Multiple | ul > li:nth-child(2) | Matches the second list item. |
Supported Actions
| Action Type | Description |
|---|---|
| Click | Simulates a click on an element (selector required). |
| Input Text | Enters text into an input field (selector and text required). |
| Wait | Waits for a fixed number of milliseconds (duration field required). |
| Script | Executes a custom JavaScript snippet in the browser context. |
| Select Field | Selects a field (typically for focus or validation). |
| Extract Text | Extracts visible text from a target element (selector required). |
| Fill | Similar to Input Text but used for full form population (selector, value). |
| Dynamic Text | Inserts dynamic text based on input data or variables. |
| Drag And Drop | Drags one element and drops it on another (sourceSelector, targetSelector). |
| Dropdown | Opens a dropdown element (selector) and selects an option. |
| Find Selector | Locates the presence of an element in the DOM (selector). |
| Focus | Moves browser focus to a specific element. |
| Screenshot | Captures a screenshot at the current step of the browser window or page section. |
| Hover | Simulates a mouse hover over an element. |
| SelectOption | Selects an option in a dropdown by value or visible label (selector, value). |
| Tap | Simulates a mobile tap action. |
| Wait for Selector | Waits until a selector becomes visible or present in the DOM. |
| Wait for Navigation | Pauses until a page reload or navigation completes. |
Sample Input
Not applicable
Sample Configuration
| Field | Value |
|---|---|
startUrl | https://www.google.com/ |
browser | Chrome |
keyColumn | SearchKeyword |
args | { "searchTerm": "Infoveave" } |
actions | See example below |
Actions Example:
| Action Type | Selector Value | Value |
|---|---|---|
Input Text | input[name='q'] | Infoveave |
Wait for selector | input[name='q'] | None |
Keyboard Press | input[name='q'] | Enter |
Wait for navigation | None | None |
Click | div#search h3:nth-of-type(1) | None |
Wait for navigation | None | None |
Screenshot | None | 5 |
| Key | Value |
|---|---|
www.google.com |
|