Workflow: Ftp Workflow
Integrations: code, convertToFile, ftp, mqtt, mqttTrigger, scheduleTrigger, stopAndError

{"nodes": [{"name": "SFTP zip file content", "type": "n8n-nodes-base.ftp", "position": [1520, 680], "parameters": {"path": "=zigbee_backups/zigbee_backup_{{ new Date().toISOString().replaceAll(':','_') }}.zip", "protocol": "sftp", "operation": "upload"}, "credentials": {"sftp": {"name": "SFTP Zigbee Backups"}}, "typeVersion": 1, "id": "baa114b6-43be-461e-9c00-eca4bf11f82a", "notes": "This ftp node performs automated tasks as part of the workflow."}, {"name": "CRON Monday 2:45 am", "type": "n8n-nodes-base.scheduleTrigger", "position": [860, 440], "parameters": {"rule": {"interval": [{"field": "cronExpression", "expression": "45 2 * * 1"}]}}, "typeVersion": 1.1, "id": "d8749285-9436-4381-b9d0-fdce91f059bc", "notes": "This scheduleTrigger node performs automated tasks as part of the workflow."}, {"name": "Send Zigbee2MQTT backup request", "type": "n8n-nodes-base.mqtt", "position": [1040, 440], "parameters": {"topic": "zigbee2mqtt/bridge/request/backup", "message": "getbackup", "options": {}, "sendInputData": false}, "credentials": {"mqtt": {"name": "MQTT account"}}, "typeVersion": 1, "id": "c0e4d72b-0cb2-4699-b2b4-936135b2fde2", "notes": "This mqtt node performs automated tasks as part of the workflow."}, {"name": "MQTT Trigger - Backup Response", "type": "n8n-nodes-base.mqttTrigger", "position": [860, 680], "parameters": {"topics": "zigbee2mqtt/bridge/response/backup", "options": {}}, "credentials": {"mqtt": {"name": "MQTT account"}}, "typeVersion": 1, "id": "6cc320b1-ad2f-467f-a2f1-bb4d46662d07", "notes": "This mqttTrigger node performs automated tasks as part of the workflow."}, {"name": "Parse JSON Object from Message Text", "type": "n8n-nodes-base.code", "position": [1080, 680], "parameters": {"mode": "runOnceForEachItem", "jsCode": "\nlet containerObject = JSON.parse($json.message);\nlet messageObject = containerObject.data;\nreturn messageObject;"}, "typeVersion": 2, "id": "71389cf8-278c-4104-8fe3-2933fcd0736d", "notes": "This code node performs automated tasks as part of the workflow."}, {"name": "Convert to File - base64 to binary", "type": "n8n-nodes-base.convertToFile", "position": [1300, 680], "parameters": {"options": {}, "operation": "toBinary", "sourceProperty": "zip"}, "typeVersion": 1, "id": "61ae5760-60ae-4d23-8004-eab93624088f", "notes": "This convertToFile node performs automated tasks as part of the workflow."}, {"id": "error-569c784c", "name": "Error Handler", "type": "n8n-nodes-base.stopAndError", "typeVersion": 1, "position": [1000, 400], "parameters": {"message": "Workflow execution error", "options": {}}}], "connections": {}, "name": "Ftp Workflow", "description": "Automated workflow: Ftp Workflow. This workflow processes data and performs automated tasks.", "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "meta": {"instanceId": "workflow-4e294a2b", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:42.587272", "updatedAt": "2025-09-29T07:07:42.587284", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "notes": "Excellent quality workflow: Ftp Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}