# vritem/vridx/vrmsg

Provides access to the value (`vritem`) and index (`vridx`) when running a [validation rule](/reference/integration_components/validationrule.md) multiple times using the [`apply_to_each`](/reference/integration_components/validationrule.md#apply_to_each) column.

These variables are only populated when the `apply_to_each` column is set, and are only accessible in the validation rule's hooks.

{% hint style="info" %}
Read more about the `apply_to_each` column [here](/reference/integration_components/validationrule.md#apply_to_each).
{% endhint %}

{% hint style="warning" %}
Code in validation rules still has access to other special variables. If there is a naming conflict (e.g. `vritem` contains a field called payload) **then the non-vritem value wins out**.
{% endhint %}

### vrmsg

`vrmsg` is a validation rule-specific variable that contains the error message from a failed a validation rule. This is commonly used in the [`fail_hook`](/reference/integration_components/validationrule.md#validation-rule-hooks) of a validation rule to send the message up the integration chain.


---

# 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://glyue.docs.sandboxbanking.com/reference/special_variables/iterables/vritem-vridx-vrmsg.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.
