Restore n8n workflows from GitHub JSON backups with Data Tables
Ready for 3.0What this workflow does
This workflow has 17 nodes and runs manually, when you click “Execute workflow”. Along the way it connects GitHub.
How it runs
Trigger: Manually, when you click “Execute workflow”.
- config (Edit Fields (Set)): sets or maps fields
- list_repo_files (GitHub): list (file)
- get_only_workflows (Filter): keeps only the items that match a condition
- github_repo_error (Stop and Error): stops the run with an error
- get_restored_workflows (Data table): get
- get_not_restored (Code): runs custom JavaScript code
- error_geting_restored_worflows (Stop and Error): stops the run with an error
- loop_over_items (Loop Over Items (Split in Batches)): loops over the items in batches
- truncate_control_table (Data table): delete rows
- get_workflow_file (HTTP Request): calls an HTTP API
…plus 5 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
Nodes used (11)
- Manual Trigger
n8n-nodes-base.manualTrigger - Edit Fields (Set)
n8n-nodes-base.set - GitHub
n8n-nodes-base.github - Filter
n8n-nodes-base.filter - n8n
n8n-nodes-base.n8n - Code
n8n-nodes-base.code - Data table
n8n-nodes-base.dataTable - No Operation, do nothing
n8n-nodes-base.noOp - Loop Over Items (Split in Batches)
n8n-nodes-base.splitInBatches - Stop and Error
n8n-nodes-base.stopAndError - HTTP Request
n8n-nodes-base.httpRequest
From the author
Quick overview This workflow manually restores n8n workflows from JSON backup files stored in a GitHub repository, recreates them via the n8n API, and tracks progress in an n8n Data Table to avoid reprocessing items during the same recovery run. How it works…