{ "meta": { "instanceId": "workflow-7f64a0f0", "versionId": "1.0.0", "createdAt": "2025-09-29T07:07:49.072706", "updatedAt": "2025-09-29T07:07:49.072734", "owner": "n8n-user", "license": "MIT", "category": "automation", "status": "active", "priority": "high", "environment": "production" }, "nodes": [ { "id": "abccacce-bbdc-428e-94e0-19996c5bfe02", "name": "Sticky Note", "type": "n8n-nodes-base.stickyNote", "position": [ 1720, 160 ], "parameters": { "color": 7, "width": 319.5392879244982, "height": 218.88813194060202, "content": "### AI agent that can scrape webpages\nRemake of {{ $env.WEBHOOK_URL }}\n\n**Changes**:\n* Replaces Execute Workflow Tool and Subworkflow\n* Replaces Response Formatting" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "9fc05c79-5a2d-4ac4-a4f5-32b9c1b385e1", "name": "OpenAI Chat Model", "type": "n8n-nodes-base.noOp", "position": [ 1340, 340 ], "parameters": { "options": {} }, "credentials": { "openAiApi": { "id": "8gccIjcuf3gvaoEr", "name": "OpenAi account" } }, "typeVersion": 1, "notes": "This lmChatOpenAi node performs automated tasks as part of the workflow." }, { "id": "45c9bdaf-d51e-4026-8911-4b04c5473b06", "name": "Sticky Note1", "type": "n8n-nodes-base.stickyNote", "position": [ 1720, 560 ], "parameters": { "color": 7, "width": 365.9021913627245, "height": 245.35379866205295, "content": "### Allow your AI to call an API to fetch data\nRemake of {{ $env.API_BASE_URL }}\n\n**Changes**:\n* Replaces Execute Workflow Tool and Subworkflow\n* Replaces Manual Query Params Definitions\n* Replaces Response Formatting" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." }, { "id": "bc1754e6-01f4-4561-8814-c08feb45acec", "name": "OpenAI Chat Model1", "type": "n8n-nodes-base.noOp", "position": [ 1340, 740 ], "parameters": { "options": {} }, "credentials": { "openAiApi": { "id": "8gccIjcuf3gvaoEr", "name": "OpenAi account" } }, "typeVersion": 1, "notes": "This lmChatOpenAi node performs automated tasks as part of the workflow." }, { "id": "a40230ae-6050-4bb8-b275-3a893dc3ad98", "name": "Activity Tool", "type": "n8n-nodes-base.noOp", "position": [ 1560, 740 ], "parameters": { "url": "{{ $env.API_BASE_URL }}", "sendQuery": true, "parametersQuery": { "values": [ { "name": "type" }, { "name": "participants" } ] }, "toolDescription": "Call this tool to suggest an activity where:\n* the parameter \"type\" is one of \"education\", \"recreational\",\"social\",\"diy\",\"charity\",\"cooking\",\"relaxation\",\"music\",\"busywork\"\n* the parameter \"participants\" is the number of participants for the activity" }, "typeVersion": 1, "notes": "This toolHttpRequest node performs automated tasks as part of the workflow." }, { "id": "297377e0-e149-4786-b521-82670ac390a7", "name": "Set ChatInput1", "type": "n8n-nodes-base.set", "position": [ 1180, 560 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "e976bf5f-8803-4129-9136-115b3d15755c", "name": "chatInput", "type": "string", "value": "Hi! Please suggest something to do. I feel like learning something new!" } ] } }, "typeVersion": 3.4, "notes": "This set node performs automated tasks as part of the workflow." }, { "id": "a9128da1-4486-4a17-b9b3-64ebc402348d", "name": "AI Agent1", "type": "n8n-nodes-base.noOp", "position": [ 1360, 560 ], "parameters": { "text": "={{ $json.chatInput }}", "options": {}, "promptType": "define" }, "typeVersion": 1.6, "notes": "This agent node performs automated tasks as part of the workflow." }, { "id": "28a5e75e-e32d-4c94-bea2-7347923e6bb9", "name": "Set ChatInput", "type": "n8n-nodes-base.set", "position": [ 1160, 160 ], "parameters": { "options": {}, "assignments": { "assignments": [ { "id": "9695c156-c882-4e43-8a4e-70fbdc1a63de", "name": "chatInput", "type": "string", "value": "Can get the latest 10 issues from {{ $env.WEBHOOK_URL }}" } ] } }, "typeVersion": 3.4, "notes": "This set node performs automated tasks as part of the workflow." }, { "id": "d29b30fb-7edb-4665-bc6b-a511caf9db9f", "name": "When clicking ‘Test workflow’", "type": "n8n-nodes-base.manualTrigger", "position": [ 900, 400 ], "parameters": {}, "typeVersion": 1, "notes": "This manualTrigger node performs automated tasks as part of the workflow." }, { "id": "066f9cdd-4bd3-48a1-bf9b-32eda3e28945", "name": "AI Agent", "type": "n8n-nodes-base.noOp", "position": [ 1360, 160 ], "parameters": { "text": "={{ $json.chatInput }}", "options": {}, "promptType": "define" }, "typeVersion": 1.6, "notes": "This agent node performs automated tasks as part of the workflow." }, { "id": "fb4abae8-7e38-47b7-9595-403e523f7125", "name": "Webscraper Tool", "type": "n8n-nodes-base.noOp", "position": [ 1560, 340 ], "parameters": { "url": "{{ $env.API_BASE_URL }}", "fields": "markdown", "method": "POST", "sendBody": true, "dataField": "data", "authentication": "{{ $credentials.genericCredentialType }}", "parametersBody": { "values": [ { "name": "url" }, { "name": "pageOptions", "value": "={{ {\n onlyMainContent: true,\n replaceAllPathsWithAbsolutePaths: true,\n removeTags: 'img,svg,video,audio'\n} }}", "valueProvider": "fieldValue" } ] }, "fieldsToInclude": "selected", "genericAuthType": "httpHeaderAuth", "toolDescription": "Call this tool to fetch a webpage content.", "optimizeResponse": true }, "credentials": { "httpHeaderAuth": { "id": "OUOnyTkL9vHZNorB", "name": "Firecrawl API" } }, "typeVersion": 1, "notes": "This toolHttpRequest node performs automated tasks as part of the workflow." }, { "id": "73d3213c-1ecb-4007-b882-1cc756a6f6e0", "name": "Sticky Note2", "type": "n8n-nodes-base.stickyNote", "position": [ 420, 120 ], "parameters": { "width": 413.82332632615135, "height": 435.92895157500243, "content": "## Try It Out!\n\n### The HTTP tool is drastically simplifies API-enabled AI agents cutting down the number of workflow nodes by as much as 10!\n\n* Available since v1.47.0\n* Recommended for single purpose APIs which don't require much post-fetch formatting.\n* If you require a chain of API calls, you may need to implement a subworkflow instead.\n\n### Need Help?\nJoin the [Discord]({{ $env.WEBHOOK_URL }} or ask in the [Forum]({{ $env.WEBHOOK_URL }}\n\nHappy Hacking!" }, "typeVersion": 1, "notes": "This stickyNote node performs automated tasks as part of the workflow." } ], "pinData": {}, "connections": { "a40230ae-6050-4bb8-b275-3a893dc3ad98": { "main": [ [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-ebf0378d", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-01d770ae", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-33eca220", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-7ffe5238", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-9d87b499", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-f2b80e8b", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-1036493d", "type": "main", "index": 0 } ], [ { "node": "error-handler-a40230ae-6050-4bb8-b275-3a893dc3ad98-69d26520", "type": "main", "index": 0 } ] ] }, "fb4abae8-7e38-47b7-9595-403e523f7125": { "main": [ [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-e944f1dc", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-f19fb157", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-57515ebc", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-fcea0601", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-c215dcfd", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-6b66d946", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-8c1de0e8", "type": "main", "index": 0 } ], [ { "node": "error-handler-fb4abae8-7e38-47b7-9595-403e523f7125-a0774850", "type": "main", "index": 0 } ] ] }, "9fc05c79-5a2d-4ac4-a4f5-32b9c1b385e1": { "main": [ [ { "node": "error-handler-9fc05c79-5a2d-4ac4-a4f5-32b9c1b385e1-09dd4e8f", "type": "main", "index": 0 } ] ] }, "bc1754e6-01f4-4561-8814-c08feb45acec": { "main": [ [ { "node": "error-handler-bc1754e6-01f4-4561-8814-c08feb45acec-05d10c07", "type": "main", "index": 0 } ] ] } }, "name": "Stickynote 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: Stickynote Workflow. This workflow integrates 7 different services: stickyNote, toolHttpRequest, agent, set, stopAndError. It contains 18 nodes and follows best practices for error handling and security.", "tags": [ "automation", "n8n", "production-ready", "excellent", "optimized" ], "notes": "Excellent quality workflow: Stickynote Workflow. This workflow has been optimized for production use with comprehensive error handling, security, and documentation." }