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

# API keys

> Cómo crear, rotar y revocar tus API keys, y qué límites aplican.

## Dónde se gestionan

Tus API keys se administran desde la **Console** ([console.ipsofactura.com](https://console.ipsofactura.com)),
en la sección **API keys**: ahí puedes crearlas con un nombre descriptivo, ver su prefijo y
revocarlas. Las credenciales iniciales se entregan durante el onboarding.

Cada ambiente tiene sus propias keys: una key de producción no funciona en el
[sandbox](/sandbox), ni viceversa.

## Reglas

* **Máximo 5 keys activas** por cuenta. Si necesitas más espacio, revoca una que ya no uses.
* **El valor completo se muestra una sola vez**, al crearla. Solo almacenamos un hash: si
  pierdes la key no podemos recuperarla — crea una nueva y revoca la perdida.
* Cada key se identifica después por su **prefijo** (los primeros 13 caracteres), visible en
  la Console y en los logs de API.
* **Hoy no hay expiración automática ni restricción por IP**: una key es válida hasta que la
  revoques. Ambas capacidades están en el roadmap.

## Rotación sin downtime

El tope de 5 keys activas existe justo para poder rotar sin interrumpir el servicio:

<Steps>
  <Step title="Crea la key nueva">
    Desde la Console. Guarda el valor en tu gestor de secretos.
  </Step>

  <Step title="Despliega tu sistema con la key nueva">
    Ambas keys funcionan en paralelo mientras migras.
  </Step>

  <Step title="Revoca la key anterior">
    Cuando confirmes que ya no hay tráfico con el prefijo viejo (visible en tus logs de API),
    revócala. La revocación es inmediata: las requests con esa key reciben `401 INVALID_API_KEY`.
  </Step>
</Steps>

## Buenas prácticas

<Warning>
  Nunca expongas una API key en código cliente (frontend, apps móviles) ni la subas a un
  repositorio. Haz las llamadas siempre desde tu backend y guarda la key en un gestor de
  secretos.
</Warning>

* Usa una key por sistema/integración (el nombre te ayuda a saber cuál revocar).
* Monitorea el uso por prefijo para detectar keys olvidadas.
