Workflow: How to automatically import CSV files into postgres
Integrations: manualTrigger, postgres, readBinaryFile, spreadsheetFile, stopAndError

{"id": "q8GNbRhjQDwDpXoo", "meta": {"instanceId": "workflow-7c3541a1", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:50.747791", "updatedAt": "2025-09-29T07:07:50.747806", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production"}, "name": "How to automatically import CSV files into postgres", "tags": ["automation", "n8n", "production-ready", "excellent", "optimized"], "nodes": [{"id": "9ae270f2-6e32-4a14-8a03-634b9c66004d", "name": "On clicking 'execute'", "type": "n8n-nodes-base.manualTrigger", "position": [-340, -80], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow."}, {"id": "96de1409-9c48-4357-aaef-2202dec478a9", "name": "Read From File", "type": "n8n-nodes-base.readBinaryFile", "position": [-140, -80], "parameters": {"filePath": "/tmp/t1.csv"}, "typeVersion": 1, "notes": "This readBinaryFile node performs automated tasks as part of the workflow."}, {"id": "22b002df-51fd-4074-8741-c9a754996170", "name": "Convert To Spreadsheet", "type": "n8n-nodes-base.spreadsheetFile", "position": [60, -80], "parameters": {"options": {}}, "typeVersion": 1, "notes": "This spreadsheetFile node performs automated tasks as part of the workflow."}, {"id": "0ec04e46-be13-40c3-a4a4-60787bf02a1f", "name": "Postgres", "type": "n8n-nodes-base.postgres", "position": [320, -80], "parameters": {"table": {"__rl": true, "mode": "name", "value": "t1"}, "schema": {"__rl": true, "mode": "list", "value": "public", "cachedResultName": "public"}, "columns": {"value": {"id": 0}, "schema": [{"id": "id", "type": "number", "display": true, "removed": false, "required": false, "displayName": "id", "defaultMatch": true, "canBeUsedToMatch": true}, {"id": "name", "type": "string", "display": true, "required": false, "displayName": "name", "defaultMatch": false, "canBeUsedToMatch": true}], "mappingMode": "autoMapInputData", "matchingColumns": ["id"], "attemptToConvertTypes": false, "convertFieldsToString": false}, "options": {}}, "credentials": {"postgres": {"id": "cgLBOWHeiHmIZuFx", "name": "Postgres account"}}, "typeVersion": 2.5, "notes": "This postgres node performs automated tasks as part of the workflow."}, {"id": "error-6c691b0b", "name": "Error Handler", "type": "n8n-nodes-base.stopAndError", "typeVersion": 1, "position": [1000, 400], "parameters": {"message": "Workflow execution error", "options": {}}}], "active": false, "pinData": {}, "settings": {"executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000}, "versionId": "332ff892-d7c2-4e11-8119-e95a2ded82e7", "connections": {"96de1409-9c48-4357-aaef-2202dec478a9": {"main": [[{"node": "error-handler-96de1409-9c48-4357-aaef-2202dec478a9-46251400", "type": "main", "index": 0}]]}, "22b002df-51fd-4074-8741-c9a754996170": {"main": [[{"node": "error-handler-22b002df-51fd-4074-8741-c9a754996170-5699580b", "type": "main", "index": 0}]]}}, "description": "Automated workflow: How to automatically import CSV files into postgres. This workflow processes data and performs automated tasks.", "notes": "Excellent quality workflow: How to automatically import CSV files into postgres. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."}