> ## Documentation Index
> Fetch the complete documentation index at: https://docs.whaapy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Variables Disponibles

> Lista las variables dinámicas disponibles para templates

Las variables te permiten personalizar los templates con datos del contacto, negocio o sistema. Whaapy resuelve automáticamente estas variables al enviar un mensaje.

## Parámetros

<ParamField query="contactId" type="string">
  UUID del contacto para obtener valores de ejemplo resueltos
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X GET "https://api.whaapy.com/templates/v1/variables" \
    -H "Authorization: Bearer wha_xxxxx"
  ```

  ```javascript Node.js theme={null}
  const response = await fetch(
    'https://api.whaapy.com/templates/v1/variables',
    {
      headers: { 'Authorization': 'Bearer wha_xxxxx' }
    }
  );
  const { data } = await response.json();
  ```

  ```python Python theme={null}
  import requests

  response = requests.get(
      'https://api.whaapy.com/templates/v1/variables',
      headers={'Authorization': 'Bearer wha_xxxxx'}
  )
  variables = response.json()['data']
  ```
</RequestExample>

<ResponseExample>
  ```json 200 OK theme={null}
  {
    "data": {
      "contact": {
        "name": "{{contact.name}}",
        "first_name": "{{contact.first_name}}",
        "last_name": "{{contact.last_name}}",
        "phone": "{{contact.phone}}",
        "email": "{{contact.email}}"
      },
      "business": {
        "name": "{{business.name}}",
        "phone": "{{business.phone}}",
        "email": "{{business.email}}",
        "address": "{{business.address}}",
        "website": "{{business.website}}"
      },
      "system": {
        "date": "{{system.date}}",
        "time": "{{system.time}}",
        "datetime": "{{system.datetime}}"
      }
    }
  }
  ```
</ResponseExample>

## Variables del contacto

| Variable                 | Descripción        | Ejemplo                                     |
| ------------------------ | ------------------ | ------------------------------------------- |
| `{{contact.name}}`       | Nombre completo    | Juan Pérez                                  |
| `{{contact.first_name}}` | Primer nombre      | Juan                                        |
| `{{contact.last_name}}`  | Apellido           | Pérez                                       |
| `{{contact.phone}}`      | Número de teléfono | +5215512345678                              |
| `{{contact.email}}`      | Email              | [juan@ejemplo.com](mailto:juan@ejemplo.com) |

## Variables del negocio

| Variable               | Descripción          | Ejemplo                                         |
| ---------------------- | -------------------- | ----------------------------------------------- |
| `{{business.name}}`    | Nombre del negocio   | Mi Empresa                                      |
| `{{business.phone}}`   | Teléfono del negocio | +5215500000000                                  |
| `{{business.email}}`   | Email del negocio    | [info@miempresa.com](mailto:info@miempresa.com) |
| `{{business.address}}` | Dirección            | Av. Reforma 123                                 |
| `{{business.website}}` | Sitio web            | [https://miempresa.com](https://miempresa.com)  |

## Variables del sistema

| Variable              | Descripción  | Ejemplo          |
| --------------------- | ------------ | ---------------- |
| `{{system.date}}`     | Fecha actual | 29/01/2026       |
| `{{system.time}}`     | Hora actual  | 10:30            |
| `{{system.datetime}}` | Fecha y hora | 29/01/2026 10:30 |

## Uso en templates

Puedes usar estas variables al enviar un template:

```javascript theme={null}
await fetch('https://api.whaapy.com/messages/v1', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer wha_xxxxx',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    to: '+5215512345678',
    type: 'template',
    template: {
      name: 'welcome_message',
      language: 'es_MX',
      components: [
        {
          type: 'body',
          parameters: [
            // Whaapy resolverá automáticamente el nombre del contacto
            { type: 'text', text: '{{contact.name}}' }
          ]
        }
      ]
    }
  })
});
```

<Tip>
  Whaapy resuelve las variables automáticamente al enviar el mensaje. Si una variable no tiene valor (ej: el contacto no tiene email), se enviará vacía o con un valor por defecto.
</Tip>

## Ver valores resueltos

Para previsualizar cómo se verán las variables para un contacto específico:

```bash theme={null}
curl "https://api.whaapy.com/templates/v1/variables?contactId=uuid-del-contacto" \
  -H "Authorization: Bearer wha_xxxxx"
```

Esto te devolverá las variables con sus valores resueltos para ese contacto.
