{ "meta": { "instanceId": "workflow-e6018044", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:54.279220", "updatedAt": "2025-09-29T07:07:54.279229", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "nodes": [ { "id": "67850bd7-f9f4-4d5b-8c9e-bd1451247ba6", "name": "When clicking \"Execute Workflow\"", "type": "n8n-nodes-base.manualTrigger", "position": [ -740, 1000 ], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow." }, { "id": "0d9133f9-b6d3-4101-95c6-3cd24cdb70c3", "name": "Fetch essay list", "type": "n8n-nodes-base.httpRequest", "position": [ -520, 1000 ], "parameters": { "url": "{{ $env.WEBHOOK_URL }}", "options": {} }, "typeVersion": 4.1, "notes": "This httpRequest node performs automated tasks as part of the workflow." }, { "id": "ee634297-a456-4f70-a995-55b02950571e", "name": "Extract essay names", "type": "n8n-nodes-base.html", "position": [ -300, 1000 ], "parameters": { "options": {}, "operation": "extractHtmlContent", "dataPropertyName": "=data", "extractionValues": { "values": [ { "key": "YOUR_CREDENTIAL_HERE", "attribute": "href", "cssSelector": "table table a", "returnArray": true, "returnValue": "attribute" } ] } }, "typeVersion": 1, "notes": "This html node performs automated tasks as part of the workflow." }, { "id": "83d75693-dbb8-44c4-8533-da06f611c59c", "name": "Fetch essay texts", "type": "n8n-nodes-base.httpRequest", "position": [ 360, 1000 ], "parameters": { "url": "{{ $env.BASE_URL }}", "options": {} }, "typeVersion": 4.1, "notes": "This httpRequest node performs automated tasks as part of the workflow." }, { "id": "151022b5-8570-4176-bf3f-137f27ac7036", "name": "Extract title", "type": "n8n-nodes-base.html", "position": [ 700, 700 ], "parameters": { "options": {}, "operation": "extractHtmlContent", "extractionValues": { "values": [ { "key": "YOUR_CREDENTIAL_HERE", "cssSelector": "title" } ] } }, "typeVersion": 1, "notes": "This html node performs automated tasks as part of the workflow." }, { "id": "07bcf095-3c4d-4a72-9bcb-341411750ff5", "name": "Clean up", "type": "n8n-nodes-base.set", "position": [ 1360, 980 ], "parameters": { "fields": { "values": [ { "name": "title", "stringValue": "={{ $json.title }}" }, { "name": "summary", "stringValue": "={{ $json.response.text }}" }, { "name": "url", "stringValue": "={{ $env.WEBHOOK_URL }}{{ $('Limit to first 3').item.json.essay }}" } ] }, "include": "none", "options": {} }, "typeVersion": 3, "notes": "This set node performs automated tasks as part of the workflow." }, { "id": "11285de0-3c5d-4296-a322-9b7585af9acc", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ -580, 920 ], "parameters": { "width": 1071.752021563343, "height": 285.66037735849045, "content": "## Scrape latest Paul Graham essays" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "c32f905d-dd7a-4b68-bbe0-dd8115ee0944", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [ 620, 920 ], "parameters": { "width": 465.3908355795153, "height": 606.7924528301882, "content": "## Summarize them with GPT" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "29d264f4-df6d-4a41-ab38-58e1b1becc9a", "name": "Split out into items", "type": "n8n-nodes-base.splitOut", "position": [ -80, 1000 ], "parameters": { "options": {}, "fieldToSplitOut": "essay" }, "typeVersion": 1, "notes": "This splitOut node performs automated tasks as part of the workflow." }, { "id": "ccfa3a1d-f170-44b4-a1f2-3573c88cae98", "name": "Limit to first 3", "type": "n8n-nodes-base.limit", "position": [ 140, 1000 ], "parameters": { "maxItems": 3 }, "typeVersion": 1, "notes": "This limit node performs automated tasks as part of the workflow." }, { "id": "c3d05068-9d1a-4ef5-8249-e7384dc617ee", "name": "Default Data Loader", "type": "n8n-nodes-base.noOp", "position": [ 820, 1200 ], "parameters": { "options": {} }, "typeVersion": 1, "notes": "This documentDefaultDataLoader node performs automated tasks as part of the workflow." }, { "id": "db75adad-cb16-4e72-b16e-34684a733b05", "name": "Recursive Character Text Splitter", "type": "n8n-nodes-base.noOp", "position": [ 820, 1340 ], "parameters": { "options": {} }, "typeVersion": 1, "notes": "This textSplitterRecursiveCharacterTextSplitter node performs automated tasks as part of the workflow." }, { "id": "022cc091-9b4c-45c2-bc8e-4037ec2d0d60", "name": "OpenAI Chat Model1", "type": "n8n-nodes-base.noOp", "position": [ 680, 1200 ], "parameters": { "model": "gpt-4o-mini", "options": {} }, "credentials": { "openAiApi": { "id": "8gccIjcuf3gvaoEr", "name": "OpenAi account" } }, "typeVersion": 1, "notes": "This lmChatOpenAi node performs automated tasks as part of the workflow." }, { "id": "cda47bb7-36c5-4d15-a1ef-0c66b1194825", "name": "Merge", "type": "n8n-nodes-base.merge", "position": [ 1160, 980 ], "parameters": { "mode": "combine", "options": {}, "combineBy": "combineByPosition" }, "typeVersion": 3, "notes": "This merge node performs automated tasks as part of the workflow." }, { "id": "28144e4c-e425-428d-b3d1-f563bfd4e5b3", "name": "Summarization Chain", "type": "n8n-nodes-base.noOp", "position": [ 720, 1000 ], "parameters": { "options": {}, "operationMode": "documentLoader" }, "typeVersion": 2, "notes": "This chainSummarization node performs automated tasks as part of the workflow." } ], "pinData": {}, "connections": { "0d9133f9-b6d3-4101-95c6-3cd24cdb70c3": { "main": [ [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-f0e4962f", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-d7b8b378", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-d2a70e68", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-2c5337b4", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-298a0043", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-e3bf6a34", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-4193fa59", "type": "main", "index": 0 } ], [ { "node": "error-handler-0d9133f9-b6d3-4101-95c6-3cd24cdb70c3-3de49096", "type": "main", "index": 0 } ] ] }, "83d75693-dbb8-44c4-8533-da06f611c59c": { "main": [ [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-49e6cbd2", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-eeef59f5", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-b3fbe03f", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-fcb7ef10", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-c0a7b5b5", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-9a66718a", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-b87d9b10", "type": "main", "index": 0 } ], [ { "node": "error-handler-83d75693-dbb8-44c4-8533-da06f611c59c-0759681d", "type": "main", "index": 0 } ] ] }, "022cc091-9b4c-45c2-bc8e-4037ec2d0d60": { "main": [ [ { "node": "error-handler-022cc091-9b4c-45c2-bc8e-4037ec2d0d60-94dd3f9f", "type": "main", "index": 0 } ] ] } }, "name": "Manualtrigger Workflow", "settings": { "executionOrder": "v1", "saveManualExecutions": true, "callerPolicy": "workflowsFromSameOwner", "errorWorkflow": null, "timezone": "UTC", "executionTimeout": 3600, "maxExecutions": 1000, "retryOnFail": true, "retryCount": 3, "retryDelay": 1000 }, "description": "Automated workflow: Manualtrigger Workflow. This workflow integrates 13 different services: stickyNote, httpRequest, textSplitterRecursiveCharacterTextSplitter, splitOut, merge. It contains 20 nodes and follows best practices for error handling and security.", "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "notes": "Excellent quality workflow: Manualtrigger Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }