Workflow: Production Workflow
Integrations: gmail, googleSheets, httpRequest, manualTrigger, moveBinaryData, set, spreadsheetFile, stickyNote, stopAndError, writeBinaryFile

{"nodes": [{"id": "trigger-cfd54dfa", "name": "Manual Trigger", "type": "n8n-nodes-base.manualTrigger", "typeVersion": 1, "position": [100, 100], "parameters": {}}, {"name": "HTTP Request", "type": "n8n-nodes-base.httpRequest", "position": [560, 700], "parameters": {"url": "{{ $env.BASE_URL }}", "options": {}}, "typeVersion": 2, "id": "node-c53aacaf"}, {"name": "Google Sheets", "type": "n8n-nodes-base.googleSheets", "position": [960, 560], "parameters": {"range": "A:C", "options": {"usePathForKeyRow": true}, "sheetId": "qwertz", "operation": "append", "authentication": "{{ $credentials.oAuth2 }}"}, "credentials": {"googleSheetsOAuth2Api": {"id": "{{ $credentials.googleSheetsOAuth2Api.id }}", "name": "google_sheets_oauth"}}, "typeVersion": 1, "id": "node-d7c8c227"}, {"name": "Set", "type": "n8n-nodes-base.set", "position": [760, 700], "parameters": {"values": {"string": [{"name": "name", "value": "={{$json[\"results\"][0][\"name\"][\"first\"]}} {{$json[\"results\"][0][\"name\"][\"last\"]}}"}, {"name": "country", "value": "={{$json[\"results\"][0][\"location\"][\"country\"]}}"}]}, "options": {}, "keepOnlySet": true}, "typeVersion": 1, "id": "node-e3d74564"}, {"name": "Spreadsheet File", "type": "n8n-nodes-base.spreadsheetFile", "position": [960, 840], "parameters": {"options": {"fileName": "users_spreadsheet"}, "operation": "toFile", "fileFormat": "csv"}, "typeVersion": 1, "id": "node-0e0da8a5"}, {"name": "Spreadsheet File1", "type": "n8n-nodes-base.spreadsheetFile", "position": [960, 1200], "parameters": {"options": {}}, "typeVersion": 1, "id": "node-72d868d2"}, {"name": "Write Binary File", "type": "n8n-nodes-base.writeBinaryFile", "position": [1360, 1200], "parameters": {"fileName": "randomusers.json"}, "typeVersion": 1, "id": "node-f2236133"}, {"name": "Move Binary Data1", "type": "n8n-nodes-base.moveBinaryData", "position": [1160, 1200], "parameters": {"mode": "jsonToBinary", "options": {}}, "typeVersion": 1, "id": "node-bfa88368"}, {"name": "Gmail1", "type": "n8n-nodes-base.gmail", "position": [1360, 1420], "parameters": {"message": "Hello, attached is a JSON file with random user information.", "subject": "JSON file with users", "additionalFields": {"attachmentsUi": {"attachmentsBinary": [{"property": "data"}]}}}, "credentials": {"gmailOAuth2": {"id": "{{ $credentials.gmailOAuth2.id }}", "name": "gmail"}}, "typeVersion": 1, "id": "node-5e9e22f2"}, {"name": "Google Sheets2", "type": "n8n-nodes-base.googleSheets", "notes": "Append data to sheet", "position": [1760, 1420], "parameters": {"range": "A:C", "options": {"usePathForKeyRow": true}, "sheetId": "qwertz", "operation": "append", "authentication": "{{ $credentials.oAuth2 }}"}, "credentials": {"googleSheetsOAuth2Api": {"id": "{{ $credentials.googleSheetsOAuth2Api.id }}", "name": "google_sheets_oauth"}}, "notesInFlow": true, "typeVersion": 1, "id": "node-4b26353b"}, {"name": "Move Binary Data2", "type": "n8n-nodes-base.moveBinaryData", "position": [1560, 1420], "parameters": {"options": {}, "sourceKey": "attachment_0"}, "typeVersion": 1, "id": "node-5dd2195d"}, {"name": "Note", "type": "n8n-nodes-base.stickyNote", "position": [1200, 560], "parameters": {"width": 320, "height": 80, "content": "## JSON > Google Sheets"}, "typeVersion": 1, "id": "node-343bef63"}, {"name": "Note1", "type": "n8n-nodes-base.stickyNote", "position": [1200, 860], "parameters": {"width": 320, "height": 80, "content": "## JSON > CSV"}, "typeVersion": 1, "id": "node-66ed1edf"}, {"name": "Note2", "type": "n8n-nodes-base.stickyNote", "position": [580, 1220], "parameters": {"width": 320, "height": 80, "content": "## CSV > JSON file"}, "typeVersion": 1, "id": "node-c37297b3"}, {"name": "Note3", "type": "n8n-nodes-base.stickyNote", "position": [980, 1460], "parameters": {"width": 320, "height": 80, "content": "## JSON file > Google Sheets"}, "typeVersion": 1, "id": "node-e95954c7"}, {"id": "error-03261faf", "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-6d995c6d", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:45.729806", "updatedAt": "2025-09-29T07:07:45.729815", "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."}