> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cloudcruise.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Input Text

> Type text into input fields

The **Input Text** node types text into form fields, text areas, and other editable elements.

## Parameters

| Parameter                | Type    | Required | Description                                                                                                         |
| ------------------------ | ------- | -------- | ------------------------------------------------------------------------------------------------------------------- |
| `text`                   | string  | Yes      | The text to type into the field                                                                                     |
| `execution`              | string  | Yes      | Execution type: `STATIC` (UI: "Static"), `LLM_VISION` (UI: "AI (Screenshot)"), or `COORDINATES` (UI: "Coordinates") |
| `selector`               | string  | No       | XPath selector (for `STATIC`) or JSON coordinates (for `COORDINATES`)                                               |
| `prompt`                 | string  | No       | Natural language description of the input field (for `LLM_VISION`)                                                  |
| `wait_time`              | number  | No       | Maximum time (ms) to wait for the element. Default: 15000                                                           |
| `do_not_clear`           | boolean | No       | If true, append text without clearing existing content. Default: false                                              |
| `submit_after_input`     | boolean | No       | If true, press Enter after typing. Default: false                                                                   |
| `selector_error_message` | string  | No       | Custom error message if element is not found                                                                        |
| `human_mode`             | boolean | No       | If true, use more human-like typing behavior                                                                        |

## Examples

### Basic Text Input

Type into a text field:

```json theme={null}
{
  "id": "abc123",
  "name": "Enter username",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "STATIC",
    "selector": "//input[@id='username']",
    "text": "john.doe@example.com"
  }
}
```

### Using Input Variables

Type dynamic values from workflow inputs:

```json theme={null}
{
  "id": "abc123",
  "name": "Enter search query",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "STATIC",
    "selector": "//input[@name='search']",
    "text": "{{context.inputs.search_term}}"
  }
}
```

### Submit After Input

Type and press Enter to submit:

```json theme={null}
{
  "id": "abc123",
  "name": "Search and submit",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "STATIC",
    "selector": "//input[@type='search']",
    "text": "{{context.inputs.query}}",
    "submit_after_input": true
  }
}
```

### Append Text Without Clearing

Add text to existing content:

```json theme={null}
{
  "id": "abc123",
  "name": "Append notes",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "STATIC",
    "selector": "//textarea[@id='notes']",
    "text": " - Additional note added by automation",
    "do_not_clear": true
  }
}
```

### Using LLM\_VISION

Type into a field identified by AI:

```json theme={null}
{
  "id": "abc123",
  "name": "Enter email",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "LLM_VISION",
    "prompt": "The email input field in the registration form",
    "text": "{{context.inputs.email}}"
  }
}
```

### Data Transformation

Transform data before typing using JSONata:

```json theme={null}
{
  "id": "abc123",
  "name": "Type formatted date",
  "action": "INPUT_TEXT",
  "parameters": {
    "execution": "STATIC",
    "selector": "//input[@id='date']",
    "text": "{{$fromMillis($toMillis(context.inputs.date, \"[Y0001]-[M01]-[D01]\"), \"[M01]/[D01]/[Y0001]\")}}"
  }
}
```

This converts a date from `YYYY-MM-DD` format to `MM/DD/YYYY` format.

## Notes

* By default, the input field is cleared before typing new text
* Use `do_not_clear: true` when you need to append to existing content
* The `submit_after_input` option is useful for search fields that trigger on Enter
* You can use [JSONata](https://jsonata.org/) expressions for data transformation
* For prepending text or custom handling of existing input content, first extract the current value using an [ExtractDatamodel](/concepts/workflow-dsl/extract-datamodel) node, then combine it with your new text in the Input Text node (e.g., `"{{context.inputs.prefix}}{{context.existing_value}}"`).
