{
  "name": "Context 3 \u2014 Crawl a Site \u2192 AI Knowledge",
  "nodes": [
    {
      "parameters": {},
      "id": "4e6435eebff6",
      "name": "Click 'Test workflow'",
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        260,
        300
      ]
    },
    {
      "parameters": {
        "operation": "crawl",
        "url": "https://hono.dev/docs/",
        "format": "markdown",
        "crawlLimit": 10,
        "waitForCompletion": true
      },
      "id": "c2370961a5a8",
      "name": "Read a Site",
      "type": "n8n-nodes-apexapi.apexApiContext",
      "typeVersion": 1,
      "position": [
        520,
        300
      ],
      "credentials": {
        "apexApiApi": {
          "id": "REPLACE_ME",
          "name": "ApexApi account"
        }
      }
    },
    {
      "parameters": {
        "resource": "chat",
        "operation": "message",
        "model": "google/gemini-2.5-flash",
        "prompt": "=Based on these page titles from a website, explain in 2-3 sentences what this product/site is about:\n\n{{ ($json.pages || []).map(p => p.title).join('\\n') }}",
        "options": {}
      },
      "id": "65d39db17518",
      "name": "Describe the site",
      "type": "n8n-nodes-apexapi.apexApi",
      "typeVersion": 1,
      "position": [
        820,
        300
      ],
      "credentials": {
        "apexApiApi": {
          "id": "REPLACE_ME",
          "name": "ApexApi account"
        }
      }
    },
    {
      "parameters": {
        "content": "### \ud83d\udd11 First: get a free ApexApi key\nThis workflow calls ApexApi, so you need a key (no card required):\n**https://apexapi.dev/?ref=n8n-context-crawl-site**\nThen in n8n add it as the **ApexApi account** credential \u2014 every ApexApi node in this workflow uses it.\n\n---\n\n## 3 \u00b7 Crawl a Site \u2192 AI Knowledge\n\n**What it does:** crawls a whole website into markdown (capped at 10 pages), then an AI model explains what the site is \u2014 the core 'turn a site into an AI knowledge base' pattern.\n\n**Run it:** click **Test workflow** (async \u2014 a 10-page crawl can take 1\u20132 min). Read the answer in *Describe the site*.\n\n**Make it yours:**\n\u2022 Change the **URL** and **Max Pages** in *Read a Site*.\n\u2022 The full pages are in `pages[]` and at `result_url`.\n\n**Next step:** feed `pages[]` into a **vector store** node to build a real RAG chatbot.",
        "height": 470,
        "width": 460,
        "color": 4
      },
      "id": "5b5cc1d4cc9d",
      "name": "Sticky e1d8e1fdb87d",
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        240,
        -60
      ]
    }
  ],
  "connections": {
    "Click 'Test workflow'": {
      "main": [
        [
          {
            "node": "Read a Site",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Read a Site": {
      "main": [
        [
          {
            "node": "Describe the site",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "settings": {},
  "active": false
}
