> For the complete documentation index, see [llms.txt](https://docs.avoautomation.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.avoautomation.com/avo-assure/actions/generic/other-operations/send-function-keys.md).

# Send Function Keys

This is a pre-built action located under the **@Generic** element type. The action helps to perform the keyboard based actions specified in the input value. The result is stored in the given dynamic variable for further use during test execution.

## Syntax

**Input Value**: `<function key>;<number>(Optional)`

{% hint style="info" %}
**Note**:&#x20;

* Function keys specified as input value is case insensitive.&#x20;
* Avoid adding spaces when specifying function key as input value.  <br>
  {% endhint %}

| Argument                                | Description                                                                                                                                                                         |
| --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>\<function key></p><p>(Required)</p> | Provide the function key or keyboard action you want to apply on the element.                                                                                                       |
| <p>\<number></p><p>(Optional)</p>       | <p>Provide the number of times the function key must be applied. </p><p><strong>Note</strong>: If no number is provided, the action automatically uses 1 as the default value. </p> |

**Output Value**: `<Dynamic Variable>(Optional)`

| Argument                                 | Description                                                                |
| ---------------------------------------- | -------------------------------------------------------------------------- |
| <p>\<Dynamic Variable><br>(Optional)</p> | This variable stores the action execution status as **True** or **False**. |

### **Example 1: Simulating a Function Key Press on a Element**

In this example, we explain how to simulate pressing a function key on a element within the application.

* **Action**: Send Function keys
* **Input Value**: F5
  * The argument **F5** specifies the function key to simulate on the captured element.
* **Output Value**: {Status}
  * The result of the function key action is stored in the **{Status}** dynamic variable with the following possible values:
    * **True**: If the function key is executed successfully.
    * **False**: If the function key is not executed successfully.
* **Logical Explanation**: The **Send Function Keys** action reads the value from the **Input Value** column **F5**. It identifies the captured UI element and performs the corresponding function key. The execution result **True** is stored in the **{Status}** variable.

![](https://2174257472-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fk8QZzXZMIJSStKAzDSTu%2Fuploads%2FAoKDUr2U3Ni5zgfXJflQ%2Funknown.png?alt=media\&token=6c50da01-9ff1-477f-af9f-48433ef3599b)

### **Example 2: Selecting Text Using a Key Combination**

In this example, we explain how to select the value of a captured element by performing the **ctrl+a** key combination.

* **Action**: Send Function Keys
* **Input Value**: ctrl+a;2
  * The first argument **ctrl+a** specifies the key combination to perform on the captured element.
  * The second argument **2** specifies that the key combination is performed twice.
* **Output Value**: {Status}
  * The result of the key combination action is stored in the **{Status}** dynamic variable with the following possible values:
    * **True**: If the key combination is executed successfully.
    * **False**: If the key combination is not executed successfully.
* **Logical Explanation**: The **Send Function Keys** action reads the value from the **Input Value** column as **ctrl+a;2**. It identifies the captured UI element and perform the **ctrl+a** key combination twice to select the element's value. The execution result **True** or **False** is stored in the **{Status}** variable.&#x20;

![](https://2174257472-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fk8QZzXZMIJSStKAzDSTu%2Fuploads%2FuGae3x22N7DRKwML8SRE%2Funknown.png?alt=media\&token=d1682ef4-5742-4088-84bd-c2d39b25519f)

## List of Function Keys&#x20;

The following are the supported function keys that you can use with the Send Function Keys action: &#x20;

| Function Keys | Input Values    | Supported Key Combination |
| ------------- | --------------- | ------------------------- |
| Insert        | insert          | Yes                       |
| Home          | home            | No                        |
| Pg Dn         | pagedown        | Yes                       |
| Pg Up         | pageup          | Yes                       |
| End           | end             | No                        |
| Enter         | enter           | Yes                       |
| Tab           | tab             | Yes                       |
| Shift         | shift           | Yes                       |
| Ctrl          | ctrl            | No                        |
| Alt           | alt             | No                        |
| Up Arrow      | uparrow         | Yes                       |
| Down Arrow    | downarrow       | Yes                       |
| Left Arrow    | leftarrow       | Yes                       |
| Right Arrow   | rightarrow      | Yes                       |
| Windows       | windows         | Yes                       |
| Prt Scr       | printscreen     | No                        |
| Caps Lock     | capslock        | Yes                       |
| Pause         | pause           | No                        |
| Delete        | delete          | No                        |
| Num Lock      | numlock         | No                        |
| 0             | num0            | Yes                       |
| 1             | num1            | Yes                       |
| 2             | num2            | Yes                       |
| 3             | num3            | Yes                       |
| 4             | num4            | Yes                       |
| 5             | num5            | Yes                       |
| 6             | num6            | Yes                       |
| 7             | num7            | Yes                       |
| 8             | num8            | Yes                       |
| 9             | num9            | Yes                       |
| Esc           | esc             | No                        |
| F1            | f1              | No                        |
| F2            | f2              | No                        |
| F3            | f3              | No                        |
| F4            | f4              | No                        |
| F5            | f5              | No                        |
| F6            | f6              | No                        |
| F7            | f7              | No                        |
| F8            | f8              | No                        |
| F9            | f9              | No                        |
| F10           | f10             | No                        |
| F11           | f11             | No                        |
| F12           | f12             | No                        |
| Backspace     | backspace       | Yes                       |
| Space         | space /spacebar | Yes                       |

## List of Key Combinations &#x20;

The following are the supported key combinations that you can use with the Send Function Keys action:  &#x20;

### Key Combinations for Windows &#x20;

| Key Combination | Input Value  | Common Usage                          |
| --------------- | ------------ | ------------------------------------- |
| Ctrl + C        | ctrl+c       | Copy                                  |
| Ctrl + A        | ctrl+a       | Select all                            |
| Shift + Enter   | shift+enter  | Insert a line break                   |
| Windows + V     | windows+v    | Open clipboard history                |
| Ctrl + Z        | ctrl+z       | Undo                                  |
| Ctrl + Y        | ctrl+y       | Redo                                  |
| Ctrl + V        | ctrl+v       | Paste                                 |
| Ctrl + X        | ctrl+x       | Cut                                   |
| Ctrl + N        | ctrl+n       | Opening new tab                       |
| Shift + Tab     | shift+tab    | Shifting between different elements   |
| Alt + Tab       | alt+tab      | Navigate between opened applications  |

### Key Combinations for Mac &#x20;

| Key Combination | Input Value  | Common Usage                          |
| --------------- | ------------ | ------------------------------------- |
| Command + C     | command+c    | Copy                                  |
| Command + A     | command+a    | Select all                            |
| Command + Z     | command+z    | Undo                                  |
| Command + V     | command+v    | Paste                                 |
| Command + X     | command+x    | Cut                                   |
| Control + tab   | control+tab  | Shifting between different elements   |
| Command + tab   | command+tab  | Navigate between opened applications  |

{% hint style="info" %}
To resolve issues that occur while using the **Send Function Keys** action, refer to the [Send Function Keys Action is Failing](/avo-assure/support-resources/knowledge-base-articles/generic/downloaded-file-can-be-accessed-by-anyone-1.md).
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.avoautomation.com/avo-assure/actions/generic/other-operations/send-function-keys.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
