> For the complete documentation index, see [llms.txt](https://docs.does.qa/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.does.qa/test-steps/action/send-keys.md).

# Send Keys

Send keyboard keys, including special keys such as Enter and Tab.

Send keys presses keyboard keys in the browser. Use it for shortcuts and special keys such as Enter, Tab, or Escape. Prefer [Set value](/test-steps/action/set-value.md) when you only need to fill an input with text.

![Send keys Test Step](https://app.does.qa/screenshots/node/action_input_sendKeys.png)

## When to use it

* Submit a form with Enter after Set value.
* Move focus with Tab, or dismiss a dialog with Escape.
* Hold modifiers such as Ctrl or Shift for shortcuts.

## Configure

### Basics

| Field       | What to set                                                                                    |
| ----------- | ---------------------------------------------------------------------------------------------- |
| **Focus**   | `Element focus` (default) focuses the Element first. `Retain current` leaves focus where it is |
| **Element** | Required when Focus is Element focus                                                           |
| **Keys**    | Keys to send (supports special key tokens in the field)                                        |

### Advanced

| Field                                 | What to set                                          |
| ------------------------------------- | ---------------------------------------------------- |
| **Modifiers**                         | Optional `Shift`, `Ctrl`, `Windows`, or `Alt`        |
| **Status on fail**                    | [Failed Status](/test-step-options/failed-status.md) |
| **When should screenshots be taken?** | `Always` (default) or `On Failures`                  |

{% hint style="info" %}
**Pro tip:** Use Set value for the text, then Send keys with Enter when the app submits on keyboard rather than a button click.
{% endhint %}

## Related

* [Set value](/test-steps/action/set-value.md)
* [Clear](/test-steps/action/clear.md)
* [Touch](/test-steps/action/touch.md)
* [Action](/test-steps/action.md)

**Tags:** `action`, `input`, `sendKeys`, `keyboard`, `keys`
