Saltar a contenido

API Keys

Las API Keys permiten acceso programático a Nexus desde scripts, aplicaciones y automatizaciones.

¿Para qué sirven?

Las API Keys permiten:

  • Integrar Nexus con otras herramientas
  • Automatizar operaciones via API
  • Crear scripts personalizados
  • Conectar sistemas externos

Vista general

┌─────────────────────────────────────────────────────────────────┐
│ API Keys                                           [+ Nueva]    │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│ Nombre          │ Permisos     │ Creada     │ Último uso │      │
├─────────────────┼──────────────┼────────────┼────────────┼──────┤
│ 🔑 CI/CD        │ tareas:write │ Ene 2024   │ Hace 1h    │ [🗑️]│
│ 🔑 Monitoring   │ read-only    │ Feb 2024   │ Hace 2d    │ [🗑️]│
│ 🔑 Scripts      │ full         │ Mar 2024   │ Nunca      │ [🗑️]│
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Crear API Key

1. Iniciar creación

  1. Ve a Mi cuenta > API Keys
  2. Haz clic en + Nueva API Key

2. Configurar

┌─────────────────────────────────────────────────────────────────┐
│ Nueva API Key                                                   │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│ Nombre *                                                        │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ CI/CD Pipeline                                              │ │
│ └─────────────────────────────────────────────────────────────┘ │
│ Un nombre descriptivo para identificar esta key                 │
│                                                                 │
│ Descripción                                                     │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ Para ejecutar tareas desde Jenkins                          │ │
│ └─────────────────────────────────────────────────────────────┘ │
│                                                                 │
│ Permisos                                                        │
│ ☑️ Tareas: Lectura                                              │
│ ☑️ Tareas: Ejecución                                            │
│ ☐ Tareas: Escritura                                             │
│ ☑️ Ejecuciones: Lectura                                         │
│ ☐ Agentes: Lectura                                              │
│ ☐ Proyectos: Lectura                                            │
│ ☐ Acceso completo                                               │
│                                                                 │
│ Expiración                                                      │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ Sin expiración                                         ▼    │ │
│ └─────────────────────────────────────────────────────────────┘ │
│                                                                 │
│                                           [Cancelar] [Crear]    │
└─────────────────────────────────────────────────────────────────┘

3. Copiar la key

Importante

La API Key solo se muestra una vez. Cópiala y guárdala de forma segura.

┌─────────────────────────────────────────────────────────────────┐
│ API Key creada                                                  │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│ ⚠️ Esta es la única vez que verás esta key completa.           │
│                                                                 │
│ ┌─────────────────────────────────────────────────────────────┐ │
│ │ nxs_a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0             │ │
│ └─────────────────────────────────────────────────────────────┘ │
│                                                  [📋 Copiar]    │
│                                                                 │
│ Guarda esta key de forma segura. No la compartas ni la         │
│ incluyas en código fuente público.                             │
│                                                                 │
│                                                      [Cerrar]   │
└─────────────────────────────────────────────────────────────────┘

Permisos disponibles

Permiso Descripción
Tareas: Lectura Ver tareas y configuración
Tareas: Ejecución Ejecutar tareas existentes
Tareas: Escritura Crear, editar, eliminar tareas
Ejecuciones: Lectura Ver historial de ejecuciones
Agentes: Lectura Ver lista de agentes
Proyectos: Lectura Ver proyectos
Acceso completo Todos los permisos

Usar la API Key

En headers HTTP

curl -X GET "https://api.nexus.app/v1/tasks" \
  -H "Authorization: Bearer nxs_a1b2c3d4..."

En cliente SDK

from nexus import Client

client = Client(api_key="nxs_a1b2c3d4...")
tasks = client.tasks.list()

Seguridad

Buenas prácticas

Variables de entorno

Nunca incluyas API Keys en el código. Usa variables de entorno:

export NEXUS_API_KEY="nxs_a1b2c3d4..."

Permisos mínimos

Otorga solo los permisos necesarios para cada key.

Rotación regular

Rota las keys periódicamente, especialmente si sospechas compromiso.

Qué NO hacer

  • ❌ Guardar en repositorios públicos
  • ❌ Compartir por email o chat
  • ❌ Usar la misma key para todo
  • ❌ Keys sin expiración para scripts temporales

Revocar API Key

Si una key está comprometida:

  1. Ve a API Keys
  2. Haz clic en el icono de eliminar 🗑️
  3. Confirma la revocación

La key deja de funcionar inmediatamente.

Límites de API

Plan Peticiones/minuto Peticiones/día
Free 60 1,000
Pro 300 10,000
Enterprise 1,000 Ilimitadas

Monitoreo de uso

Consulta el uso de cada key:

┌─────────────────────────────────────────────────────────────────┐
│ Uso de API Key: CI/CD Pipeline                                  │
├─────────────────────────────────────────────────────────────────┤
│                                                                 │
│ Peticiones últimos 7 días: 1,234                                │
│                                                                 │
│ 📊 [Gráfico de uso por día]                                     │
│                                                                 │
│ Endpoints más usados:                                           │
│ • GET /tasks - 45%                                              │
│ • POST /tasks/{id}/execute - 30%                                │
│ • GET /executions - 25%                                         │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

Siguiente: Configuración - Configuración del sistema.