Guilda WorkDevelopers

EMPEZAR

Autenticación

Consigue un token de API y autentica tus peticiones.

La API REST (/api/v1/*) usa autenticación por token opaco vía cabecera Authorization: Bearer <token> — independiente de la cookie de sesión que usa la propia app web, nunca se mezclan en la misma ruta. El token se obtiene registrando una cuenta nueva o iniciando sesión en una existente.

Por debajo, la contraseña la custodia Ory Kratos (el proveedor de identidad de la instancia) — esta API nunca ve ni guarda la contraseña en texto plano, solo emite un token opaco propio tras validar contra Kratos.

Registrar una cuenta nueva

bash
curl -X POST https://tu-hostname/api/v1/auth/registro \
  -H "Content-Type: application/json" \
  -d '{
    "email": "dev@tuempresa.com",
    "contrasena": "una-contrasena-de-8-caracteres-o-mas",
    "nombre_dispositivo": "Mi integración"
  }'
json
{
  "ok": true,
  "data": {
    "token": "kf83h2n...",
    "usuario": { "id": 42, "email": "dev@tuempresa.com" }
  }
}

Iniciar sesión con una cuenta existente

bash
curl -X POST https://tu-hostname/api/v1/auth/login \
  -H "Content-Type: application/json" \
  -d '{"email": "dev@tuempresa.com", "contrasena": "..."}'

Cada llamada a /auth/registro o /auth/login emite un token nuevo — puedes tener varios tokens activos a la vez (uno por dispositivo/integración), y revocar uno concreto sin afectar a los demás con POST /api/v1/auth/logout (revoca el token que viaja en la propia petición).

Usar el token

bash
curl https://tu-hostname/api/v1/auth/me \
  -H "Authorization: Bearer kf83h2n..."

Errores de autenticación

HTTPCuándo
400Email inválido, contraseña de menos de 8 caracteres, o campos obligatorios ausentes.
401Token ausente, revocado o incorrecto — /auth/login con credenciales erróneas también devuelve 401.
409/auth/registro con un email que ya tiene cuenta.
429Límite de intentos superado (ver aviso de abajo).
Los endpoints de /auth/registro y /auth/login están limitados a 10 peticiones por minuto por IP (protección de fuerza bruta) — si automatizas la creación de cuentas, ten en cuenta ese límite.