> ## 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.

# Templates

> Consulta y gestiona templates de WhatsApp aprobados

# Templates de WhatsApp

Los templates son mensajes pre-aprobados por Meta que puedes enviar **fuera de la ventana de 24 horas**. Son esenciales para iniciar conversaciones con clientes que no han escrito recientemente.

<CardGroup cols={2}>
  <Card title="Listar Templates" icon="list" href="/api-reference/templates/list">
    Obtén todos los templates aprobados
  </Card>

  <Card title="Obtener Template" icon="eye" href="/api-reference/templates/get">
    Detalles de un template específico
  </Card>

  <Card title="Variables" icon="code" href="/api-reference/templates/variables">
    Variables disponibles para personalización
  </Card>

  <Card title="Sincronizar" icon="arrows-rotate" href="/api-reference/templates/sync">
    Sincroniza templates desde Meta
  </Card>
</CardGroup>

## Scopes requeridos

| Endpoint       | Scope             |
| -------------- | ----------------- |
| Lectura (GET)  | `templates:read`  |
| Sincronización | `templates:write` |

## ¿Cuándo usar templates?

<AccordionGroup>
  <Accordion title="Iniciar conversación">
    Si el cliente no te ha escrito en las últimas 24 horas, debes usar un template para iniciar.
  </Accordion>

  <Accordion title="Mensajes masivos (broadcasts)">
    Para campañas de marketing o notificaciones a múltiples contactos.
  </Accordion>

  <Accordion title="Notificaciones transaccionales">
    Confirmaciones de pedidos, actualizaciones de envío, recordatorios de citas.
  </Accordion>
</AccordionGroup>

## Enviar Templates

Para enviar templates, usa el endpoint de mensajes con `type: "template"`:

```bash theme={null}
POST /messages/v1
{
  "to": "+5215512345678",
  "type": "template",
  "template": {
    "name": "order_confirmation",
    "language": "es_MX",
    "components": [
      {
        "type": "body",
        "parameters": [
          { "type": "text", "text": "Juan" },
          { "type": "text", "text": "12345" }
        ]
      }
    ]
  }
}
```

Ver [Enviar Templates](/api-reference/messages/send-templates) para documentación completa.

## Estados de Template

| Estado     | Descripción           | ¿Se puede enviar? |
| ---------- | --------------------- | ----------------- |
| `APPROVED` | Aprobado por Meta     | ✅ Sí              |
| `PENDING`  | En revisión por Meta  | ❌ No              |
| `REJECTED` | Rechazado (ver razón) | ❌ No              |

<Warning>
  Solo los templates con estado `APPROVED` pueden ser enviados. Los templates `PENDING` o `REJECTED` darán error al intentar enviarlos.
</Warning>

## Categorías de Template

| Categoría        | Uso                                      | Costo |
| ---------------- | ---------------------------------------- | ----- |
| `UTILITY`        | Transaccionales (pedidos, envíos, citas) | Menor |
| `MARKETING`      | Promociones, ofertas, newsletters        | Mayor |
| `AUTHENTICATION` | Códigos OTP, verificación                | Menor |

## Flujo de trabajo

```mermaid theme={null}
flowchart LR
    A[Crear template en Meta Business Manager] --> B[Meta revisa 24-48h]
    B --> C{Aprobado?}
    C -->|Sí| D[Sincronizar con Whaapy]
    C -->|No| E[Revisar razón y corregir]
    D --> F[Listo para enviar]
    E --> A
```

## Próximos pasos

<CardGroup cols={2}>
  <Card title="Enviar Templates" icon="paper-plane" href="/api-reference/messages/send-templates">
    Aprende a enviar templates con variables
  </Card>

  <Card title="Variables Disponibles" icon="code" href="/api-reference/templates/variables">
    Personaliza templates con datos del contacto
  </Card>
</CardGroup>
