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

# Autenticación

> Cómo autenticarse con la API de LINA

## Métodos de autenticación

La API de LINA utiliza **Bearer tokens** para autenticar las peticiones. Existen dos formas de autenticarte:

| Método          | Uso recomendado      | Duración   |
| --------------- | -------------------- | ---------- |
| API Key directa | Desarrollo y testing | Permanente |
| Token JWT       | Producción           | 1 hora     |

## API Keys

### Generar una API Key

1. Accede a **Configuración** → **API Keys** en el panel de LINA
2. Haz clic en **Generar nueva clave**
3. Asigna un nombre descriptivo y selecciona los permisos
4. Copia y guarda la clave de forma segura

<Warning>
  La API Key solo se muestra una vez. Si la pierdes, deberás generar una nueva.
</Warning>

### Permisos disponibles

| Permiso               | Descripción                        |
| --------------------- | ---------------------------------- |
| `patients:read`       | Leer datos de pacientes            |
| `patients:write`      | Crear y modificar pacientes        |
| `forms:read`          | Acceder a formularios y respuestas |
| `schedules:write`     | Crear y gestionar programaciones   |
| `conversations:write` | Iniciar conversaciones IA          |
| `calls:write`         | Realizar llamadas automatizadas    |
| `credits:read`        | Consultar saldo de créditos        |
| `webhooks:write`      | Gestionar webhooks                 |

## Token JWT

Para producción, intercambia tu API Key por un token JWT de corta duración:

```bash theme={null}
curl -X POST https://api.linahealthcareplatform.com/api/v1/auth/token \
  -H "Content-Type: application/json" \
  -d '{"apiKey": "lina_sk_xxxxxxxxxxxx"}'
```

Usa el token en todas las peticiones:

```bash theme={null}
curl https://api.linahealthcareplatform.com/api/v1/patients \
  -H "Authorization: Bearer YOUR_JWT_TOKEN"
```

## Seguridad

<Info>
  **Mejores prácticas:**

  * Almacena las API Keys en variables de entorno
  * Usa tokens JWT para aplicaciones en producción
  * Rota las API Keys periódicamente
  * Asigna los mínimos permisos necesarios
  * Nunca expongas credenciales en código del lado del cliente
</Info>

## Errores de autenticación

| Código | Descripción                           |
| ------ | ------------------------------------- |
| `401`  | Token inválido o expirado             |
| `403`  | Permisos insuficientes para la acción |
| `429`  | Rate limit excedido                   |
