> 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 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`
