Saltearse al contenido

Empezar

Autenticación

Cada petición a la API se identifica con una API key: una clave que pertenece a un negocio y que lleva sus propios permisos. No hay usuarios ni contraseñas; la clave es la credencial.

La clave se crea dentro de Olympus, en Configuración → Integraciones → Nueva clave, por un dueño o administrador del negocio. Se muestra una sola vez. El paso a paso, con qué poner en cada campo, está en Crear tu API key.

Envíala en la cabecera X-API-Key de cada petición:

Ventana de terminal
curl https://olympus.atharix.com/api/v1/me \
-H "X-API-Key: dlt_tu_clave_aqui"

También se acepta Authorization: Bearer dlt_… si tu cliente HTTP ya está montado sobre ese esquema.

Una clave solo puede hacer aquello para lo que se le dio permiso. Da siempre el mínimo necesario:

ScopePermite
invoices:writeEmitir facturas, reintentar envíos y reenviar correos
invoices:readConsultar y listar facturas, descargar PDF y XML
documents:readConsultar, listar y descargar notas, retenciones, guías y liquidaciones; cualquier comprobante por clave de acceso
documents:writeEmitir notas de crédito y débito, retenciones, guías de remisión y liquidaciones de compra (Ecuador)
contacts:writeCrear y actualizar clientes (próximamente)
catalog:readConsultar productos y tarifas (próximamente)

GET /me, GET /establishments y GET /catalogs/… funcionan con cualquier clave válida.

Si una clave intenta algo fuera de sus permisos recibe un 403:

{
"error": {
"code": "insufficient_scope",
"message": "La API key no tiene permiso para esta operación.",
"details": { "required": ["invoices:write"], "granted": ["invoices:read"] }
}
}

Al crear o editar una clave puedes acotarla más:

  • IPs permitidas. Una lista de direcciones o rangos CIDR (203.0.113.7, 10.0.0.0/24). Desde cualquier otra dirección la clave no funciona. Recomendado si tu sistema tiene IP fija.
  • Caducidad. Una fecha a partir de la cual la clave deja de servir. Útil para integraciones temporales o pruebas de un tercero.
  • Establecimiento por defecto. El establecimiento y el punto de emisión que se usan cuando el payload no los indica. Práctico si cada sistema factura desde una sucursal distinta.
  • Límite de peticiones. Un tope por minuto propio de esa clave, por debajo del general.

Rotar crea una clave nueva y deja la anterior viva durante un periodo de gracia (24 horas por defecto, hasta 7 días). Así puedes desplegar el cambio sin cortar la facturación:

  1. En Configuración → Integraciones, pulsa Rotar en la clave.

  2. Copia la clave nueva y despliégala en tu sistema.

  3. Cuando el despliegue esté confirmado, revoca la anterior sin esperar al final del plazo.

Al terminar el periodo de gracia, la clave vieja deja de funcionar sola.

Revocar es inmediato e irreversible: la siguiente petición con esa clave recibe un 401. No se puede deshacer; si te equivocas, crea una nueva.

{
"error": {
"code": "api_key_revoked",
"message": "Esta API key fue revocada. Genera una nueva desde Configuración → Facturación electrónica → Integraciones."
}
}
CódigoQué pasóQué hacer
invalid_api_keyFalta la cabecera o la clave no existeRevisa que envías X-API-Key y que la clave está completa
api_key_revokedLa clave fue revocadaCrea una nueva desde la web
api_key_expiredPasó su fecha de caducidadRota la clave o amplía la caducidad
api_key_disabledLa clave está desactivadaVuelve a activarla desde la web
ip_not_allowedTu IP no está en la lista de la claveAñade la IP o quita la restricción
insufficient_scopeLa clave no tiene ese permisoAñade el scope que indica details.required

Cada petición queda registrada: fecha, clave, endpoint, código de respuesta, duración y request_id. El negocio lo consulta en Configuración → Integraciones → Registro de peticiones. Los cambios en las claves (creación, edición, rotación, revocación) también quedan auditados con su autor.

Las claves nunca aparecen en claro: ni en la lista, ni en el registro, ni en los correos.