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

# Autenticación

> Cómo autenticar tus requests a la API de Factio

La API de Factio usa **API Keys** para autenticar todas las solicitudes.

## Obtener tu API Key

1. Inicia sesión en [app.factioapp.com](https://app.factioapp.com).
2. Ve a **Configuración → API Keys**.
3. Haz clic en **Crear API Key**.
4. Asigna un nombre descriptivo (ej: `ERP Producción`).
5. Copia la key inmediatamente — **no se muestra de nuevo**.

## Tipos de API Key

| Prefijo     | Entorno    | Uso                                        |
| ----------- | ---------- | ------------------------------------------ |
| `fct_live_` | Producción | Emisión real con efecto fiscal ante el SRI |
| `fct_test_` | Sandbox    | Pruebas, sin efecto fiscal real            |

<Warning>
  **Nunca incluyas tu API key en código fuente o repositorios.**
  Usa variables de entorno o un gestor de secretos.
  Si una key queda expuesta, revócala inmediatamente desde el panel.
</Warning>

## Cómo incluir la API Key en tus requests

Incluye la key en el header `X-API-Key` en cada request:

```bash theme={null}
curl -X POST https://api.factioapp.com/documents \
  -H "Content-Type: application/json" \
  -H "X-API-Key: fct_live_TU_API_KEY_AQUI" \
  -d '{ ... }'
```

```python theme={null}
import httpx

client = httpx.Client(
    base_url="https://api.factioapp.com",
    headers={"X-API-Key": "fct_live_TU_API_KEY_AQUI"},
)
```

## Scopes (próximamente)

En una versión futura, las API Keys tendrán scopes configurables:
`documents:write`, `documents:read`, `buyers:write`, etc.
Por ahora, cada key tiene acceso completo al tenant que la generó.

## Revocar una API Key

Desde **Configuración → API Keys**, selecciona la key y haz clic en **Revocar**.
Los requests en curso con esa key fallarán inmediatamente con `401`.
