# Get Text From Object

This is a pre-built Action located under the **@Custom Element**. The functionality of this Action in Avo Assure is to get the text of the specified element. The result is stored in the given dynamic variable for further use during test execution.

{% hint style="info" %}
The **Get Text From Object** action works only when the **VerifyExists** action is executed in a preceding step.
{% endhint %}

## Syntax

**Input Value**: `<ObjectType>;<VisibleText(Optional)>;<Index>;<abs(optional)>`

| Argument                            | Description                                                                                                                                            |
| ----------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <p>\<ObjectType><br>(Required)</p>  | Provide the type of object from which the text is retrieved. (e.g., button, link)                                                                      |
| <p>\<VisibleText><br>(Optional)</p> | Provide the visible text associated with the object.                                                                                                   |
| <p>\<Index><br>(Required)</p>       | <p>Provide the position of the object you want to identify based on its sequence in the application.<br><strong>Note</strong>: Index start from 0.</p> |
| <p>\<abs><br>(Optional)</p>         | Provide the absolute XPath of the object you want to identify for this operation.                                                                      |

{% hint style="info" %}
**Note**:

* If the last argument **abs** is defined, the action executes using absolute identification based on the specified absolute XPath provided in the input.
* To skip an optional input value, use an extra semicolon (;).
  {% endhint %}

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

| Argument                                 | Description                                                       |
| ---------------------------------------- | ----------------------------------------------------------------- |
| <p>\<Dynamic Variable><br>(Required)</p> | This dynamic variable stores the extracted text from the object.  |
| <p>\<Dynamic Variable><br>(Optional)</p> | This dynamic variable stores the status as **True** or **False**. |

### **Example 1: Retrieving Visible Text from a UI Element**

In this example, we are explaining how to extract the visible text from a UI Element.

* **Action**: Get Text From Object
* **Input Value**: button;;0
  * The first argument (**button**) specifies the object type to be identified.
  * The second argument is left blank to skip an optional value.
  * The third argument (**0**) specifies the index of the object when multiple matching elements are present.
* **Output Value**: {Text}
  * The extracted visible text content (**Submit**) is stored in the **{Text}** dynamic variable.
  * If a second output variable is defined, it stores the action status with the following possible values:
    * **True**: If the text is fetched successfully.
    * **False**: If the text is not fetched successfully.
* **Logical Explanation**: The **Get Text From Object** action reads the identification details from the **Input Value** column (**button;;0**). The action locates the matching UI element based on the specified object type and index and retrieves its visible text content. The extracted text (Submit) is stored in the **{Text}** variable.

<figure><img src="/files/a3ieGrLP0TGJUgjrYNvK" alt=""><figcaption></figcaption></figure>

### **Example 2: Retrieving Visible Text from a UI Element using Optional Parameters**

In this example, we are explaining how to extract the visible text from a UI element using optional identification parameters.

* **Action**: Get Text From Object
* **Input Value**: link;Click Me;0;//\*\[@id="oTN9K"]
  * The first argument (**link**) specifies the object type to be identified.
  * The second argument (**Click Me**) specifies the visible text of the object.
  * The third argument (**0**) specifies the index of the object when multiple matching elements are present.
  * The fourth argument (**//\*\[@id="oTN9K"]**) specifies the absolute XPath of the object.
* **Output Value:** {Text}
  * The extracted visible text content (**Submit**) is stored in the **{Text}** dynamic variable.
  * If a second output variable is defined, it stores the action status with the following possible values:
    * **True**: If the text is fetched successfully.
    * **False**: If the text is not fetched successfully.
* **Logical Explanation**: The **Get Text From Object** action reads the identification details from the Input Value column (**link;Click Me;0;//\*\[@id="oTN9K"]**). The action locates the matching UI element based on the object type, visible text, index, and absolute XPath and retrieves its visible text content. The extracted text (Click Me) is stored in the **{Text}** variable.

<figure><img src="/files/wGduHgsFunDkrikNITBy" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions: 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:

```
GET https://docs.avoautomation.com/avo-assure/actions/web/custom-1/get-text-from-object.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
