Volver a Documentación

Autenticación

Documentación completa sobre autenticación y seguridad en la API de Rayuela.

Métodos de Autenticación

Rayuela utiliza dos métodos de autenticación según el tipo de operación:

API Keys

Para llamadas de aplicación (recomendaciones, ingesta de datos)

Recomendado para producción

JWT Tokens

Para acceso al dashboard y gestión de cuenta

Solo para dashboard
API Keys
Autenticación principal para llamadas de aplicación

Recomendación: Usa API Keys para todas las llamadas de tu aplicación en producción.

Formato de API Key

sk_prod_1234567890abcdef1234567890abcdef12345678

Uso en Headers

curl -X GET "https://rayuela-backend-e7apihrdoa-uc.a.run.app/api/v1/health/auth" \
     -H "X-API-Key: sk_prod_tu_api_key_aqui"

Verificar API Key

Usa este endpoint para verificar que tu API Key es válida:

GET /health/auth

# Respuesta exitosa (200):
{
  "status": "authenticated",
  "account_id": 123,
  "plan": "professional"
}
Registro de Cuenta
POST
/auth/register

Crea una nueva cuenta y obtén tu primera API Key automáticamente.

Request

curl -X POST "https://rayuela-backend-e7apihrdoa-uc.a.run.app/api/v1/auth/register" \
     -H "Content-Type: application/json" \
     -d '{
       "accountName": "Mi Empresa",
       "email": "admin@miempresa.com",
       "password": "password_seguro_123"
     }'

Respuesta

{
  "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "tokenType": "bearer",
  "accountId": 123,
  "userId": 456,
  "isAdmin": true,
  "apiKey": "sk_prod_1234567890abcdef...",
  "message": "Cuenta creada exitosamente",
  "emailVerificationRequired": true
}

Importante: Guarda tu API Key de forma segura. No se puede recuperar después del registro.

Mejores Prácticas de Seguridad

Variables de Entorno

Nunca hardcodees API Keys en tu código. Usa variables de entorno.

HTTPS Obligatorio

Todas las llamadas deben usar HTTPS para proteger las API Keys en tránsito.

Rotación de Keys

Rota tus API Keys periódicamente desde el dashboard.

Monitoreo

Monitorea el uso de tus API Keys desde el dashboard para detectar uso anómalo.

Códigos de Error de Autenticación
401
Unauthorized - API Key inválida o faltante
403
Forbidden - API Key válida pero sin permisos
429
Rate Limit Exceeded - Demasiadas requests