AutomationFlowsData & Sheets › AI Essay Fetcher and Splitter

AI Essay Fetcher and Splitter

Original n8n title: Splitout Limit (http Request)

Splitout Limit. Uses manualTrigger, stickyNote, httpRequest, lmChatOpenAi. Event-driven trigger; 16 nodes.

Event trigger★★★★☆ complexityAI-powered16 nodesHTTP RequestOpenAI ChatChain SummarizationDocument Default Data LoaderText Splitter Recursive Character Text Splitter
Data & Sheets Trigger: Event Nodes: 16 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow follows the Chainsummarization → HTTP Request recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "a9048293-787d-44d6-b995-d329b2495048",
      "name": "When clicking \"Execute Workflow\"",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1920,
        1380
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "56017e8b-2f2e-4f40-9325-184ea01a18be",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1720,
        1260
      ],
      "parameters": {
        "width": 1071.752021563343,
        "height": 285.66037735849045,
        "content": "## Scrape latest Paul Graham essays"
      },
      "typeVersion": 1
    },
    {
      "id": "aa855d7c-6602-4242-bc84-56fed7c27c26",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -600,
        1260
      ],
      "parameters": {
        "width": 625,
        "height": 607,
        "content": "## Summarize them with GPT"
      },
      "typeVersion": 1
    },
    {
      "id": "1a38e545-6d3b-40b2-a3ff-6f91fdd772de",
      "name": "Fetch Essay List",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -1640,
        1380
      ],
      "parameters": {
        "url": "http://www.paulgraham.com/articles.html",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "bd713892-356b-4a9c-b076-000bd4f1f1ba",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -380,
        1600
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "4d7359ab-ba87-4756-8168-f2b987aac2fc",
      "name": "Extract essay names",
      "type": "n8n-nodes-base.html",
      "position": [
        -1440,
        1380
      ],
      "parameters": {
        "options": {},
        "operation": "extractHtmlContent",
        "extractionValues": {
          "values": [
            {
              "key": "essay",
              "attribute": "href",
              "cssSelector": "table table a",
              "returnArray": true,
              "returnValue": "attribute"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "8342d13f-879d-426b-ba28-ab696dd7f155",
      "name": "Split out into items",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -1240,
        1380
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "essay"
      },
      "typeVersion": 1
    },
    {
      "id": "a057d3cb-b7fb-4b4d-810a-e4de3ac10702",
      "name": "Fetch essay texts",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -840,
        1380
      ],
      "parameters": {
        "url": "=http://www.paulgraham.com/{{ $json.essay }}",
        "options": {}
      },
      "typeVersion": 4.2
    },
    {
      "id": "98164d8c-3d6f-485d-93b6-1da3e8ae7ca8",
      "name": "Extract title",
      "type": "n8n-nodes-base.html",
      "position": [
        -340,
        1080
      ],
      "parameters": {
        "options": {},
        "operation": "extractHtmlContent",
        "extractionValues": {
          "values": [
            {
              "key": "title",
              "cssSelector": "title"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "fc0b6230-d169-4b20-803b-1896982c37c3",
      "name": "Summarization Chain",
      "type": "@n8n/n8n-nodes-langchain.chainSummarization",
      "position": [
        -340,
        1380
      ],
      "parameters": {
        "options": {},
        "operationMode": "documentLoader"
      },
      "typeVersion": 2
    },
    {
      "id": "a656524a-9f77-4922-9de7-e2221ac82b70",
      "name": "Clean up",
      "type": "n8n-nodes-base.set",
      "position": [
        360,
        1380
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "7b337b47-a1c6-470e-881f-0c038b4917e5",
              "name": "title",
              "type": "string",
              "value": "={{ $json.title }}"
            },
            {
              "id": "ca820521-4fff-4971-84b5-e6e2dbd8bb7a",
              "name": "summary",
              "type": "string",
              "value": "={{ $json.response.text }}"
            },
            {
              "id": "0fd9b5e3-44dd-49a3-82c1-3a4aa4698376",
              "name": "url",
              "type": "string",
              "value": "=http://www.paulgraham.com/{{ $('Limit to first 3').first().json.essay }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "da738af0-7302-442d-bdc8-c9771be10794",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        160,
        1380
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3
    },
    {
      "id": "adf51f27-8d3e-49a8-b850-7990d355dc81",
      "name": "Default Data Loader",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        -260,
        1600
      ],
      "parameters": {
        "options": {},
        "jsonData": "={{ $('Extract Text Only').item.json.data }}",
        "jsonMode": "expressionData"
      },
      "typeVersion": 1
    },
    {
      "id": "f57c5908-4ae3-4ce1-a74b-0fc393792c21",
      "name": "Recursive Character Text Splitter",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        -180,
        1720
      ],
      "parameters": {
        "options": {},
        "chunkSize": 6000
      },
      "typeVersion": 1
    },
    {
      "id": "278eed78-3489-41e3-b4d2-a2de788fcd21",
      "name": "Limit to first 3",
      "type": "n8n-nodes-base.limit",
      "position": [
        -1040,
        1380
      ],
      "parameters": {
        "maxItems": 3
      },
      "typeVersion": 1
    },
    {
      "id": "028147d1-2a45-416d-91d0-40a0af2747f5",
      "name": "Extract Text Only",
      "type": "n8n-nodes-base.html",
      "position": [
        -520,
        1380
      ],
      "parameters": {
        "options": {},
        "operation": "extractHtmlContent",
        "extractionValues": {
          "values": [
            {
              "key": "data",
              "cssSelector": "body",
              "skipSelectors": "img,nav"
            }
          ]
        }
      },
      "typeVersion": 1.2
    }
  ],
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Clean up",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract title": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Essay List": {
      "main": [
        [
          {
            "node": "Extract essay names",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Limit to first 3": {
      "main": [
        [
          {
            "node": "Fetch essay texts",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Text Only": {
      "main": [
        [
          {
            "node": "Summarization Chain",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch essay texts": {
      "main": [
        [
          {
            "node": "Extract title",
            "type": "main",
            "index": 0
          },
          {
            "node": "Extract Text Only",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Summarization Chain",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Default Data Loader": {
      "ai_document": [
        [
          {
            "node": "Summarization Chain",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "Extract essay names": {
      "main": [
        [
          {
            "node": "Split out into items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Summarization Chain": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Split out into items": {
      "main": [
        [
          {
            "node": "Limit to first 3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \"Execute Workflow\"": {
      "main": [
        [
          {
            "node": "Fetch Essay List",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Recursive Character Text Splitter": {
      "ai_textSplitter": [
        [
          {
            "node": "Default Data Loader",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

How this works

This workflow streamlines the process of analysing a collection of essays by automatically fetching their texts and applying AI-driven summarisation, saving you hours of manual reading and extraction. It is ideal for researchers, content curators, or educators who need to quickly review and condense multiple documents without sifting through websites or files individually. The key step involves using the OpenAI Chat Model to generate concise summaries after retrieving essay content via HTTP requests, ensuring focused insights from lengthy materials.

Use this workflow when you have a predefined list of essay URLs and want event-driven processing for on-demand analysis, such as preparing reports or study notes. Avoid it for real-time monitoring or when dealing with non-web-based documents, as it relies on HTTP fetches and structured lists. Common variations include swapping OpenAI for another AI provider or adding filters to prioritise essays by topic before splitting and summarising.

About this workflow

Splitout Limit. Uses manualTrigger, stickyNote, httpRequest, lmChatOpenAi. Event-driven trigger; 16 nodes.

Source: https://github.com/Zie619/n8n-workflows — original creator credit. Request a take-down →

More Data & Sheets workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

Data & Sheets

Stopanderror Splitout. Uses outputParserStructured, lmChatOpenAi, formTrigger, chainLlm. Event-driven trigger; 85 nodes.

Output Parser Structured, OpenAI Chat, Form Trigger +8
Data & Sheets

Wait Splitout. Uses stickyNote, manualTrigger, lmChatOpenAi, toolHttpRequest. Event-driven trigger; 39 nodes.

OpenAI Chat, Tool Http Request, Output Parser Structured +3
Data & Sheets

Extractfromfile Form Export. Uses extractFromFile, lmChatOpenAi, outputParserStructured, formTrigger. Event-driven trigger; 23 nodes.

OpenAI Chat, Output Parser Structured, Form Trigger +5
Data & Sheets

Extractfromfile Form. Uses extractFromFile, lmChatOpenAi, outputParserStructured, formTrigger. Event-driven trigger; 23 nodes.

OpenAI Chat, Output Parser Structured, Form Trigger +5
Data & Sheets

Wait Splitout. Uses lmChatOpenAi, splitOut, httpRequest, convertToFile. Event-driven trigger; 21 nodes.

OpenAI Chat, HTTP Request, Google Drive +3