Skip to main content
Glama
workflow-versioning-service.d.ts3.09 kB
import { NodeRepository } from '../database/node-repository'; import { N8nApiClient } from './n8n-api-client'; export interface WorkflowVersion { id: number; workflowId: string; versionNumber: number; workflowName: string; workflowSnapshot: any; trigger: 'partial_update' | 'full_update' | 'autofix'; operations?: any[]; fixTypes?: string[]; metadata?: any; createdAt: string; } export interface VersionInfo { id: number; workflowId: string; versionNumber: number; workflowName: string; trigger: string; operationCount?: number; fixTypesApplied?: string[]; createdAt: string; size: number; } export interface RestoreResult { success: boolean; message: string; workflowId: string; fromVersion?: number; toVersionId: number; backupCreated: boolean; backupVersionId?: number; validationErrors?: string[]; } export interface BackupResult { versionId: number; versionNumber: number; pruned: number; message: string; } export interface StorageStats { totalVersions: number; totalSize: number; totalSizeFormatted: string; byWorkflow: WorkflowStorageInfo[]; } export interface WorkflowStorageInfo { workflowId: string; workflowName: string; versionCount: number; totalSize: number; totalSizeFormatted: string; lastBackup: string; } export interface VersionDiff { versionId1: number; versionId2: number; version1Number: number; version2Number: number; addedNodes: string[]; removedNodes: string[]; modifiedNodes: string[]; connectionChanges: number; settingChanges: any; } export declare class WorkflowVersioningService { private nodeRepository; private apiClient?; private readonly DEFAULT_MAX_VERSIONS; constructor(nodeRepository: NodeRepository, apiClient?: N8nApiClient | undefined); createBackup(workflowId: string, workflow: any, context: { trigger: 'partial_update' | 'full_update' | 'autofix'; operations?: any[]; fixTypes?: string[]; metadata?: any; }): Promise<BackupResult>; getVersionHistory(workflowId: string, limit?: number): Promise<VersionInfo[]>; getVersion(versionId: number): Promise<WorkflowVersion | null>; restoreVersion(workflowId: string, versionId?: number, validateBefore?: boolean): Promise<RestoreResult>; deleteVersion(versionId: number): Promise<{ success: boolean; message: string; }>; deleteAllVersions(workflowId: string): Promise<{ deleted: number; message: string; }>; pruneVersions(workflowId: string, maxVersions?: number): Promise<{ pruned: number; remaining: number; }>; truncateAllVersions(confirm: boolean): Promise<{ deleted: number; message: string; }>; getStorageStats(): Promise<StorageStats>; compareVersions(versionId1: number, versionId2: number): Promise<VersionDiff>; private formatBytes; private diffObjects; } //# sourceMappingURL=workflow-versioning-service.d.ts.map

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/czlonkowski/n8n-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server