Forked from architjn/Business Idea Validator.json
Created
September 13, 2025 21:50
-
-
Save mraktrader7/f91d321e32fe7b7611dc8768cf0e0f3b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "name": "Business Idea Validator", | |
| "nodes": [ | |
| { | |
| "parameters": { | |
| "rule": { | |
| "interval": [ | |
| {} | |
| ] | |
| } | |
| }, | |
| "type": "n8n-nodes-base.scheduleTrigger", | |
| "typeVersion": 1.2, | |
| "position": [ | |
| 0, | |
| 0 | |
| ], | |
| "id": "d38b96c8-bd70-4e14-8ce5-409ca67aed9a", | |
| "name": "Schedule Trigger" | |
| }, | |
| { | |
| "parameters": { | |
| "url": "https://upwork-jobs-api2.p.rapidapi.com/active-freelance-1h", | |
| "authentication": "genericCredentialType", | |
| "genericAuthType": "httpHeaderAuth", | |
| "sendQuery": true, | |
| "queryParameters": { | |
| "parameters": [ | |
| { | |
| "name": "limit", | |
| "value": "100" | |
| } | |
| ] | |
| }, | |
| "sendHeaders": true, | |
| "headerParameters": { | |
| "parameters": [ | |
| { | |
| "name": "x-rapidapi-host", | |
| "value": "upwork-jobs-api2.p.rapidapi.com" | |
| } | |
| ] | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.httpRequest", | |
| "typeVersion": 4.2, | |
| "position": [ | |
| 224, | |
| 0 | |
| ], | |
| "id": "ecd86c00-6b21-45d6-9544-f930cdf33775", | |
| "name": "HTTP Request", | |
| "credentials": { | |
| "httpHeaderAuth": { | |
| "id": "ILqJ0Ss2E6N7bzva", | |
| "name": "RapidAPI" | |
| } | |
| } | |
| }, | |
| { | |
| "parameters": { | |
| "assignments": { | |
| "assignments": [ | |
| { | |
| "id": "b56bce4d-5bcc-4085-b1d5-382c0213f965", | |
| "name": "description", | |
| "value": "={{ $json.description_text }}", | |
| "type": "string" | |
| } | |
| ] | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.set", | |
| "typeVersion": 3.4, | |
| "position": [ | |
| 1152, | |
| 0 | |
| ], | |
| "id": "b50860de-fd41-4898-9f54-cf10447b5157", | |
| "name": "Job Description" | |
| }, | |
| { | |
| "parameters": { | |
| "workflowInputs": { | |
| "values": [ | |
| { | |
| "name": "job_description" | |
| } | |
| ] | |
| } | |
| }, | |
| "type": "n8n-nodes-base.executeWorkflowTrigger", | |
| "typeVersion": 1.1, | |
| "position": [ | |
| 0, | |
| 464 | |
| ], | |
| "id": "0cfce523-c1ca-4d46-89aa-8a5fcd23f7e8", | |
| "name": "When Executed by Another Workflow" | |
| }, | |
| { | |
| "parameters": { | |
| "description": "Call this tool to check if the job description has any valuable business model.\nThis tool takes job_description as input. And returns the core business idea.", | |
| "workflowId": { | |
| "__rl": true, | |
| "value": "OFvs6LyLZABBuDvn", | |
| "mode": "list", | |
| "cachedResultName": "Business Idea Validator" | |
| }, | |
| "workflowInputs": { | |
| "mappingMode": "defineBelow", | |
| "value": { | |
| "job_description": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('job_description', ``, 'string') }}" | |
| }, | |
| "matchingColumns": [ | |
| "job_description" | |
| ], | |
| "schema": [ | |
| { | |
| "id": "job_description", | |
| "displayName": "job_description", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "canBeUsedToMatch": true, | |
| "type": "string", | |
| "removed": false | |
| } | |
| ], | |
| "attemptToConvertTypes": false, | |
| "convertFieldsToString": false | |
| } | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.toolWorkflow", | |
| "typeVersion": 2.2, | |
| "position": [ | |
| 1424, | |
| 208 | |
| ], | |
| "id": "2bf8a87d-0084-4140-a02e-cd920e346c44", | |
| "name": "Get Core Business Idea" | |
| }, | |
| { | |
| "parameters": { | |
| "promptType": "define", | |
| "text": "=Extract core business idea from the job posting.\n\nJob posting - \n{{ $json.job_description }}", | |
| "options": { | |
| "systemMessage": "=### Introduction\nYou are a expert idea validator and business expert. You can easily understand the core business idea from the job descriptions.\n\n### Instructions\n- You MUST deeply understand what's the job description, what is the problem they are trying to solve.\n- You MUST ignore words not related to business idea, and more are more related to job posting.\n\n### Context\nThe job description is taken out from a job post in Upwork (a platform for freelancers to find a job)" | |
| } | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.agent", | |
| "typeVersion": 2, | |
| "position": [ | |
| 224, | |
| 464 | |
| ], | |
| "id": "16124464-57b8-4bcf-977f-454ea1d679ea", | |
| "name": "Code Idea Agent" | |
| }, | |
| { | |
| "parameters": { | |
| "promptType": "define", | |
| "text": "=## Request\nI found this job on upwork, what can be the code business idea behind this?\n\n## Job Description\n{{ $json.description }}", | |
| "hasOutputParser": true, | |
| "options": { | |
| "systemMessage": "=## Information\nYou are a business marketing expert.\nYou will be provided with a job posting from a business. You need to find out the core business idea.\n\n## Instructions\n- You must call \"Get Core Business Idea\" tool to find out the real business idea behind the job description posted.\n\n## Output\nThis is the exact format needed for output\n\n### Input\nI found this job on upwork, what can be the code business idea behind this?\n\n[business idea here]\n\n### Output\nidea: [core business idea]" | |
| } | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.agent", | |
| "typeVersion": 2, | |
| "position": [ | |
| 1360, | |
| 0 | |
| ], | |
| "id": "b0f30a1b-8d26-42db-a866-eff12ee08194", | |
| "name": "Validator Agent", | |
| "retryOnFail": true, | |
| "maxTries": 2, | |
| "onError": "continueErrorOutput" | |
| }, | |
| { | |
| "parameters": { | |
| "rules": { | |
| "values": [ | |
| { | |
| "conditions": { | |
| "options": { | |
| "caseSensitive": true, | |
| "leftValue": "", | |
| "typeValidation": "strict", | |
| "version": 2 | |
| }, | |
| "conditions": [ | |
| { | |
| "leftValue": "={{ $json.project_budget_total }}", | |
| "rightValue": "", | |
| "operator": { | |
| "type": "number", | |
| "operation": "exists", | |
| "singleValue": true | |
| }, | |
| "id": "c3118517-18af-4f11-bbfa-71b2598d4d61" | |
| } | |
| ], | |
| "combinator": "and" | |
| }, | |
| "renameOutput": true, | |
| "outputKey": "Total Pay" | |
| }, | |
| { | |
| "conditions": { | |
| "options": { | |
| "caseSensitive": true, | |
| "leftValue": "", | |
| "typeValidation": "strict", | |
| "version": 2 | |
| }, | |
| "conditions": [ | |
| { | |
| "id": "1253f1fb-407c-4254-a7b3-b1f3792f16b7", | |
| "leftValue": "={{ $json.project_budget_hourly_max }}", | |
| "rightValue": "", | |
| "operator": { | |
| "type": "number", | |
| "operation": "exists", | |
| "singleValue": true | |
| } | |
| } | |
| ], | |
| "combinator": "and" | |
| }, | |
| "renameOutput": true, | |
| "outputKey": "Hourly Pay" | |
| } | |
| ] | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.switch", | |
| "typeVersion": 3.2, | |
| "position": [ | |
| 448, | |
| 0 | |
| ], | |
| "id": "b801dc33-e317-4143-89ef-21025ef6a4e3", | |
| "name": "Switch" | |
| }, | |
| { | |
| "parameters": { | |
| "conditions": { | |
| "options": { | |
| "caseSensitive": true, | |
| "leftValue": "", | |
| "typeValidation": "strict", | |
| "version": 2 | |
| }, | |
| "conditions": [ | |
| { | |
| "id": "b9a31df5-84d1-4ef8-9cfb-0fe7f581e327", | |
| "leftValue": "={{ $json.project_budget_total }}", | |
| "rightValue": 500, | |
| "operator": { | |
| "type": "number", | |
| "operation": "gt" | |
| } | |
| } | |
| ], | |
| "combinator": "and" | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.filter", | |
| "typeVersion": 2.2, | |
| "position": [ | |
| 672, | |
| -96 | |
| ], | |
| "id": "4e683cad-b46b-4366-898e-ac5f0df86c41", | |
| "name": "Big Total Projects" | |
| }, | |
| { | |
| "parameters": { | |
| "conditions": { | |
| "options": { | |
| "caseSensitive": true, | |
| "leftValue": "", | |
| "typeValidation": "strict", | |
| "version": 2 | |
| }, | |
| "conditions": [ | |
| { | |
| "id": "2305cd3c-0eab-431a-bb04-13cbf44496fa", | |
| "leftValue": "={{ $json.project_budget_hourly_max }}", | |
| "rightValue": 100, | |
| "operator": { | |
| "type": "number", | |
| "operation": "gt" | |
| } | |
| } | |
| ], | |
| "combinator": "and" | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.filter", | |
| "typeVersion": 2.2, | |
| "position": [ | |
| 672, | |
| 112 | |
| ], | |
| "id": "e8e6e88a-33cb-4687-a1fd-6a042dc3edfc", | |
| "name": "Big Hourly Projects" | |
| }, | |
| { | |
| "parameters": {}, | |
| "type": "n8n-nodes-base.merge", | |
| "typeVersion": 3.2, | |
| "position": [ | |
| 880, | |
| 0 | |
| ], | |
| "id": "058b7d38-06e7-407c-90d8-758082b2293c", | |
| "name": "Merge" | |
| }, | |
| { | |
| "parameters": { | |
| "jsonSchemaExample": "{\n\t\"idea\": \"business-code-idea-herre\"\n}" | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.outputParserStructured", | |
| "typeVersion": 1.2, | |
| "position": [ | |
| 1632, | |
| 208 | |
| ], | |
| "id": "a8178e95-700f-4284-9294-2c2756142276", | |
| "name": "Structured Output Parser" | |
| }, | |
| { | |
| "parameters": { | |
| "operation": "append", | |
| "documentId": { | |
| "__rl": true, | |
| "value": "1QEG9psLspm5NrZesvcdxwTIOObEZT0MJQmXGf9mPBtQ", | |
| "mode": "list", | |
| "cachedResultName": "Business Idea Extractor", | |
| "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1QEG9psLspm5NrZesvcdxwTIOObEZT0MJQmXGf9mPBtQ/edit?usp=drivesdk" | |
| }, | |
| "sheetName": { | |
| "__rl": true, | |
| "value": "gid=0", | |
| "mode": "list", | |
| "cachedResultName": "Sheet1", | |
| "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1QEG9psLspm5NrZesvcdxwTIOObEZT0MJQmXGf9mPBtQ/edit#gid=0" | |
| }, | |
| "columns": { | |
| "mappingMode": "defineBelow", | |
| "value": { | |
| "Upwork ID": "={{ $('Merge').item.json.id }}", | |
| "Business Idea": "={{ $json.output.idea }}", | |
| "Status": "New", | |
| "Original Description": "={{ $('Merge').item.json.description_text }}", | |
| "Upwork URL": "={{ $('Merge').item.json.url }}", | |
| "Hourly Payment": "={{ $('Merge').item.json.project_budget_hourly_min ? `${$('Merge').item.json.project_budget_hourly_min} ${$('Merge').item.json.project_budget_currency} - ${$('Merge').item.json.project_budget_hourly_max} ${$('Merge').item.json.project_budget_currency}` : \"No hourly pay\" }}", | |
| "Lumpsum Payment": "={{ $('Merge').item.json.project_budget_total? `${$('Merge').item.json.project_budget_total} ${$('Merge').item.json.project_budget_currency}`: \"No total pay\" }}" | |
| }, | |
| "matchingColumns": [], | |
| "schema": [ | |
| { | |
| "id": "Upwork ID", | |
| "displayName": "Upwork ID", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Business Idea", | |
| "displayName": "Business Idea", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Status", | |
| "displayName": "Status", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Original Description", | |
| "displayName": "Original Description", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Upwork URL", | |
| "displayName": "Upwork URL", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Hourly Payment", | |
| "displayName": "Hourly Payment", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| }, | |
| { | |
| "id": "Lumpsum Payment", | |
| "displayName": "Lumpsum Payment", | |
| "required": false, | |
| "defaultMatch": false, | |
| "display": true, | |
| "type": "string", | |
| "canBeUsedToMatch": true | |
| } | |
| ], | |
| "attemptToConvertTypes": false, | |
| "convertFieldsToString": false | |
| }, | |
| "options": {} | |
| }, | |
| "type": "n8n-nodes-base.googleSheets", | |
| "typeVersion": 4.6, | |
| "position": [ | |
| 1920, | |
| 0 | |
| ], | |
| "id": "ab2fa6ee-5816-4567-a5a8-0b4ab82544c5", | |
| "name": "Business Idea Sheet", | |
| "credentials": { | |
| "googleSheetsOAuth2Api": { | |
| "id": "Rn3BYzXFYtmdsek1", | |
| "name": "Google Sheets account" | |
| } | |
| } | |
| }, | |
| { | |
| "parameters": { | |
| "model": "openai/gpt-4.1-nano", | |
| "options": {} | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter", | |
| "typeVersion": 1, | |
| "position": [ | |
| 1232, | |
| 208 | |
| ], | |
| "id": "f9506c9b-30d6-47c3-9d37-9a775df5eb54", | |
| "name": "oAI 4.1 - Nano", | |
| "credentials": { | |
| "openRouterApi": { | |
| "id": "CGW0UD2Uwkzjnlyv", | |
| "name": "OpenRouter account" | |
| } | |
| } | |
| }, | |
| { | |
| "parameters": { | |
| "model": "openai/gpt-4.1-nano", | |
| "options": {} | |
| }, | |
| "type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter", | |
| "typeVersion": 1, | |
| "position": [ | |
| 320, | |
| 688 | |
| ], | |
| "id": "3c325f48-a8b4-4cd0-b4f8-3be2379e0493", | |
| "name": "oAI 4.1", | |
| "credentials": { | |
| "openRouterApi": { | |
| "id": "CGW0UD2Uwkzjnlyv", | |
| "name": "OpenRouter account" | |
| } | |
| } | |
| }, | |
| { | |
| "parameters": { | |
| "content": "## Find Job Listings\n- Get's upto 100 job postings daily\n- We use HTTP Node to call RapidAPI\n\n### Setup\n- RapidAPI - [Subscribe this](https://rapidapi.com/fantastic-jobs-fantastic-jobs-default/api/upwork-jobs-api2/playground/apiendpoint_d6359180-d93a-4c80-877c-b85d5dfbd5bd)\n- Here's how to setup [RapidAPI](https://x.com/search?q=from%3Aarchitjn%20%22n8n%20Basics%22%20%22RapidAPI%22&src=typed_query&f=top)", | |
| "height": 560, | |
| "width": 440 | |
| }, | |
| "type": "n8n-nodes-base.stickyNote", | |
| "position": [ | |
| -64, | |
| -224 | |
| ], | |
| "typeVersion": 1, | |
| "id": "312cd974-e33c-42dd-8460-e9b11583ef62", | |
| "name": "Sticky Note" | |
| }, | |
| { | |
| "parameters": { | |
| "content": "## Filter high paying jobs only\n- Filters based on the amount offered for the job\n- You can edit to save your own amount ", | |
| "height": 560, | |
| "width": 640, | |
| "color": 3 | |
| }, | |
| "type": "n8n-nodes-base.stickyNote", | |
| "position": [ | |
| 400, | |
| -224 | |
| ], | |
| "typeVersion": 1, | |
| "id": "e167543c-6ed4-40df-8bb4-7cda4a8090d6", | |
| "name": "Sticky Note1" | |
| }, | |
| { | |
| "parameters": { | |
| "content": "## Process Job Listing for Idea", | |
| "height": 560, | |
| "width": 720, | |
| "color": 4 | |
| }, | |
| "type": "n8n-nodes-base.stickyNote", | |
| "position": [ | |
| 1072, | |
| -224 | |
| ], | |
| "typeVersion": 1, | |
| "id": "63329ded-cc8b-41f8-bfe6-30b20354ce3d", | |
| "name": "Sticky Note2" | |
| }, | |
| { | |
| "parameters": { | |
| "content": "## Save the ideas\n- Here's how to setup [Google Sheets](https://x.com/search?q=from%3Aarchitjn%20%22n8n%20Basics%22%20%22google%20sheets%22&src=typed_query&f=top)\n- Download the sample Sheet provided with the workflow\n- Upload it to Google Sheets, and Link your sheet in this Node", | |
| "height": 560, | |
| "width": 340, | |
| "color": 5 | |
| }, | |
| "type": "n8n-nodes-base.stickyNote", | |
| "position": [ | |
| 1808, | |
| -224 | |
| ], | |
| "typeVersion": 1, | |
| "id": "0c39320a-4f28-4595-9256-4da336f42fa6", | |
| "name": "Sticky Note3" | |
| }, | |
| { | |
| "parameters": { | |
| "content": "## Understands and extracts core business idea", | |
| "height": 440, | |
| "width": 660, | |
| "color": 6 | |
| }, | |
| "type": "n8n-nodes-base.stickyNote", | |
| "position": [ | |
| -64, | |
| 384 | |
| ], | |
| "typeVersion": 1, | |
| "id": "ed36d331-a924-4585-8dcb-bef41868e337", | |
| "name": "Sticky Note4" | |
| } | |
| ], | |
| "pinData": {}, | |
| "connections": { | |
| "Schedule Trigger": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "HTTP Request", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "HTTP Request": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Switch", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Job Description": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Validator Agent", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Get Core Business Idea": { | |
| "ai_tool": [ | |
| [ | |
| { | |
| "node": "Validator Agent", | |
| "type": "ai_tool", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "When Executed by Another Workflow": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Code Idea Agent", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Switch": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Big Total Projects", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ], | |
| [ | |
| { | |
| "node": "Big Hourly Projects", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Big Hourly Projects": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Merge", | |
| "type": "main", | |
| "index": 1 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Big Total Projects": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Merge", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Merge": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Job Description", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Validator Agent": { | |
| "main": [ | |
| [ | |
| { | |
| "node": "Business Idea Sheet", | |
| "type": "main", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "Structured Output Parser": { | |
| "ai_outputParser": [ | |
| [ | |
| { | |
| "node": "Validator Agent", | |
| "type": "ai_outputParser", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "oAI 4.1 - Nano": { | |
| "ai_languageModel": [ | |
| [ | |
| { | |
| "node": "Validator Agent", | |
| "type": "ai_languageModel", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| }, | |
| "oAI 4.1": { | |
| "ai_languageModel": [ | |
| [ | |
| { | |
| "node": "Code Idea Agent", | |
| "type": "ai_languageModel", | |
| "index": 0 | |
| } | |
| ] | |
| ] | |
| } | |
| }, | |
| "active": false, | |
| "settings": { | |
| "executionOrder": "v1" | |
| }, | |
| "versionId": "259a67c3-0847-4f98-9078-6896e1e353a0", | |
| "meta": { | |
| "templateCredsSetupCompleted": true, | |
| "instanceId": "933df83c84196d70ce3ffd0bf5d3e1aca31b7366f2f84e1f3482640096e4a3a9" | |
| }, | |
| "id": "OFvs6LyLZABBuDvn", | |
| "tags": [] | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment