# Formularios

Los formularios tienen una estructura fija pero con cantidad de campos variables lo que dependerá de cada formulario creado. Esta es la estructura estándar con todos los keys:

```json
{
    "name": "My form",
    "description": "My form for receive customers data",
    "fields": [
      {
        "name": "quia-eveniet-perspiciatis",
        "label": "quo dolorem quaerat?",
        "hint": "voluptatem eveniet consequatur",
        "type": "date",
        "value": "autem modi omnis",
        "options": [
          {
            "value": "Option value",
            "label": "Option label"
          }
        ],
        "colors": "#882E3F",
        "properties": {}
      }
    ]
  }
```

Habitualmente los formularios rellenados por clientes o ejecutivos usan esta estructura, por lo que existe una nomenclatura estándar para acceder a cualquier campo independiente de la key.

Las keys que contienen el formulario actualmente son: `baseForm`, `agentForm`, `submittedForm`, `contactForm`.

Si quisiera extraer u obtener el valor de un campo de un formulario individualmente, por ejemplo el nombre del cliente, debería hacer lo siguiente usando los helpers `get` y `find`.

```handlebars
{{#get 'value'}}
    {{#find @root.submittedForm}}
      {{#isEqual this.name}}customer_name{{/isEqual}}
    {{/find}}
{{/get}}
```

Esto devolvería el nombre del cliente a través el `name` como ID para filtrar en los campos del formulario usando el helper `#find` y luego usando el helper `#get` indicando que la key `value` del formulario es la que necesitamos extraer.

Esto ya que el helper `#find` busca el elemento dentro del listado de campos, y finalmente con `#get` extraemos la key específica del campo que sería `value`.


---

# 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.videsk.io/es-developers/webhooks/ejemplos/formularios.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.
