{ "nodes": [ { "name": "GitHub Edit", "type": "n8n-nodes-base.github", "position": [ 1190, 610 ], "parameters": { "owner": "YOUR_USERNAME", "filePath": "={{$json[\"data\"][\"name\"]}}.json", "resource": "file", "operation": "edit", "repository": "REPO_NAME", "fileContent": "={{JSON.stringify($json[\"data\"])}}", "commitMessage": "=[N8N Backup] {{$json.data[\"name\"]}} ({{new Date(Date.now()).toLocaleDateString()}})" }, "credentials": { "githubApi": "GitHub@harshil1712" }, "typeVersion": 1, "id": "node-fa1adeb8" }, { "name": "Get Files", "type": "n8n-nodes-base.github", "position": [ 200, 500 ], "parameters": { "owner": "YOUR_USERNAME", "filePath": "/", "resource": "file", "operation": "get", "repository": "REPO", "asBinaryProperty": false }, "credentials": { "githubApi": "GitHub@harshil1712" }, "executeOnce": true, "typeVersion": 1, "alwaysOutputData": false, "id": "node-58742f30" }, { "name": "Transform", "type": "n8n-nodes-base.function", "position": [ 400, 500 ], "parameters": { "functionCode": "return items[0].json.map(item => {\n return {\n json: item\n }\n});\n" }, "typeVersion": 1, "id": "node-8b1ade2a" }, { "name": "Create file", "type": "n8n-nodes-base.github", "position": [ 1240, 280 ], "parameters": { "owner": "YOUR_USERNAME", "filePath": "={{$json[\"data\"][\"name\"]}}.json", "resource": "file", "repository": "REPO", "fileContent": "={{JSON.stringify($node['Merge'].json[\"data\"])}}", "commitMessage": "=[N8N Backup] {{$json.data[\"name\"]}}.json ({{new Date(Date.now()).toLocaleDateString()}})" }, "credentials": { "githubApi": "GitHub@harshil1712" }, "typeVersion": 1, "id": "node-a798f624" }, { "name": "Merge", "type": "n8n-nodes-base.merge", "position": [ 930, 280 ], "parameters": { "mode": "removeKeyMatches", "propertyName1": "data.name", "propertyName2": "data.name" }, "typeVersion": 1, "id": "node-88b648cd" }, { "name": "Get workflows", "type": "n8n-nodes-base.httpRequest", "position": [ 200, 300 ], "parameters": { "url": "{{ $env.BASE_URL }}", "options": {}, "authentication": "{{ $credentials.basicAuth }}" }, "credentials": { "httpBasicAuth": "n8n instance auth" }, "typeVersion": 1, "id": "node-ff59a5d6" }, { "name": "Get workflow data", "type": "n8n-nodes-base.httpRequest", "position": [ 600, 300 ], "parameters": { "url": "{{ $env.BASE_URL }}", "options": {}, "authentication": "{{ $credentials.basicAuth }}" }, "credentials": { "httpBasicAuth": "n8n instance auth" }, "typeVersion": 1, "id": "node-f4ba5a09" }, { "name": "Download Raw Content", "type": "n8n-nodes-base.httpRequest", "position": [ 600, 500 ], "parameters": { "url": "{{ $env.BASE_URL }}", "options": {}, "authentication": "{{ $credentials.headerAuth }}", "responseFormat": "string" }, "credentials": { "httpHeaderAuth": "GitHub Token" }, "typeVersion": 1, "id": "node-8f656385" }, { "name": "transform", "type": "n8n-nodes-base.function", "position": [ 390, 300 ], "parameters": { "functionCode": "const newItems = [];\nfor (item of items[0].json.data) {\n newItems.push({json: item});\n}\nreturn newItems;" }, "typeVersion": 1, "id": "node-259a0d60" }, { "name": "Daily at 23:59", "type": "n8n-nodes-base.cron", "position": [ -20, 300 ], "parameters": { "triggerTimes": { "item": [ { "hour": 23, "minute": 59 } ] } }, "typeVersion": 1, "id": "node-b9e1783f" }, { "name": "Merge1", "type": "n8n-nodes-base.merge", "position": [ 970, 610 ], "parameters": { "mode": "removeKeyMatches", "propertyName1": "data.updatedAt", "propertyName2": "data.updatedAt" }, "typeVersion": 1, "id": "node-5df60993" }, { "id": "error-300a7771", "name": "Error Handler", "type": "n8n-nodes-base.stopAndError", "typeVersion": 1, "position": [ 1000, 400 ], "parameters": { "message": "Workflow execution error", "options": {} } } ], "connections": {}, "name": "Production Workflow", "settings": { "executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3 }, "meta": { "instanceId": "workflow-bc76df8c", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:45.642031", "updatedAt": "2025-09-29T07:07:45.642039", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "description": "Production-ready workflow: Production Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }