{"workflow":{"id":13430,"name":"Monitor academic integrity signals with GPT-4o, email alerts and case archiving","views":7,"recentViews":0,"totalViews":7,"createdAt":"2026-02-16T14:14:55.114Z","description":"## How It Works\nThis workflow automates integrity signal detection and investigation orchestration for compliance officers, ethics teams, and risk managers in financial services, healthcare, and regulated industries. It solves the challenge of identifying potential misconduct while ensuring human judgment governs sensitive investigations. Scheduled triggers initiate assessments on synthetic integrity signals, which flow to an AI agent for severity classification based on risk indicators. High-risk signals route to parallel AI investigation agents: data correlation analysis to uncover patterns and anomaly detection to flag statistical outliers. Results converge at mandatory human review gates where compliance professionals evaluate findings before case creation. Approved investigations generate structured case records, while cleared signals archive automatically with full audit trails.\n\n## Setup Steps\n1. Configure Llama-3.1-70B-Instruct model access\n2. Set up schedule trigger for daily or continuous monitoring cycles\n3. Configure risk-based routing logic (Low/High thresholds)\n4. Connect Gmail for human review alerts to compliance officers\n5. Set up Google Sheets for case storage and automated archival\n\n## Prerequisites\nAPI key, Gmail account with app password\n## Use Cases\nFinancial fraud detection, employee misconduct investigation\n## Customization\nIntegrate case management systems, add industry-specific risk models\n## Benefits\nReduces investigation triage time by 65%, ensures consistent risk assessment methodology","workflow":{"id":"h7dJ5SDKuJccRPLjGSwYP","meta":{"instanceId":"b91e510ebae4127f953fd2f5f8d40d58ca1e71c746d4500c12ae86aad04c1502"},"name":"AI-powered academic integrity monitoring and investigation system","tags":[],"nodes":[{"id":"5fe6ea16-d1c1-4ca3-95e3-15162bd1b78c","name":"Schedule Trigger","type":"n8n-nodes-base.scheduleTrigger","position":[-48,192],"parameters":{"rule":{"interval":[{"triggerAtHour":9}]}},"typeVersion":1.3},{"id":"0017ceb9-f1e9-43a6-ab54-bae6b9df9e54","name":"Workflow Configuration","type":"n8n-nodes-base.set","position":[176,192],"parameters":{"options":{},"assignments":{"assignments":[{"id":"id-1","name":"reviewerEmail","type":"string","value":"<__PLACEHOLDER_VALUE__Academic Integrity Reviewer Email__>"},{"id":"id-2","name":"plagiarismThreshold","type":"number","value":75},{"id":"id-3","name":"anomalyThreshold","type":"number","value":80},{"id":"id-4","name":"highRiskThreshold","type":"number","value":85}]},"includeOtherFields":true},"typeVersion":3.4},{"id":"662519bb-412b-4220-9128-244a5ade6c53","name":"Simulate Assessment Data","type":"n8n-nodes-base.set","position":[400,192],"parameters":{"options":{},"assignments":{"assignments":[{"id":"id-1","name":"studentId","type":"string","value":"=STU-2024-{{ Math.floor(Math.random() * 10000) }}"},{"id":"id-2","name":"assessmentId","type":"string","value":"=ASSESS-{{ Math.floor(Math.random() * 1000) }}"},{"id":"id-3","name":"submissionText","type":"string","value":"This is a sample student submission that may contain plagiarized content or anomalous patterns. The writing style shows inconsistencies and contains phrases commonly found in online sources."},{"id":"id-4","name":"submissionTimestamp","type":"string","value":"={{ $now.toISO() }}"},{"id":"id-5","name":"previousSubmissions","type":"number","value":5},{"id":"id-6","name":"averageGrade","type":"number","value":78.5},{"id":"id-7","name":"timeSpentMinutes","type":"number","value":45},{"id":"id-8","name":"wordCount","type":"number","value":850},{"id":"id-9","name":"browserFingerprint","type":"string","value":"=FP-{{ Math.floor(Math.random() * 100000) }}"}]}},"typeVersion":3.4},{"id":"0dc63e8a-031c-4072-8676-4a5dd8dccce1","name":"OpenAI Model - Integrity Agent","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[608,416],"parameters":{"model":{"__rl":true,"mode":"id","value":"gpt-4o"},"options":{"temperature":0.1},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"2a0a50db-177a-4164-932d-f41b67d10690","name":"Structured Output - Integrity Signals","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[800,400],"parameters":{"jsonSchemaExample":"{\n  \"riskLevel\": \"LOW | MEDIUM | HIGH | CRITICAL\",\n  \"plagiarismScore\": 0,\n  \"plagiarismIndicators\": [],\n  \"anomalyScore\": 0,\n  \"anomalyIndicators\": [],\n  \"behavioralFlags\": [],\n  \"overallConfidence\": 0.0,\n  \"reasoning\": \"Detailed analysis of integrity signals\",\n  \"recommendedAction\": \"MONITOR | INVESTIGATE | ESCALATE\"\n}"},"typeVersion":1.3},{"id":"447d3db2-ed4e-49b6-ac62-62a714045840","name":"Integrity Signal Agent","type":"@n8n/n8n-nodes-langchain.agent","position":[624,192],"parameters":{"text":"=Student ID: {{ $json.studentId }}\nAssessment ID: {{ $json.assessmentId }}\nSubmission Text: {{ $json.submissionText }}\nSubmission Time: {{ $json.submissionTimestamp }}\nPrevious Submissions: {{ $json.previousSubmissions }}\nAverage Grade: {{ $json.averageGrade }}\nTime Spent: {{ $json.timeSpentMinutes }} minutes\nWord Count: {{ $json.wordCount }}\nBrowser Fingerprint: {{ $json.browserFingerprint }}\n\nPlagiarism Threshold: {{ $('Workflow Configuration').first().json.plagiarismThreshold }}\nAnomaly Threshold: {{ $('Workflow Configuration').first().json.anomalyThreshold }}","options":{"systemMessage":"You are an Academic Integrity Signal Agent specialized in detecting plagiarism, anomalies, and suspicious patterns in student assessments.\n\nYour task is to:\n1. Analyze the submission text for plagiarism indicators (common phrases, unnatural language patterns, style inconsistencies)\n2. Calculate a plagiarism score (0-100) based on detected indicators\n3. Analyze behavioral anomalies (unusual submission time, time spent vs word count ratio, browser fingerprint changes)\n4. Calculate an anomaly score (0-100) based on behavioral patterns\n5. Compare scores against provided thresholds\n6. Assign overall risk level: LOW (both scores < thresholds), MEDIUM (one score >= threshold), HIGH (both scores >= threshold), CRITICAL (scores significantly exceed thresholds)\n7. Provide detailed reasoning for your assessment\n8. Recommend action: MONITOR (low risk), INVESTIGATE (medium/high risk), ESCALATE (critical risk)\n\nBe thorough, objective, and evidence-based in your analysis."},"promptType":"define","hasOutputParser":true},"typeVersion":3.1},{"id":"2594646d-4cd2-4b19-92d8-dfc7b5410e41","name":"Route by Risk Level","type":"n8n-nodes-base.switch","position":[976,160],"parameters":{"rules":{"values":[{"outputKey":"Low Risk","conditions":{"options":{"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.riskLevel }}","rightValue":"LOW"}]},"renameOutput":true},{"outputKey":"Medium Risk","conditions":{"options":{"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"and","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.riskLevel }}","rightValue":"MEDIUM"}]},"renameOutput":true},{"outputKey":"High/Critical Risk","conditions":{"options":{"leftValue":"","caseSensitive":true,"typeValidation":"strict"},"combinator":"or","conditions":[{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.riskLevel }}","rightValue":"HIGH"},{"operator":{"type":"string","operation":"equals"},"leftValue":"={{ $json.output.riskLevel }}","rightValue":"CRITICAL"}]},"renameOutput":true}]},"options":{"fallbackOutput":"extra","renameFallbackOutput":"Unclassified"}},"typeVersion":3.4},{"id":"883a7dca-fe1e-4c5b-93df-a74c5dadd602","name":"OpenAI Model - Orchestration Agent","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[1200,592],"parameters":{"model":{"__rl":true,"mode":"id","value":"gpt-4o"},"options":{"temperature":0.2},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"4f850fb2-f32b-4fd2-9e29-8aa584d63fee","name":"OpenAI Model - Investigation Tool","type":"@n8n/n8n-nodes-langchain.lmChatOpenAi","position":[1680,944],"parameters":{"model":{"__rl":true,"mode":"id","value":"gpt-4o"},"options":{"temperature":0.1},"builtInTools":{}},"credentials":{"openAiApi":{"id":"mv2ECvRtbAK63G2g","name":"OpenAi account"}},"typeVersion":1.3},{"id":"9748d48e-627f-49d7-a36b-32b12d3a9bd9","name":"Investigation Agent Tool","type":"@n8n/n8n-nodes-langchain.agentTool","position":[1664,736],"parameters":{"text":"={{ $fromAI(\"caseData\", \"Academic integrity case data requiring investigation\", \"json\") }}","options":{"systemMessage":"You are an Investigation Agent Tool specialized in conducting deep investigations into academic integrity violations.\n\nYour task is to:\n1. Receive case data from the orchestration agent\n2. Conduct detailed plagiarism source checking (simulate checking against academic databases, web sources)\n3. Perform timeline analysis of submission patterns\n4. Compare current submission with student previous work for style consistency\n5. Calculate match percentages and evidence strength\n6. Provide comprehensive investigation findings\n7. Recommend next steps based on evidence strength\n\nReturn structured investigation results with clear evidence assessment."},"hasOutputParser":true,"toolDescription":"Conducts detailed investigation into academic integrity cases including plagiarism source checking, timeline analysis, and evidence assessment"},"typeVersion":3},{"id":"1dbf5be1-3dfb-492a-92e9-3f52976514a4","name":"Structured Output - Investigation","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[1856,928],"parameters":{"jsonSchemaExample":"{\n  \"investigationFindings\": \"Detailed investigation results\",\n  \"evidenceStrength\": \"WEAK | MODERATE | STRONG | CONCLUSIVE\",\n  \"sourcesChecked\": [],\n  \"matchPercentage\": 0,\n  \"timelineAnalysis\": \"Analysis of submission timeline\",\n  \"comparisonWithPreviousWork\": \"Comparison findings\",\n  \"recommendedNextSteps\": []\n}"},"typeVersion":1.3},{"id":"6eb3e8e9-1734-4cf0-bf42-7d328b670602","name":"Structured Output - Orchestration","type":"@n8n/n8n-nodes-langchain.outputParserStructured","position":[1952,736],"parameters":{"jsonSchemaExample":"{\n  \"caseId\": \"CASE-XXXX\",\n  \"orchestrationDecision\": \"AUTOMATED_ACTION | HUMAN_REVIEW_REQUIRED\",\n  \"actionsTaken\": [],\n  \"investigationSummary\": \"Summary of investigation findings\",\n  \"documentationGenerated\": \"Complete case documentation\",\n  \"humanReviewRequired\": false,\n  \"humanReviewReason\": \"Reason if human review needed\",\n  \"recommendedSanction\": \"WARNING | GRADE_REDUCTION | COURSE_FAILURE | DISCIPLINARY_ACTION\",\n  \"confidenceLevel\": 0.0,\n  \"nextSteps\": []\n}"},"typeVersion":1.3},{"id":"71e1bbc6-3eba-4e9a-b421-173a48b1c050","name":"Case Orchestration Agent","type":"@n8n/n8n-nodes-langchain.agent","position":[1328,368],"parameters":{"text":"=Integrity Signals:\nRisk Level: {{ $json.output.riskLevel }}\nPlagiarism Score: {{ $json.output.plagiarismScore }}\nAnomaly Score: {{ $json.output.anomalyScore }}\nRecommended Action: {{ $json.output.recommendedAction }}\nReasoning: {{ $json.output.reasoning }}\n\nStudent ID: {{ $('Simulate Assessment Data').first().json.studentId }}\nAssessment ID: {{ $('Simulate Assessment Data').first().json.assessmentId }}","options":{"systemMessage":"You are a Case Orchestration Agent responsible for coordinating academic integrity investigation workflows, documentation, and human review decisions.\n\nYour task is to:\n1. Review integrity signals from the Integrity Signal Agent\n2. For MEDIUM/HIGH/CRITICAL risk cases, call the Investigation Agent Tool to conduct detailed investigation\n3. Synthesize investigation findings with integrity signals\n4. Generate comprehensive case documentation including timeline, evidence, and analysis\n5. Determine if human review is required based on:\n   - Evidence strength (CONCLUSIVE = automated, WEAK/MODERATE = human review)\n   - Risk level (CRITICAL always requires human review)\n   - Confidence level (< 0.85 requires human review)\n6. Recommend appropriate sanctions based on severity\n7. Document all actions taken and next steps\n8. Return structured orchestration decision\n\nEnsure thorough documentation for audit trails and fair process."},"promptType":"define","hasOutputParser":true},"typeVersion":3.1},{"id":"d22125b9-7be0-478a-813c-d7f896e50bd6","name":"Check if Human Review Required","type":"n8n-nodes-base.if","position":[1856,464],"parameters":{"options":{},"conditions":{"options":{"leftValue":"","caseSensitive":false,"typeValidation":"loose"},"combinator":"and","conditions":[{"id":"id-1","operator":{"type":"boolean","operation":"equals"},"leftValue":"={{ $json.output.humanReviewRequired }}","rightValue":"true"}]}},"typeVersion":2.3},{"id":"8bbac9bc-1aae-4a3e-92c9-9ca4bdf7bf85","name":"Store Case for Human Review","type":"n8n-nodes-base.dataTable","position":[2064,416],"parameters":{"columns":{"value":{"caseId":"={{ $json.output.caseId }}","status":"PENDING_REVIEW","createdAt":"={{ $now.toISO() }}","riskLevel":"={{ $('Integrity Signal Agent').first().json.output.riskLevel }}","studentId":"={{ $('Simulate Assessment Data').first().json.studentId }}","assessmentId":"={{ $('Simulate Assessment Data').first().json.assessmentId }}","reviewReason":"={{ $json.output.humanReviewReason }}","documentation":"={{ $json.output.documentationGenerated }}","recommendedSanction":"={{ $json.output.recommendedSanction }}"},"mappingMode":"defineBelow"},"options":{},"dataTableId":{"__rl":true,"mode":"name","value":"HumanReviewQueue"}},"typeVersion":1.1},{"id":"a02eee01-81d3-4594-bbc8-752df359afaf","name":"Send Human Review Alert","type":"n8n-nodes-base.emailSend","position":[2288,416],"webhookId":"5b43fc9b-69d5-479b-9efb-89cbbbe7e74e","parameters":{"html":"=<html>\n<body style='font-family: Arial, sans-serif;'>\n<div style='background-color: #dc3545; color: white; padding: 20px;'>\n<h2>🚨 Academic Integrity Case - Human Review Required</h2>\n</div>\n\n<div style='padding: 20px;'>\n<p><strong>Case ID:</strong> {{ $json.output.caseId }}</p>\n<p><strong>Student ID:</strong> {{ $('Simulate Assessment Data').first().json.studentId }}</p>\n<p><strong>Assessment ID:</strong> {{ $('Simulate Assessment Data').first().json.assessmentId }}</p>\n<p><strong>Risk Level:</strong> <span style='color: #dc3545; font-weight: bold;'>{{ $('Integrity Signal Agent').first().json.output.riskLevel }}</span></p>\n\n<h3>Review Reason</h3>\n<p>{{ $json.output.humanReviewReason }}</p>\n\n<h3>Investigation Summary</h3>\n<p>{{ $json.output.investigationSummary }}</p>\n\n<h3>Recommended Sanction</h3>\n<p><strong>{{ $json.output.recommendedSanction }}</strong></p>\n\n<h3>Case Documentation</h3>\n<div style='background-color: #f8f9fa; padding: 15px; border-left: 4px solid #007bff;'>\n<pre style='white-space: pre-wrap;'>{{ $json.output.documentationGenerated }}</pre>\n</div>\n\n<h3>Next Steps</h3>\n<ul>\n{{ $json.output.nextSteps.map(step => `<li>${step}</li>`).join('') }}\n</ul>\n\n<p style='margin-top: 30px;'>\n<a href='https://cschin.app.n8n.cloud/webhook/{{ $('Wait for Human Decision').first().webhookId }}' style='background-color: #28a745; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px;'>Approve Action</a>\n<a href='https://cschin.app.n8n.cloud/webhook/{{ $('Wait for Human Decision').first().webhookId }}' style='background-color: #dc3545; color: white; padding: 10px 20px; text-decoration: none; border-radius: 5px; margin-left: 10px;'>Reject Action</a>\n</p>\n\n<p style='color: #666; font-size: 12px; margin-top: 30px;'>This is an automated alert from the Academic Integrity Monitoring System.</p>\n</div>\n</body>\n</html>","options":{},"subject":"=Academic Integrity Case Requires Human Review - {{ $json.output.caseId }}","toEmail":"={{ $('Workflow Configuration').first().json.reviewerEmail }}","fromEmail":"<__PLACEHOLDER_VALUE__Sender Email Address__>"},"typeVersion":2.1},{"id":"d465a216-f596-4645-b7ec-426ef942ade1","name":"Wait for Human Decision","type":"n8n-nodes-base.wait","position":[2512,416],"webhookId":"d9318824-978f-4e0e-af43-d531989595df","parameters":{"resume":"webhook","options":{},"httpMethod":"POST"},"typeVersion":1.1},{"id":"730e4755-a854-47db-b229-456983f25889","name":"Store Automated Case","type":"n8n-nodes-base.dataTable","position":[2512,608],"parameters":{"columns":{"value":{"caseId":"={{ $json.output.caseId }}","status":"AUTOMATED_PROCESSED","riskLevel":"={{ $('Integrity Signal Agent').first().json.output.riskLevel }}","studentId":"={{ $('Simulate Assessment Data').first().json.studentId }}","processedAt":"={{ $now.toISO() }}","actionsTaken":"={{ $json.output.actionsTaken.join(', ') }}","assessmentId":"={{ $('Simulate Assessment Data').first().json.assessmentId }}","documentation":"={{ $json.output.documentationGenerated }}","confidenceLevel":"={{ $json.output.confidenceLevel }}","recommendedSanction":"={{ $json.output.recommendedSanction }}"},"mappingMode":"defineBelow"},"options":{},"dataTableId":{"__rl":true,"mode":"name","value":"AutomatedCases"}},"typeVersion":1.1},{"id":"b01fbfb9-d868-47d2-85d9-428e860255bc","name":"Merge All Cases","type":"n8n-nodes-base.merge","position":[2736,400],"parameters":{"numberInputs":3},"typeVersion":3.2},{"id":"5fcb0ca7-9844-4980-9b0e-5bb9af63030f","name":"Archive All Cases","type":"n8n-nodes-base.dataTable","position":[2960,416],"parameters":{"options":{},"dataTableId":{"__rl":true,"mode":"name","value":"AllCasesArchive"}},"typeVersion":1.1},{"id":"3bcdb920-06ca-4333-8443-17ac1a29423d","name":"Prepare Low Risk Response","type":"n8n-nodes-base.set","position":[2288,144],"parameters":{"options":{},"assignments":{"assignments":[{"id":"id-1","name":"caseId","type":"string","value":"=CASE-LOW-{{ Math.floor(Math.random() * 10000) }}"},{"id":"id-2","name":"studentId","type":"string","value":"={{ $('Simulate Assessment Data').first().json.studentId }}"},{"id":"id-3","name":"assessmentId","type":"string","value":"={{ $('Simulate Assessment Data').first().json.assessmentId }}"},{"id":"id-4","name":"riskLevel","type":"string","value":"={{ $json.output.riskLevel }}"},{"id":"id-5","name":"action","type":"string","value":"No action required - monitoring only"},{"id":"id-6","name":"status","type":"string","value":"LOW_RISK_CLEARED"},{"id":"id-7","name":"processedAt","type":"string","value":"={{ $now.toISO() }}"}]}},"typeVersion":3.4},{"id":"cee7b6b3-da3e-4ea9-9681-8b63f27145e5","name":"Store Low Risk Case","type":"n8n-nodes-base.dataTable","position":[2512,144],"parameters":{"columns":{"value":{"action":"={{ $json.action }}","caseId":"={{ $json.caseId }}","status":"={{ $json.status }}","riskLevel":"={{ $json.riskLevel }}","studentId":"={{ $json.studentId }}","processedAt":"={{ $json.processedAt }}","assessmentId":"={{ $json.assessmentId }}"},"mappingMode":"defineBelow"},"options":{},"dataTableId":{"__rl":true,"mode":"name","value":"LowRiskCases"}},"typeVersion":1.1},{"id":"fc1ddd30-1316-4599-ae58-71bd1a8bed4f","name":"Sticky Note","type":"n8n-nodes-base.stickyNote","position":[1104,-352],"parameters":{"color":6,"width":496,"height":320,"content":"## Prerequisites\nAPI key, Gmail account with app password\n## Use Cases\nFinancial fraud detection, employee misconduct investigation\n## Customization\nIntegrate case management systems, add industry-specific risk models\n## Benefits\nReduces investigation triage time by 65%, ensures consistent risk assessment methodology"},"typeVersion":1},{"id":"399f018b-0496-4549-887e-2e4151672028","name":"Sticky Note1","type":"n8n-nodes-base.stickyNote","position":[672,-272],"parameters":{"width":368,"height":256,"content":"## Setup Steps\n1. Configure Llama-3.1-70B-Instruct model access\n2. Set up schedule trigger for daily or continuous monitoring cycles\n3. Configure risk-based routing logic (Low/High thresholds)\n4. Connect Gmail for human review alerts to compliance officers\n5. Set up Google Sheets for case storage and automated archival"},"typeVersion":1},{"id":"a9167746-2d2a-4984-be76-d31837300ff7","name":"Sticky Note2","type":"n8n-nodes-base.stickyNote","position":[0,-272],"parameters":{"width":624,"height":288,"content":"## How It Works\nThis workflow automates integrity signal detection and investigation orchestration for compliance officers, ethics teams, and risk managers in financial services, healthcare, and regulated industries. It solves the challenge of identifying potential misconduct while ensuring human judgment governs sensitive investigations. Scheduled triggers initiate assessments on synthetic integrity signals, which flow to an AI agent for severity classification based on risk indicators. High-risk signals route to parallel AI investigation agents: data correlation analysis to uncover patterns and anomaly detection to flag statistical outliers. Results converge at mandatory human review gates where compliance professionals evaluate findings before case creation. Approved investigations generate structured case records, while cleared signals archive automatically with full audit trails."},"typeVersion":1},{"id":"c789e0bb-b0fc-4b12-a7fd-d4fb51c0bf45","name":"Sticky Note3","type":"n8n-nodes-base.stickyNote","position":[1616,64],"parameters":{"color":7,"width":1568,"height":1280,"content":"\n## Investigation Analysis\nIdentifies unusual activities warranting deeper investigation through quantitative evidence discovery."},"typeVersion":1},{"id":"56229de1-d162-48a7-b42a-89608f0b064c","name":"Sticky Note4","type":"n8n-nodes-base.stickyNote","position":[944,48],"parameters":{"color":7,"width":640,"height":992,"content":"## Data Orchestration \nReveals systemic patterns and repeat offenders that isolated signal analysis would miss."},"typeVersion":1},{"id":"d536c889-353c-4acc-beb1-aa7f378f985e","name":"Sticky Note5","type":"n8n-nodes-base.stickyNote","position":[-96,48],"parameters":{"color":7,"width":1024,"height":544,"content":"## Integrity Assessment \nPrioritizes investigation resources on high-risk matters requiring immediate attention versus routine monitoring."},"typeVersion":1}],"active":false,"pinData":{},"settings":{"availableInMCP":false,"executionOrder":"v1"},"versionId":"d3acc5cd-369a-4252-8bae-01192e6f4d27","connections":{"Merge All Cases":{"main":[[{"node":"Archive All Cases","type":"main","index":0}]]},"Schedule Trigger":{"main":[[{"node":"Workflow Configuration","type":"main","index":0}]]},"Route by Risk Level":{"main":[[{"node":"Prepare Low Risk Response","type":"main","index":0}],[{"node":"Case Orchestration Agent","type":"main","index":0}],[{"node":"Case Orchestration Agent","type":"main","index":0}]]},"Store Low Risk Case":{"main":[[{"node":"Merge All Cases","type":"main","index":2}]]},"Store Automated Case":{"main":[[{"node":"Merge All Cases","type":"main","index":1}]]},"Integrity Signal Agent":{"main":[[{"node":"Route by Risk Level","type":"main","index":0}]]},"Workflow Configuration":{"main":[[{"node":"Simulate Assessment Data","type":"main","index":0}]]},"Send Human Review Alert":{"main":[[{"node":"Wait for Human Decision","type":"main","index":0}]]},"Wait for Human Decision":{"main":[[{"node":"Merge All Cases","type":"main","index":0}]]},"Case Orchestration Agent":{"main":[[{"node":"Check if Human Review Required","type":"main","index":0}]]},"Investigation Agent Tool":{"ai_tool":[[{"node":"Case Orchestration Agent","type":"ai_tool","index":0}]]},"Simulate Assessment Data":{"main":[[{"node":"Integrity Signal Agent","type":"main","index":0}]]},"Prepare Low Risk Response":{"main":[[{"node":"Store Low Risk Case","type":"main","index":0}]]},"Store Case for Human Review":{"main":[[{"node":"Send Human Review Alert","type":"main","index":0}]]},"Check if Human Review Required":{"main":[[{"node":"Store Case for Human Review","type":"main","index":0}],[{"node":"Store Automated Case","type":"main","index":0}]]},"OpenAI Model - Integrity Agent":{"ai_languageModel":[[{"node":"Integrity Signal Agent","type":"ai_languageModel","index":0}]]},"OpenAI Model - Investigation Tool":{"ai_languageModel":[[{"node":"Investigation Agent Tool","type":"ai_languageModel","index":0}]]},"Structured Output - Investigation":{"ai_outputParser":[[{"node":"Investigation Agent Tool","type":"ai_outputParser","index":0}]]},"Structured Output - Orchestration":{"ai_outputParser":[[{"node":"Case Orchestration Agent","type":"ai_outputParser","index":0}]]},"OpenAI Model - Orchestration Agent":{"ai_languageModel":[[{"node":"Case Orchestration Agent","type":"ai_languageModel","index":0}]]},"Structured Output - Integrity Signals":{"ai_outputParser":[[{"node":"Integrity Signal Agent","type":"ai_outputParser","index":0}]]}}},"lastUpdatedBy":1,"workflowInfo":{"nodeCount":28,"nodeTypes":{"n8n-nodes-base.if":{"count":1},"n8n-nodes-base.set":{"count":3},"n8n-nodes-base.wait":{"count":1},"n8n-nodes-base.merge":{"count":1},"n8n-nodes-base.switch":{"count":1},"n8n-nodes-base.dataTable":{"count":4},"n8n-nodes-base.emailSend":{"count":1},"n8n-nodes-base.stickyNote":{"count":6},"@n8n/n8n-nodes-langchain.agent":{"count":2},"n8n-nodes-base.scheduleTrigger":{"count":1},"@n8n/n8n-nodes-langchain.agentTool":{"count":1},"@n8n/n8n-nodes-langchain.lmChatOpenAi":{"count":3},"@n8n/n8n-nodes-langchain.outputParserStructured":{"count":3}}},"status":"published","readyToDemo":null,"user":{"name":"Cheng Siong Chin","username":"cschin","bio":"Dr. Cheng Siong CHIN is an n8n workflow creator specializing in AI-powered automation, agent orchestration, and intelligent system integrations. He designs and builds end-to-end workflows that combine LLMs, APIs, and data pipelines to streamline complex processes and deliver production-ready automation solutions. Contact me to discuss custom AI workflows and agent architectures.\n","verified":true,"links":["https://gravatar.com/mysticluminary9fa255f7f5"],"avatar":"https://gravatar.com/avatar/54544f98e839bb9dd9a764ad1e6823eeddb6db5138d201e42f291a7b0a73303f?r=pg&d=retro&size=200"},"nodes":[{"id":11,"icon":"fa:envelope","name":"n8n-nodes-base.emailSend","codex":{"data":{"alias":["SMTP","email","human","form","wait","hitl","approval"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sendemail/"}],"credentialDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/credentials/sendemail/"}]},"categories":["Communication","HITL","Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"HITL":["Human in the Loop"]}}},"group":"[\"output\"]","defaults":{"name":"Send Email","color":"#00bb88"},"iconData":{"icon":"envelope","type":"icon"},"displayName":"Send Email","typeVersion":2,"nodeCategories":[{"id":6,"name":"Communication"},{"id":9,"name":"Core Nodes"},{"id":28,"name":"HITL"}]},{"id":20,"icon":"fa:map-signs","name":"n8n-nodes-base.if","codex":{"data":{"alias":["Router","Filter","Condition","Logic","Boolean","Branch"],"details":"The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.","resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/","icon":"🧬","label":"Why business process automation with n8n can change your daily life"},{"url":"https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/","icon":"🤬","label":"Create a toxic language detector for Telegram in 4 step"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/","icon":"🧠","label":"Why this Product Manager loves workflow automation with n8n"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"If","color":"#408000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"If","typeVersion":2,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":24,"icon":"file:merge.svg","name":"n8n-nodes-base.merge","codex":{"data":{"alias":["Join","Concatenate","Wait"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-to-sync-data-between-two-systems/","icon":"🏬","label":"How to synchronize data between two systems (one-way vs. two-way sync"},{"url":"https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/","icon":"🎫","label":"Supercharging your conference registration process with n8n"},{"url":"https://n8n.io/blog/migrating-community-metrics-to-orbit-using-n8n/","icon":"📈","label":"Migrating Community Metrics to Orbit using n8n"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/","icon":"🙌","label":"Sending Automated Congratulations with Google Sheets, Twilio, and n8n "},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.merge/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow","Data Transformation"]}}},"group":"[\"transform\"]","defaults":{"name":"Merge"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTc3XzUxOCkiPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTAgNDhDMCAyMS40OTAzIDIxLjQ5MDMgMCA0OCAwSDExMkMxMzguNTEgMCAxNjAgMjEuNDkwMyAxNjAgNDhWNTZIMTk2LjI1MkMyNDAuNDM1IDU2IDI3Ni4yNTIgOTEuODE3MiAyNzYuMjUyIDEzNlYxOTJDMjc2LjI1MiAyMTQuMDkxIDI5NC4xNjEgMjMyIDMxNi4yNTIgMjMySDM1MlYyMjRDMzUyIDE5Ny40OSAzNzMuNDkgMTc2IDQwMCAxNzZINDY0QzQ5MC41MSAxNzYgNTEyIDE5Ny40OSA1MTIgMjI0VjI4OEM1MTIgMzE0LjUxIDQ5MC41MSAzMzYgNDY0IDMzNkg0MDBDMzczLjQ5IDMzNiAzNTIgMzE0LjUxIDM1MiAyODhWMjgwSDMxNi4yNTJDMjk0LjE2MSAyODAgMjc2LjI1MiAyOTcuOTA5IDI3Ni4yNTIgMzIwVjM3NkMyNzYuMjUyIDQyMC4xODMgMjQwLjQzNSA0NTYgMTk2LjI1MiA0NTZIMTYwVjQ2NEMxNjAgNDkwLjUxIDEzOC41MSA1MTIgMTEyIDUxMkg0OEMyMS40OTAzIDUxMiAwIDQ5MC41MSAwIDQ2NFY0MDBDMCAzNzMuNDkgMjEuNDkwMyAzNTIgNDggMzUySDExMkMxMzguNTEgMzUyIDE2MCAzNzMuNDkgMTYwIDQwMFY0MDhIMTk2LjI1MkMyMTMuOTI1IDQwOCAyMjguMjUyIDM5My42NzMgMjI4LjI1MiAzNzZWMzIwQzIyOC4yNTIgMjk0Ljc4NCAyMzguODU5IDI3Mi4wNDQgMjU1Ljg1MyAyNTZDMjM4Ljg1OSAyMzkuOTU2IDIyOC4yNTIgMjE3LjIxNiAyMjguMjUyIDE5MlYxMzZDMjI4LjI1MiAxMTguMzI3IDIxMy45MjUgMTA0IDE5Ni4yNTIgMTA0SDE2MFYxMTJDMTYwIDEzOC41MSAxMzguNTEgMTYwIDExMiAxNjBINDhDMjEuNDkwMyAxNjAgMCAxMzguNTEgMCAxMTJWNDhaTTEwNCA0OEMxMDguNDE4IDQ4IDExMiA1MS41ODE3IDExMiA1NlYxMDRDMTEyIDEwOC40MTggMTA4LjQxOCAxMTIgMTA0IDExMkg1NkM1MS41ODE3IDExMiA0OCAxMDguNDE4IDQ4IDEwNFY1NkM0OCA1MS41ODE3IDUxLjU4MTcgNDggNTYgNDhIMTA0Wk00NTYgMjI0QzQ2MC40MTggMjI0IDQ2NCAyMjcuNTgyIDQ2NCAyMzJWMjgwQzQ2NCAyODQuNDE4IDQ2MC40MTggMjg4IDQ1NiAyODhINDA4QzQwMy41ODIgMjg4IDQwMCAyODQuNDE4IDQwMCAyODBWMjMyQzQwMCAyMjcuNTgyIDQwMy41ODIgMjI0IDQwOCAyMjRINDU2Wk0xMTIgNDA4QzExMiA0MDMuNTgyIDEwOC40MTggNDAwIDEwNCA0MDBINTZDNTEuNTgxNyA0MDAgNDggNDAzLjU4MiA0OCA0MDhWNDU2QzQ4IDQ2MC40MTggNTEuNTgxNyA0NjQgNTYgNDY0SDEwNEMxMDguNDE4IDQ2NCAxMTIgNDYwLjQxOCAxMTIgNDU2VjQwOFoiIGZpbGw9IiM1NEI4QzkiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTc3XzUxOCI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="},"displayName":"Merge","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":38,"icon":"fa:pen","name":"n8n-nodes-base.set","codex":{"data":{"alias":["Set","JS","JSON","Filter","Transform","Map"],"resources":{"generic":[{"url":"https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/","icon":"🏭","label":"Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"},{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/","icon":"📈","label":"Automatically pulling and visualizing data with n8n"},{"url":"https://n8n.io/blog/database-monitoring-and-alerting-with-n8n/","icon":"📡","label":"Database Monitoring and Alerting with n8n"},{"url":"https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/","icon":"🧾","label":"Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"},{"url":"https://n8n.io/blog/no-code-ecommerce-workflow-automations/","icon":"store","label":"6 e-commerce workflows to power up your Shopify s"},{"url":"https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/","icon":"🔗","label":"How to build a low-code, self-hosted URL shortener in 3 steps"},{"url":"https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/","icon":"⚙️","label":"Automate your data processing pipeline in 9 steps"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/","icon":"⚡️","label":"5 tasks you can automate with the new Notion API "},{"url":"https://n8n.io/blog/automate-google-apps-for-productivity/","icon":"💡","label":"15 Google apps you can combine and automate to increase productivity"},{"url":"https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/","icon":" 🕸️","label":"How uProc scraped a multi-page website with a low-code workflow"},{"url":"https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/","icon":"📱","label":"Building an expense tracking app in 10 minutes"},{"url":"https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/","icon":"📹","label":"The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"},{"url":"https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/","icon":"🤖","label":"5 workflow automations for Mattermost that we love at n8n"},{"url":"https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/","icon":"🧰","label":"Learn to Build Powerful API Endpoints Using Webhooks"},{"url":"https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/","icon":"📈","label":"How a Membership Development Manager automates his work and investments"},{"url":"https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/","icon":"📈","label":"A low-code bitcoin ticker built with QuestDB and n8n.io"},{"url":"https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/","icon":"🎡","label":"How to set up a no-code CI/CD pipeline with GitHub and TravisCI"},{"url":"https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/","icon":"🎖","label":"Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"},{"url":"https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/","icon":"🛵","label":"How Goomer automated their operations with over 200 n8n workflows"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.set/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Data Transformation"]}}},"group":"[\"input\"]","defaults":{"name":"Edit Fields"},"iconData":{"icon":"pen","type":"icon"},"displayName":"Edit Fields (Set)","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":112,"icon":"fa:map-signs","name":"n8n-nodes-base.switch","codex":{"data":{"alias":["Router","If","Path","Filter","Condition","Logic","Branch","Case"],"resources":{"generic":[{"url":"https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/","icon":"☀️","label":"2021: The Year to Automate the New You with n8n"},{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/","icon":"👦","label":"Build your own virtual assistant with n8n: A step by step guide"},{"url":"https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/","icon":"🏷️","label":"How to automatically manage contributions to open-source projects"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Flow"]}}},"group":"[\"transform\"]","defaults":{"name":"Switch","color":"#506000"},"iconData":{"icon":"map-signs","type":"icon"},"displayName":"Switch","typeVersion":3,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":514,"icon":"fa:pause-circle","name":"n8n-nodes-base.wait","codex":{"data":{"alias":["pause","sleep","delay","timeout"],"resources":{"generic":[{"url":"https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/","icon":"👥","label":"How to get started with CRM automation (with 3 no-code workflow ideas"},{"url":"https://n8n.io/blog/aws-workflow-automation/","label":"7 no-code workflow automations for Amazon Web Services"}],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers","Flow"]}}},"group":"[\"organization\"]","defaults":{"name":"Wait","color":"#804050"},"iconData":{"icon":"pause-circle","type":"icon"},"displayName":"Wait","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":565,"icon":"fa:sticky-note","name":"n8n-nodes-base.stickyNote","codex":{"data":{"alias":["Comments","Notes","Sticky"],"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\"]","defaults":{"name":"Sticky Note","color":"#FFD233"},"iconData":{"icon":"sticky-note","type":"icon"},"displayName":"Sticky Note","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":839,"icon":"fa:clock","name":"n8n-nodes-base.scheduleTrigger","codex":{"data":{"alias":["Time","Scheduler","Polling","Cron","Interval"],"resources":{"generic":[],"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.scheduletrigger/"}]},"categories":["Core Nodes"],"nodeVersion":"1.0","codexVersion":"1.0"}},"group":"[\"trigger\",\"schedule\"]","defaults":{"name":"Schedule Trigger","color":"#31C49F"},"iconData":{"icon":"clock","type":"icon"},"displayName":"Schedule Trigger","typeVersion":1,"nodeCategories":[{"id":9,"name":"Core Nodes"}]},{"id":1119,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agent","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Agents","Root Nodes"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1153,"icon":"file:openAiLight.svg","name":"@n8n/n8n-nodes-langchain.lmChatOpenAi","codex":{"data":{"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.lmchatopenai/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Language Models","Root Nodes"],"Language Models":["Chat Models (Recommended)"]}}},"group":"[\"transform\"]","defaults":{"name":"OpenAI Chat Model"},"iconData":{"type":"file","fileBuffer":"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTM2Ljg2NzEgMTYuMzcxOEMzNy43NzQ2IDEzLjY0OCAzNy40NjIxIDEwLjY2NDIgMzYuMDEwOCA4LjE4NjYxQzMzLjgyODIgNC4zODY1MyAyOS40NDA3IDIuNDMxNDkgMjUuMTU1NiAzLjM1MTUxQzIzLjI0OTMgMS4yMDM5NiAyMC41MTA1IC0wLjAxNzMxNDggMTcuNjM5MiAwLjAwMDE4NTUzM0MxMy4yNTkxIC0wLjAwOTgxNDY4IDkuMzcyNzMgMi44MTAyNSA4LjAyNTIgNi45Nzc4M0M1LjIxMTM5IDcuNTU0MSAyLjc4MjU4IDkuMzE1MzggMS4zNjEzIDExLjgxMTdDLTAuODM3NDkzIDE1LjYwMTggLTAuMzM2MjMyIDIwLjM3OTQgMi42MDEzMyAyMy42Mjk0QzEuNjkzODEgMjYuMzUzMiAyLjAwNjMyIDI5LjMzNzEgMy40NTc2IDMxLjgxNDZDNS42NDAxNSAzNS42MTQ3IDEwLjAyNzcgMzcuNTY5NyAxNC4zMTI4IDM2LjY0OTdDMTYuMjE3OSAzOC43OTczIDE4Ljk1NzkgNDAuMDE4NSAyMS44MjkyIDM5Ljk5OThDMjYuMjExOCA0MC4wMTEgMzAuMDk5NCAzNy4xODg1IDMxLjQ0NjkgMzMuMDE3MUMzNC4yNjA4IDMyLjQ0MDkgMzYuNjg5NiAzMC42Nzk2IDM4LjExMDggMjguMTgzM0M0MC4zMDcxIDI0LjM5MzIgMzkuODA0NiAxOS42MTk0IDM2Ljg2ODMgMTYuMzY5M0wzNi44NjcxIDE2LjM3MThaTTIxLjgzMTcgMzcuMzg2QzIwLjA3OCAzNy4zODg1IDE4LjM3OTIgMzYuNzc0NyAxNy4wMzI5IDM1LjY1MDlDMTcuMDk0MSAzNS42MTg0IDE3LjIwMDQgMzUuNTU5NyAxNy4yNjkxIDM1LjUxNzJMMjUuMjM0MyAzMC45MTcxQzI1LjY0MTggMzAuNjg1OCAyNS44OTE4IDMwLjI1MjEgMjUuODg5MyAyOS43ODMzVjE4LjU1NDNMMjkuMjU1NyAyMC40OTgxQzI5LjI5MTkgMjAuNTE1NiAyOS4zMTU3IDIwLjU1MDYgMjkuMzIwNyAyMC41OTA2VjI5Ljg4OTZDMjkuMzE1NyAzNC4wMjQ3IDI1Ljk2NjggMzcuMzc3MiAyMS44MzE3IDM3LjM4NlpNNS43MjY0IDMwLjUwNzFDNC44NDc2MyAyOC45ODk2IDQuNTMxMzcgMjcuMjEwOCA0LjgzMjYzIDI1LjQ4NDVDNC44OTEzOCAyNS41MTk1IDQuOTk1MTMgMjUuNTgzMiA1LjA2ODg4IDI1LjYyNTdMMTMuMDM0MSAzMC4yMjU4QzEzLjQzNzggMzAuNDYyMSAxMy45Mzc4IDMwLjQ2MjEgMTQuMzQyOCAzMC4yMjU4TDI0LjA2NjggMjQuNjEwN1YyOC40OTgzQzI0LjA2OTMgMjguNTM4MyAyNC4wNTA1IDI4LjU3NyAyNC4wMTkzIDI4LjYwMkwxNS45Njc5IDMzLjI1MDlDMTIuMzgxNSAzNS4zMTU5IDcuODAxNDQgMzQuMDg4NCA1LjcyNzY1IDMwLjUwNzFINS43MjY0Wk0zLjYzMDEgMTMuMTIwNUM0LjUwNTEyIDExLjYwMDQgNS44ODY0IDEwLjQzNzkgNy41MzE0NCA5LjgzNDE1QzcuNTMxNDQgOS45MDI5IDcuNTI3NjkgMTAuMDI0MiA3LjUyNzY5IDEwLjEwOTJWMTkuMzEwNkM3LjUyNTE5IDE5Ljc3ODEgNy43NzUxOSAyMC4yMTE5IDguMTgxNDUgMjAuNDQzMUwxNy45MDU0IDI2LjA1N0wxNC41MzkxIDI4LjAwMDhDMTQuNTA1MyAyOC4wMjMzIDE0LjQ2MjggMjguMDI3IDE0LjQyNTMgMjguMDEwOEw2LjM3MjY2IDIzLjM1ODJDMi43OTM4MyAyMS4yODU2IDEuNTY2MzEgMTYuNzA2OCAzLjYyODg1IDEzLjEyMTdMMy42MzAxIDEzLjEyMDVaTTMxLjI4ODIgMTkuNTU2OUwyMS41NjQyIDEzLjk0MTdMMjQuOTMwNiAxMS45OTkyQzI0Ljk2NDMgMTEuOTc2NyAyNS4wMDY4IDExLjk3MjkgMjUuMDQ0MyAxMS45ODkyTDMzLjA5NyAxNi42MzhDMzYuNjgyMSAxOC43MDkzIDM3LjkxMDggMjMuMjk1NyAzNS44Mzk1IDI2Ljg4MDhDMzQuOTYzMyAyOC4zOTgzIDMzLjU4MzIgMjkuNTYwOCAzMS45Mzk1IDMwLjE2NThWMjAuNjg5NEMzMS45NDMyIDIwLjIyMTkgMzEuNjk0NSAxOS43ODk0IDMxLjI4OTQgMTkuNTU2OUgzMS4yODgyWk0zNC42MzgzIDE0LjUxNDJDMzQuNTc5NSAxNC40NzggMzQuNDc1OCAxNC40MTU1IDM0LjQwMiAxNC4zNzNMMjYuNDM2OCA5Ljc3Mjg5QzI2LjAzMzEgOS41MzY2NCAyNS41MzMxIDkuNTM2NjQgMjUuMTI4MSA5Ljc3Mjg5TDE1LjQwNDEgMTUuMzg4VjExLjUwMDRDMTUuNDAxNiAxMS40NjA0IDE1LjQyMDQgMTEuNDIxNyAxNS40NTE2IDExLjM5NjdMMjMuNTAzIDYuNzUxNThDMjcuMDg5NCA0LjY4Mjc5IDMxLjY3NDUgNS45MTQwNiAzMy43NDIgOS41MDE2NEMzNC42MTU4IDExLjAxNjcgMzQuOTMyIDEyLjc5MDUgMzQuNjM1OCAxNC41MTQySDM0LjYzODNaTTEzLjU3NDEgMjEuNDQzMUwxMC4yMDY1IDE5LjQ5OTRDMTAuMTcwMiAxOS40ODE5IDEwLjE0NjUgMTkuNDQ2OCAxMC4xNDE1IDE5LjQwNjhWMTAuMTA3OUMxMC4xNDQgNS45Njc4MSAxMy41MDI4IDIuNjEyNzQgMTcuNjQyOSAyLjYxNTI0QzE5LjM5NDIgMi42MTUyNCAyMS4wODkyIDMuMjMwMjUgMjIuNDM1NSA0LjM1MDI4QzIyLjM3NDMgNC4zODI3OCAyMi4yNjkzIDQuNDQxNTMgMjIuMTk5MiA0LjQ4NDAzTDE0LjIzNDEgOS4wODQxM0MxMy44MjY2IDkuMzE1MzggMTMuNTc2NiA5Ljc0Nzg5IDEzLjU3OTEgMTAuMjE2N0wxMy41NzQxIDIxLjQ0MDZWMjEuNDQzMVpNMTUuNDAyOSAxNy41MDA2TDE5LjczNDIgMTQuOTk5M0wyNC4wNjU1IDE3LjQ5OTNWMjIuNTAwN0wxOS43MzQyIDI1LjAwMDdMMTUuNDAyOSAyMi41MDA3VjE3LjUwMDZaIiBmaWxsPSIjN0Q3RDg3Ii8+Cjwvc3ZnPgo="},"displayName":"OpenAI Chat Model","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1179,"icon":"fa:code","name":"@n8n/n8n-nodes-langchain.outputParserStructured","codex":{"data":{"alias":["json","zod"],"resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/cluster-nodes/sub-nodes/n8n-nodes-langchain.outputparserstructured/"}]},"categories":["AI","Langchain"],"subcategories":{"AI":["Output Parsers"]}}},"group":"[\"transform\"]","defaults":{"name":"Structured Output Parser"},"iconData":{"icon":"code","type":"icon"},"displayName":"Structured Output Parser","typeVersion":1,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1310,"icon":"fa:robot","name":"@n8n/n8n-nodes-langchain.agentTool","codex":{"data":{"alias":["LangChain","Chat","Conversational","Plan and Execute","ReAct","Tools"],"categories":["AI","Langchain"],"subcategories":{"AI":["Tools"],"Tools":["Recommended Tools"]}}},"group":"[\"transform\"]","defaults":{"name":"AI Agent Tool","color":"#404040"},"iconData":{"icon":"robot","type":"icon"},"displayName":"AI Agent Tool","typeVersion":3,"nodeCategories":[{"id":25,"name":"AI"},{"id":26,"name":"Langchain"}]},{"id":1315,"icon":"fa:table","name":"n8n-nodes-base.dataTable","codex":{"data":{"alias":["data","table","knowledge","data table","table","sheet","database","data base","mysql","postgres","postgresql","airtable","supabase","noco","notion"],"details":"Data table","resources":{"primaryDocumentation":[{"url":"https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.datatable/"}]},"categories":["Core Nodes","Development"],"nodeVersion":"1.0","codexVersion":"1.0","subcategories":{"Core Nodes":["Helpers"]}}},"group":"[\"input\",\"transform\"]","defaults":{"name":"Data table"},"iconData":{"icon":"table","type":"icon"},"displayName":"Data table","typeVersion":1,"nodeCategories":[{"id":5,"name":"Development"},{"id":9,"name":"Core Nodes"}]}],"categories":[{"id":35,"name":"Document Extraction"},{"id":49,"name":"AI Summarization"}],"image":[]}}