Control de versiones de workflows
This content is not available in your language yet.
Cada cambio en un workflow puede generar una version, creando un historial completo de modificaciones con capacidad de comparar y restaurar versiones anteriores.
Como funciona
Sección titulada «Como funciona»- Al guardar un workflow, se puede crear una version manualmente
- Antes de un rollback, el sistema crea automaticamente una version de respaldo
- Cada version almacena el workflow_json completo (nodos, conexiones, configuracion)
Operaciones
Sección titulada «Operaciones»Crear version manual
Sección titulada «Crear version manual»POST /api/versions/workflow/:workflowIdBody: { "description": "Agregado nodo de validacion de stock" }Se guarda:
- Numero de version (secuencial)
- Workflow JSON completo
- Descripcion del cambio
- Quien lo creo
- Cantidad de nodos y conexiones
Ver historial de versiones
Sección titulada «Ver historial de versiones»GET /api/versions/workflow/:workflowIdDevuelve la lista de versiones ordenadas de mas reciente a mas antigua:
[ { "id": 45, "version_number": 5, "name": "Mi Workflow", "description": "Agregado nodo de validacion", "is_auto": false, "nodes_count": 8, "edges_count": 9, "created_at": "2026-03-23T10:30:00Z" }, { "id": 42, "version_number": 4, "description": "Auto-backup antes de rollback", "is_auto": true, ... }]Restaurar version anterior (rollback)
Sección titulada «Restaurar version anterior (rollback)»POST /api/versions/workflow/:workflowId/rollback/:versionId- Restaura el workflow_json de la version seleccionada
- Crea automaticamente un backup de la version actual antes de restaurar
- Actualiza la fecha de modificacion del workflow
Comparar versiones (diff)
Sección titulada «Comparar versiones (diff)»GET /api/versions/workflow/:workflowId/diff/:version1Id/:version2IdDevuelve las diferencias entre dos versiones:
{ "added_nodes": [ { "id": "node_8", "type": "decision", "label": "Validar stock" } ], "removed_nodes": [], "modified_nodes": [ { "id": "node_3", "changes": ["position", "config"] } ], "added_edges": [ { "source": "node_7", "target": "node_8" } ], "removed_edges": [], "summary": { "total_changes": 3, "nodes_added": 1, "nodes_removed": 0, "nodes_modified": 1, "edges_added": 1, "edges_removed": 0 }}Eliminar version
Sección titulada «Eliminar version»DELETE /api/versions/:versionIdNo se puede eliminar si es la unica version existente.
Versiones automaticas vs manuales
Sección titulada «Versiones automaticas vs manuales»| Tipo | Cuando se crea | Campo is_auto |
|---|---|---|
| Manual | El usuario guarda una version explicitamente | false |
| Automatica | Antes de un rollback (backup de seguridad) | true |