Historial de cambios
Un registro de cambios en la API REST de SOPFlow.
v1.1.0
ActualMayo 2026Las escrituras salen de vista previa, además de un fortalecimiento en cada endpoint.
- Agregado: endpoints de escritura para nodos (POST / PATCH / mover / DELETE), SOP (crear / eliminar / transiciones de versión / fases / pasos), usuarios (PATCH rol / estado / assignedNodeId) y flujos de proceso (CRUD completo en flujos, nodos, bordes).
- Agregado: alcance de escritura. Las claves existentes mantienen su comportamiento de solo lectura; las mutaciones requieren una clave con alcance de escritura (Configuración → Claves de API).
- Agregado: límites de velocidad por clave — 600 req/min en general y 120 req/min en escrituras. Los buckets son por clave, no por organización.
- Agregado: encabezado Idempotency-Key en POSTs. Las repeticiones de la misma clave + cuerpo devuelven la respuesta en caché con Idempotent-Replay: true. Cuerpos diferentes → 409 idempotency_conflict.
- Agregado: validación de solicitud Zod. La entrada incorrecta obtiene un 400 plano con los campos ofensivos mostrados bajo details.issues.
- Agregado: encabezado X-Request-Id en cada respuesta. Cítalo al informar errores.
- Agregado: GET /api/v1/openapi.json — especificación completa legible por máquina (OpenAPI 3.1).
- Agregado: GET /api/v1/process-flows + /process-flows/:id, devolviendo nodos y bordes en línea.
- Cambiado: la envoltura de error ahora incluye requestId y (cuando corresponda) un campo details. Los nombres de código de error son estables; los códigos de estado coinciden con la nueva tabla HTTP en Errors & Limits.
v1.0.1
Mayo 2026Fortalecimiento y correcciones de una auditoría de código.
- Corregido: autenticación Bearer sk_live_…. El middleware buscaba claves por una longitud de prefijo diferente a la que usaba el emisor, por lo que todas las solicitudes de clave de API devolvían 401. Las claves existentes siguen funcionando.
- GET /api/v1/users — valores de rol o estado de consulta inválidos ahora devuelven 400 Bad Request con un array `allowed` (era 500).
v1.0.0
Abril 2026Lanzamiento público inicial de la API REST de SOPFlow.
- GET /api/v1/organization — nombre de la organización, slug, estado y plan
- GET /api/v1/nodes — lista plana paginada de nodos del organigrama
- GET /api/v1/nodes/:id — búsqueda de nodo único
- GET /api/v1/sops — SOP paginados con resumen de versión activa
- GET /api/v1/sops/:id — SOP completo con fases y pasos
- GET /api/v1/users — lista de usuarios paginada con filtros de rol/estado
- Autenticación Bearer sk_live_… con verificación de clave bcrypt
- Paginación basada en cursor en todos los endpoints de lista
- Aislamiento de inquilinos: todas las consultas limitadas a la organización de la clave de API
Planificado
- Alcance de escritura — endpoints POST/PATCH/DELETE para SOP y nodos
- Entrega de webhook para transiciones de estado de SOP
- Expiración de clave de API y lista de IP permitidas
- v2 con especificación OpenAPI 3.1 y SDK generados automáticamente