{
  "workflow": {
    "id": 9697,
    "name": "Automate employee offboarding with GPT-4 analysis & Jotform exit interviews",
    "views": 62,
    "recentViews": 0,
    "totalViews": 62,
    "createdAt": "2025-10-15T10:28:26.152Z",
    "description": "Transform chaotic employee departures into secure, insightful offboarding experiences - achieving zero security breaches, 100% equipment recovery, and actionable retention insights from every exit interview.\n## What This Workflow Does\nRevolutionizes employee offboarding with AI-driven exit interview analysis and automated task orchestration:\n\n📝 Exit Interview Capture - Jotform collects resignation details, ratings, feedback, and equipment inventory\n🤖 AI Sentiment Analysis - Advanced AI analyzes exit interviews for retention insights, red flags, and patterns\n⚠️ Red Flag Detection - Automatically identifies serious issues (harassment, discrimination, ethics) for immediate escalation\n👤 Manager Intelligence - Flags management issues and provides coaching recommendations\n🔐 Access Revocation - Schedules automatic system access removal on last working day\n📦 Equipment Tracking - Generates personalized equipment return checklist for each employee\n📚 Knowledge Transfer - Assesses knowledge transfer risk and creates handover plan\n💰 Retention Analytics - Identifies preventable departures and competitive intelligence\n📧 Automated Notifications - Sends checklists to employees, action items to managers, IT requests\n📊 Boomerang Prediction - Calculates likelihood of rehire and maintains alumni relationships\n\n## Key Features\n\n1. AI Exit Interview Analysis: GPT-4 provides  2+ analytical dimensions including sentiment, preventability, and red flags\n2. Preventability Scoring: AI calculates 0-100% score on whether departure was preventable\n3. Red Flag Escalation: Automatic detection of harassment, discrimination, ethics, or legal concerns\n4. Manager Performance Insights: Identifies management issues requiring coaching or intervention\n5. Sentiment Analysis: Analyzes tone, emotions, and overall sentiment from qualitative feedback\n6. Competitive Intelligence: Tracks where employees go and what competitors offer\nKnowledge Transfer Risk Assessment: Evaluates complexity and criticality of knowledge handover\n7. Boomerang Probability: Predicts likelihood (0-100%) of employee returning in future\n8. Department Trend Analysis: Identifies systemic issues in specific teams or departments\n9. Compensation Benchmarking: Flags compensation competitiveness issues\nRetention Recommendations: AI-generated actionable improvements prioritized by impact\n10. Equipment Tracking: Automatic inventory of laptops, phones, cards, and other company property\n\n## Perfect For\n\n1. Growing Companies: 50-5,000 employees with monthly turnover requiring structured offboarding\n2. Tech Companies: Protecting IP and system access with departing engineers and developers\n3. Healthcare Organizations: Compliance-critical offboarding with HIPAA and patient data access\n4. Financial Services: Regulated industries requiring audit trails and secure access revocation\n5. Professional Services: Knowledge-intensive businesses where brain drain is costly\n6. Retail & Hospitality: High-turnover environments needing efficient, consistent offboarding\n7. Remote-First Companies: Distributed teams requiring coordinated equipment recovery\n\n## What You'll Need\nRequired Integrations\n\n1. Jotform - Exit interview and resignation form (free tier works)\nCreate your form for free on [Jotform using this link](https://www.jotform.com/?partner=mediajade)\n\n2. OpenAI API - GPT-4 for AI exit interview analysis (~$0.20-0.50 per exit interview)\n\n3. Gmail - Automated notifications to employees, managers, IT, and HR\n\n4. Google Sheets - Exit interview database and retention analytics\n\n## Quick Start\n\n1. Import Template - Copy JSON and import into n8n\n2. Add OpenAI Credentials - Set up OpenAI API key (GPT-4 for best insights)\n3. Create Jotform Exit Interview - Build comprehensive form with these sections:\n4. Configure Gmail - Add Gmail OAuth2 credentials\n5. Setup Google Sheets:\nCreate spreadsheet with \"Exit_Interviews\" sheet\nReplace YOUR_GOOGLE_SHEET_ID in workflow\nColumns will auto-populate on first submission\n\n## Customization Options\n\n1. AI Prompt Refinement: Tailor analysis for your industry, company culture, and specific concerns\n2. Red Flag Categories: Customize what constitutes a red flag for your organization\nEquipment Types: Add specialized equipment (tools, uniforms, parking passes)\n3. Access Systems: Integrate with your specific IT systems for automated revocation\nKnowledge Transfer Templates: Create role-specific handover checklists\n4. Manager Notifications: Add more details based on department or seniority\n5. Exit Interview Questions: Add industry-specific or company-specific questions\n6. Retention Focus Areas: Adjust AI to focus on specific retention priorities\n7. Rehire Workflows: Add automatic alumni network invitations for boomerang candidates\n8. Severance Processing: Add nodes for severance agreement generation and tracking\n9. Reference Check Process: Include reference policy notifications\n10. Benefits COBRA: Automate COBRA benefits notification workflows\n\n## Expected Results\n\n1. Zero security breaches from lingering access - automated revocation on last day\n2. 100% equipment recovery - automated tracking and follow-up\n3. 3x faster offboarding - 30 minutes vs 2 hours of manual coordination\n4. 85% actionable insights from exit interviews vs 20% with manual reviews\n5. 60% improvement in identifying preventable turnover\n6. 90% manager compliance with knowledge transfer (vs 40% manual)\n7. 50% reduction in repeat management issues through coaching identification\n8. 40% increase in boomerang rehires through positive offboarding experience\n9. Complete audit trail for legal compliance and investigations\n10. Department-level insights identifying systemic retention issues\n\n## Use Cases\n1. Tech Startup (100 Employees, High Growth)\nEngineer resigns to join competitor. AI detects compensation issue (40% below market), flags manager micromanagement concerns, and identifies preventable departure (preventability: 85%). HR immediately initiates compensation review for engineering team, schedules manager coaching, and retains 3 other engineers considering leaving. Access to codebase revoked automatically on last day. Boomerang probability: 70% - maintains relationship for future recruiting.\n2. Healthcare System (500 Nurses)\nNurse leaves citing burnout. AI identifies systemic staffing issues in ER department affecting 15% of departures. Flags potential HIPAA violation concern requiring investigation. Automatically revokes EHR access on final day. Equipment recovery (badge, pager, scrubs) tracked with 100% success. Exit insights lead to ER staffing model changes, reducing nurse turnover by 30%.\n3. Financial Services Firm\nCompliance officer departs. AI red flags potential ethics concern requiring immediate investigation. Legal team notified within minutes. Knowledge transfer flagged as \"critical risk\" due to regulatory expertise. Detailed 30-day handover plan auto-generated. All system access revoked immediately. Complete audit trail maintained for regulatory review. Investigation reveals process gap, not ethical issue, preventing regulatory exposure.\n4. Retail Chain (2,000 Employees)\nStore manager exits. AI aggregates insights across 50 recent retail departures, identifying district manager as common thread (manager rating consistently 2/5). Regional HR intervenes with district manager coaching. Equipment return (keys, registers codes, uniforms) automated via checklist. 95% equipment recovery vs previous 60%. Sentiment trends show seasonal staff prefer flexible scheduling - policy updated chain-wide.\nRemote Software Company\n5. Developer in different timezone resigns. Automated offboarding coordinates across 3 time zones: access revoked at EOD local time, equipment return label emailed internationally, knowledge transfer scheduled with overlap hours. AI detects \"career growth\" as preventable issue - company implements career ladder framework, reducing senior developer attrition by 45%.\n\n## Pro Tips\n\n1. Timing Matters: Send Jotform link 1 week before last day for honest feedback (not on exit day)\n2. Anonymity Option: Consider anonymous feedback for more candid responses (separate form)\n3. Benchmark Scoring: After 50+ exits, calculate your company's average preventability score\n4. Manager Patterns: Track exits by manager to identify coaching needs early\n5. Department Trends: Monthly reviews of AI insights by department for systemic issues\n6. Compensation Data: Cross-reference \"compensation issue\" flags with market data\n7. Boomerang Program: Create formal alumni network for high-probability boomerang candidates\n8. Equipment Deposits: Consider requiring deposits for easier equipment recovery\n9. Exit Interview Training: Train managers on how to act on AI insights constructively\n10. Legal Review: Have legal team review red flag escalation categories quarterly\n11. Continuous Improvement: Use AI recommendations to create quarterly retention action plans\n12. Stay Interviews: Use exit interview insights to inform \"stay interview\" questions for current employees\n\n## Learning Resources\nThis workflow demonstrates advanced n8n automation patterns:\n\n1. AI Agents with complex structured output for multi-dimensional analysis,\nSentiment analysis and natural language processing\n2. Conditional escalation based on severity and red flags\n3. Multi-stakeholder notifications with role-specific messaging\n4. Risk assessment algorithms for knowledge transfer and preventability\n5. Pattern recognition across qualitative feedback\n6. Equipment inventory management with dynamic list generation\n7. Compliance automation for access revocation scheduling\n8. Predictive analytics for boomerang probability\n\nPerfect for learning AI-powered HR automation and organizational analytics!\n📊 Workflow Architecture\n📝 Jotform Exit Interview Submission\n    ↓\n🧾 Parse Offboarding Data\n    ↓\n🤖 AI Exit Interview Analysis (GPT-4)\n    │   ├─ Retention analysis (preventability scoring)\n    │   ├─ Sentiment analysis (tone, emotions)\n    │   ├─ Manager performance evaluation\n    │   ├─ Department insights\n    │   ├─ Compensation benchmarking\n    │   ├─ Knowledge transfer risk assessment\n    │   ├─ Competitor intelligence\n    │   ├─ Red flag detection\n    │   ├─ Boomerang probability\n    │   └─ Action item generation\n    ↓\n🔗 Extract AI Analysis (JSON)\n    ↓\n🧩 Merge Exit Analysis with Data\n    │   ├─ Calculate days until last day\n    │   ├─ Build equipment checklist\n    │   └─ Assess urgency levels\n    ↓\n⚠️ Has Red Flags?\n    ├─ TRUE → 🚨 Send Red Flag Alert (HR Director/Legal)\n    │              ↓\n    └─ FALSE → 📧 Send Manager Action Items\n                   ↓\n               ✉️ Send Employee Checklist\n                   ↓\n               🔐 Send IT Offboarding Request\n                   ↓\n               📊 Log to Google Sheets\n\n\nReady to transform employee offboarding? Import this template and turn departures into retention insights while maintaining security and professionalism. Every exit becomes a learning opportunity! 🚪✨\nQuestions or customization needs? The workflow includes detailed sticky notes explaining each AI analysis component and routing decision.",
    "workflow": {
      "meta": {
        "instanceId": "277842713620d9f5554de3b1518b865a152c8c4db680008bd8aec536fc18b4a8",
        "templateCredsSetupCompleted": true
      },
      "nodes": [
        {
          "id": "6d7688d5-8162-40d8-a707-9c95343e5e3d",
          "name": "Parse Offboarding Data",
          "type": "n8n-nodes-base.code",
          "position": [
            -1344,
            160
          ],
          "parameters": {
            "jsCode": "const formData = $input.first().json;\n\nreturn {\n  json: {\n    offboardingId: formData.submissionID || 'OFF-' + Date.now(),\n    submissionDate: new Date().toISOString(),\n    employeeName: formData.employeeName || formData.q3_employeeName,\n    employeeEmail: formData.employeeEmail || formData.q4_employeeEmail,\n    employeeId: formData.employeeId || formData.q5_employeeId,\n    department: formData.department || formData.q6_department,\n    position: formData.position || formData.q7_position,\n    manager: formData.manager || formData.q8_manager,\n    managerEmail: formData.managerEmail || formData.q9_managerEmail,\n    lastWorkingDay: formData.lastWorkingDay || formData.q10_lastWorkingDay,\n    resignationReason: formData.resignationReason || formData.q11_resignationReason,\n    newEmployer: formData.newEmployer || formData.q12_newEmployer || 'Not disclosed',\n    willingToReturn: formData.willingToReturn || formData.q13_willingToReturn || 'Maybe',\n    overallSatisfaction: formData.overallSatisfaction || formData.q14_overallSatisfaction || '3',\n    managerRating: formData.managerRating || formData.q15_managerRating || '3',\n    workEnvironmentRating: formData.workEnvironmentRating || formData.q16_workEnvironmentRating || '3',\n    compensationFair: formData.compensationFair || formData.q17_compensationFair || 'Somewhat',\n    careerGrowth: formData.careerGrowth || formData.q18_careerGrowth || 'Limited',\n    wouldRecommend: formData.wouldRecommend || formData.q19_wouldRecommend || 'Maybe',\n    whatWorkedWell: formData.whatWorkedWell || formData.q20_whatWorkedWell || '',\n    improvementAreas: formData.improvementAreas || formData.q21_improvementAreas || '',\n    reasonForLeaving: formData.reasonForLeaving || formData.q22_reasonForLeaving || '',\n    additionalFeedback: formData.additionalFeedback || formData.q23_additionalFeedback || '',\n    hasLaptop: formData.hasLaptop || formData.q24_hasLaptop || 'no',\n    laptopSerialNumber: formData.laptopSerialNumber || formData.q25_laptopSerialNumber || '',\n    hasMobile: formData.hasMobile || formData.q26_hasMobile || 'no',\n    mobileNumber: formData.mobileNumber || formData.q27_mobileNumber || '',\n    hasKeyCard: formData.hasKeyCard || formData.q28_hasKeyCard || 'no',\n    hasCreditCard: formData.hasCreditCard || formData.q29_hasCreditCard || 'no',\n    otherEquipment: formData.otherEquipment || formData.q30_otherEquipment || '',\n    replacementName: formData.replacementName || formData.q31_replacementName || 'TBD',\n    replacementEmail: formData.replacementEmail || formData.q32_replacementEmail || '',\n    criticalProjects: formData.criticalProjects || formData.q33_criticalProjects || '',\n    documentationLocation: formData.documentationLocation || formData.q34_documentationLocation || '',\n    keyContacts: formData.keyContacts || formData.q35_keyContacts || '',\n    status: 'initiated'\n  }\n};"
          },
          "typeVersion": 2
        },
        {
          "id": "29cfc4d5-2cff-444e-ab0f-756ccc0476aa",
          "name": "AI Exit Interview Analysis",
          "type": "@n8n/n8n-nodes-langchain.agent",
          "position": [
            -1104,
            240
          ],
          "parameters": {
            "text": "=You are an expert HR analyst. Analyze this exit interview:\n\n**Employee:** {{ $json.employeeName }} - {{ $json.position }} ({{ $json.department }})\n**Manager:** {{ $json.manager }}\n**Last Day:** {{ $json.lastWorkingDay }}\n**Reason:** {{ $json.resignationReason }}\n**New Employer:** {{ $json.newEmployer }}\n\n**Ratings:**\n- Overall Satisfaction: {{ $json.overallSatisfaction }}/5\n- Manager: {{ $json.managerRating }}/5\n- Environment: {{ $json.workEnvironmentRating }}/5\n- Compensation Fair: {{ $json.compensationFair }}\n- Career Growth: {{ $json.careerGrowth }}\n- Would Recommend: {{ $json.wouldRecommend }}\n- Willing to Return: {{ $json.willingToReturn }}\n\n**Feedback:**\nWorked Well: {{ $json.whatWorkedWell }}\nImprovements: {{ $json.improvementAreas }}\nLeaving Reason: {{ $json.reasonForLeaving }}\nAdditional: {{ $json.additionalFeedback }}\n\nProvide JSON analysis:\n{\n  \"retentionAnalysis\": {\"flightRisk\": \"voluntary|pushout|retirement\", \"primaryReason\": \"compensation|career|management|culture\", \"preventable\": true|false, \"preventabilityScore\": 0-100, \"reasoning\": \"\"},\n  \"sentimentAnalysis\": {\"overallSentiment\": \"positive|neutral|negative\", \"sentimentScore\": 0-100, \"keyEmotions\": [], \"toneDescription\": \"\"},\n  \"managerPerformance\": {\"managerIssue\": true|false, \"managementConcerns\": [], \"managerActionRequired\": true|false, \"managerCoaching\": \"\"},\n  \"departmentInsights\": {\"departmentIssues\": [], \"culturalConcerns\": [], \"processImprovements\": [], \"teamImpact\": \"\"},\n  \"compensationInsights\": {\"compensationIssue\": true|false, \"marketCompetitiveness\": \"below|at|above\", \"benefitsAdequate\": true|false, \"recommendedAdjustment\": \"\"},\n  \"retentionRecommendations\": [{\"recommendation\": \"\", \"priority\": \"critical|high|medium\", \"targetAudience\": \"\", \"expectedImpact\": \"\"}],\n  \"boomerangPotential\": {\"likelyToReturn\": true|false, \"returnProbability\": 0-100, \"rehireRecommendation\": \"strongly_recommend|recommend|neutral\", \"rehireNotes\": \"\"},\n  \"knowledgeTransferRisk\": {\"criticalKnowledgeRisk\": \"low|medium|high\", \"documentationStatus\": \"excellent|good|poor\", \"transferComplexity\": \"simple|moderate|complex\", \"transferPlan\": []},\n  \"competitorIntelligence\": {\"competitorMoving\": true|false, \"competitorName\": \"\", \"competitorAdvantages\": [], \"competitiveThreat\": \"low|medium|high\"},\n  \"redFlags\": {\"hasRedFlags\": true|false, \"flaggedIssues\": [], \"requiresInvestigation\": true|false, \"urgency\": \"immediate|high|low\", \"escalationRequired\": true|false},\n  \"actionItems\": [{\"action\": \"\", \"owner\": \"\", \"deadline\": \"\", \"priority\": \"critical|high|medium\"}],\n  \"executiveSummary\": \"\",\n  \"hrPriority\": 1-5\n}",
            "options": {
              "systemMessage": "You are an expert HR analyst specializing in employee retention and organizational development."
            },
            "promptType": "define",
            "hasOutputParser": true
          },
          "typeVersion": 1.6
        },
        {
          "id": "e0705b20-98fb-4cc9-8158-8b714e6397bf",
          "name": "Extract AI Analysis",
          "type": "n8n-nodes-base.set",
          "position": [
            -752,
            112
          ],
          "parameters": {
            "options": {},
            "assignments": {
              "assignments": [
                {
                  "id": "aiAnalysis",
                  "name": "aiAnalysis",
                  "type": "string",
                  "value": "={{ $json.output }}"
                }
              ]
            }
          },
          "typeVersion": 3.3
        },
        {
          "id": "86beba39-71ae-4d75-b0b6-73fa0ddc8372",
          "name": "Merge Exit Analysis",
          "type": "n8n-nodes-base.code",
          "position": [
            -512,
            224
          ],
          "parameters": {
            "jsCode": "const offboardingData = $input.first().json;\nconst aiAnalysisRaw = offboardingData.aiAnalysis;\n\nlet aiAnalysis;\ntry {\n  aiAnalysis = JSON.parse(aiAnalysisRaw);\n} catch (e) {\n  aiAnalysis = {\n    retentionAnalysis: {flightRisk: 'voluntary', primaryReason: 'personal', preventable: false, preventabilityScore: 30, reasoning: 'Personal reasons'},\n    sentimentAnalysis: {overallSentiment: 'neutral', sentimentScore: 50, keyEmotions: ['professional'], toneDescription: 'Professional'},\n    managerPerformance: {managerIssue: false, managementConcerns: [], managerActionRequired: false, managerCoaching: 'None'},\n    departmentInsights: {departmentIssues: [], culturalConcerns: [], processImprovements: [], teamImpact: 'Minimal'},\n    compensationInsights: {compensationIssue: false, marketCompetitiveness: 'at', benefitsAdequate: true, recommendedAdjustment: 'None'},\n    retentionRecommendations: [],\n    boomerangPotential: {likelyToReturn: true, returnProbability: 50, rehireRecommendation: 'recommend', rehireNotes: 'Good performer'},\n    knowledgeTransferRisk: {criticalKnowledgeRisk: 'medium', documentationStatus: 'good', transferComplexity: 'moderate', transferPlan: ['Document processes']},\n    competitorIntelligence: {competitorMoving: false, competitorName: 'Unknown', competitorAdvantages: [], competitiveThreat: 'low'},\n    redFlags: {hasRedFlags: false, flaggedIssues: [], requiresInvestigation: false, urgency: 'low', escalationRequired: false},\n    actionItems: [],\n    executiveSummary: 'Standard voluntary departure.',\n    hrPriority: 3\n  };\n}\n\nconst lastDay = new Date(offboardingData.lastWorkingDay);\nconst today = new Date();\nconst daysUntilLastDay = Math.ceil((lastDay - today) / (1000 * 60 * 60 * 24));\n\nconst equipmentList = [];\nif (offboardingData.hasLaptop === 'yes') equipmentList.push('Laptop: ' + offboardingData.laptopSerialNumber);\nif (offboardingData.hasMobile === 'yes') equipmentList.push('Mobile: ' + offboardingData.mobileNumber);\nif (offboardingData.hasKeyCard === 'yes') equipmentList.push('Key Card');\nif (offboardingData.hasCreditCard === 'yes') equipmentList.push('Corporate Card');\nif (offboardingData.otherEquipment) equipmentList.push('Other: ' + offboardingData.otherEquipment);\n\nreturn {\n  json: {\n    ...offboardingData,\n    daysUntilLastDay: daysUntilLastDay,\n    equipmentList: equipmentList,\n    equipmentCount: equipmentList.length,\n    flightRisk: aiAnalysis.retentionAnalysis.flightRisk,\n    primaryReason: aiAnalysis.retentionAnalysis.primaryReason,\n    preventable: aiAnalysis.retentionAnalysis.preventable,\n    preventabilityScore: aiAnalysis.retentionAnalysis.preventabilityScore,\n    retentionReasoning: aiAnalysis.retentionAnalysis.reasoning,\n    overallSentiment: aiAnalysis.sentimentAnalysis.overallSentiment,\n    sentimentScore: aiAnalysis.sentimentAnalysis.sentimentScore,\n    keyEmotions: aiAnalysis.sentimentAnalysis.keyEmotions,\n    toneDescription: aiAnalysis.sentimentAnalysis.toneDescription,\n    managerIssue: aiAnalysis.managerPerformance.managerIssue,\n    managementConcerns: aiAnalysis.managerPerformance.managementConcerns,\n    managerActionRequired: aiAnalysis.managerPerformance.managerActionRequired,\n    managerCoaching: aiAnalysis.managerPerformance.managerCoaching,\n    departmentIssues: aiAnalysis.departmentInsights.departmentIssues,\n    culturalConcerns: aiAnalysis.departmentInsights.culturalConcerns,\n    processImprovements: aiAnalysis.departmentInsights.processImprovements,\n    teamImpact: aiAnalysis.departmentInsights.teamImpact,\n    compensationIssue: aiAnalysis.compensationInsights.compensationIssue,\n    marketCompetitiveness: aiAnalysis.compensationInsights.marketCompetitiveness,\n    benefitsAdequate: aiAnalysis.compensationInsights.benefitsAdequate,\n    salaryRecommendation: aiAnalysis.compensationInsights.recommendedAdjustment,\n    retentionRecommendations: aiAnalysis.retentionRecommendations,\n    likelyToReturn: aiAnalysis.boomerangPotential.likelyToReturn,\n    returnProbability: aiAnalysis.boomerangPotential.returnProbability,\n    rehireRecommendation: aiAnalysis.boomerangPotential.rehireRecommendation,\n    rehireNotes: aiAnalysis.boomerangPotential.rehireNotes,\n    knowledgeRisk: aiAnalysis.knowledgeTransferRisk.criticalKnowledgeRisk,\n    documentationStatus: aiAnalysis.knowledgeTransferRisk.documentationStatus,\n    transferComplexity: aiAnalysis.knowledgeTransferRisk.transferComplexity,\n    transferPlan: aiAnalysis.knowledgeTransferRisk.transferPlan,\n    movingToCompetitor: aiAnalysis.competitorIntelligence.competitorMoving,\n    competitorName: aiAnalysis.competitorIntelligence.competitorName,\n    competitorAdvantages: aiAnalysis.competitorIntelligence.competitorAdvantages,\n    competitiveThreat: aiAnalysis.competitorIntelligence.competitiveThreat,\n    hasRedFlags: aiAnalysis.redFlags.hasRedFlags,\n    flaggedIssues: aiAnalysis.redFlags.flaggedIssues,\n    requiresInvestigation: aiAnalysis.redFlags.requiresInvestigation,\n    flagUrgency: aiAnalysis.redFlags.urgency,\n    escalationRequired: aiAnalysis.redFlags.escalationRequired,\n    actionItems: aiAnalysis.actionItems,\n    executiveSummary: aiAnalysis.executiveSummary,\n    hrPriority: aiAnalysis.hrPriority\n  }\n};"
          },
          "typeVersion": 2
        },
        {
          "id": "e1eef5b4-5a69-4820-9d13-e6558a9cf570",
          "name": "Has Red Flags?",
          "type": "n8n-nodes-base.if",
          "position": [
            -272,
            320
          ],
          "parameters": {
            "options": {},
            "conditions": {
              "options": {
                "leftValue": "",
                "caseSensitive": true,
                "typeValidation": "strict"
              },
              "combinator": "or",
              "conditions": [
                {
                  "id": "condition1",
                  "operator": {
                    "type": "boolean",
                    "operation": "true"
                  },
                  "leftValue": "={{ $json.hasRedFlags }}",
                  "rightValue": true
                }
              ]
            }
          },
          "typeVersion": 2
        },
        {
          "id": "ec33fccb-989c-4a04-8966-b0fb7f202a60",
          "name": "Send Red Flag Alert",
          "type": "n8n-nodes-base.gmail",
          "position": [
            -144,
            144
          ],
          "webhookId": "965ee19b-d0c0-45d9-aefa-bf82b4963f11",
          "parameters": {
            "sendTo": "user@example.com",
            "message": "=🚨 CRITICAL EXIT INTERVIEW ALERT\n\n**Employee:** {{ $json.employeeName }}\n**Position:** {{ $json.position }}\n**Department:** {{ $json.department }}\n**Manager:** {{ $json.manager }}\n**Last Day:** {{ $json.lastWorkingDay }}\n\n⚠️ **RED FLAGS:**\n{{ $json.flaggedIssues.map((flag, i) => `${i + 1}. ${flag.toUpperCase()}`).join('\\n') }}\n\n**Urgency:** {{ $json.flagUrgency.toUpperCase() }}\nRequires Investigation: {{ $json.requiresInvestigation ? 'YES' : 'NO' }}\nEscalation: {{ $json.escalationRequired ? 'YES - Executive Level' : 'HR Level' }}\n\n**AI Summary:**\n{{ $json.executiveSummary }}\n\n**Primary Reason:** {{ $json.primaryReason.replace('_', ' ').toUpperCase() }}\nPreventable: {{ $json.preventable ? 'YES (' + $json.preventabilityScore + '%)' : 'NO' }}\n\n{{ $json.managerIssue ? 'MANAGER ISSUE DETECTED: ' + $json.managementConcerns.join(', ') : '' }}\n\n**Ratings:**\n- Satisfaction: {{ $json.overallSatisfaction }}/5\n- Manager: {{ $json.managerRating }}/5\n- Environment: {{ $json.workEnvironmentRating }}/5\n\n**Immediate Actions:**\n{{ $json.actionItems.filter(item => item.priority === 'critical').map((item, i) => `${i + 1}. ${item.action} (${item.owner})`).join('\\n') }}\n\nConfidential - Handle Immediately\n\n---\nAI-Powered Exit Interview System",
            "options": {},
            "subject": "=🚨 URGENT: Exit Interview Red Flags - {{ $json.employeeName }}"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "f8168232-a4f2-4194-8697-b709e1b2345b",
          "name": "Send Employee Checklist",
          "type": "n8n-nodes-base.gmail",
          "position": [
            368,
            560
          ],
          "webhookId": "7bff5bb9-913c-4d54-b6e5-9f0051d03e3f",
          "parameters": {
            "sendTo": "={{ $('Jotform Trigger').item.json['Employee Email'] }}",
            "message": "=Hi {{ $('Jotform Trigger').item.json['Employee Name'].first }},\n\nThank you for your service. Here's your offboarding checklist:\n\n**Last Working Day:** {{ $('Jotform Trigger').item.json['Last Working Day '] }}\n\n📦 **EQUIPMENT TO RETURN:**\n\n\nReturn by: {{ $('Jotform Trigger').item.json['Last Working Day '] }}\nShip to: IT Department, [Company Address]\n\n🔑 **ACCESS DEACTIVATION:**\nAll access will be automatically revoked on {{ $('Jotform Trigger').item.json['Last Working Day '] }}:\n• Email account\n• Company systems\n• Building access\n• VPN\n\n📄 **KNOWLEDGE TRANSFER:**\n{{ $json.replacementName !== 'TBD' ? 'Your replacement: ' + $json.replacementName : 'Replacement TBD' }}\n\nPlease ensure:\n• Project documentation updated\n• Passwords transferred to manager\n• Critical contacts documented\n• Ongoing work status documented\n\n💰 **FINAL PAYCHECK:**\n• Date: {{ $('Jotform Trigger').item.json['Last Working Day '] }}\n• Unused PTO: Included\n• COBRA info: Mailed in 14 days\n• 401(k) rollover: Separate email\n\n📧 **BEFORE YOUR LAST DAY:**\n1. Return all equipment\n2. Forward personal emails\n3. Download personal files\n4. Complete knowledge transfer\n\nQuestions? Contact hr@company.com\n\n{{ $json.willingToReturn === 'Yes' ? 'We hope to work together again someday!' : 'Best wishes in your next role!' }}\n\nHR Team",
            "options": {},
            "subject": "=Offboarding Checklist - Equipment & Access"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "8b39327d-4763-4903-938d-fa05d810ac65",
          "name": "Send Manager Action Items",
          "type": "n8n-nodes-base.gmail",
          "position": [
            336,
            256
          ],
          "webhookId": "1b42fa79-4f3f-4bee-b4a1-961106e7bcb5",
          "parameters": {
            "sendTo": "={{ $('Jotform Trigger').item.json['Manager Email'] }}",
            "message": "=Hi {{ $('Jotform Trigger').item.json.Manager }} ,\n\n{{ $('Jotform Trigger').item.json['Employee Name'].first }} is leaving. Here's what you need to do:\n\n**Employee:** {{ $('Jotform Trigger').item.json['Employee Name'].first }}\n**Last Day:** {{ $('Jotform Trigger').item.json['Last Working Day '] }}\n**Days Remaining:** {{ $json.daysUntilLastDay }}\n**Reason:** {{ $('Jotform Trigger').item.json.resignationReason }}\n\n🤖 **AI INSIGHTS:**\n{{ $json.executiveSummary }}\n\n**Preventability:** {{ $json.preventable ? 'YES (' + $json.preventabilityScore + '%)' : 'NO' }}\n**Primary Reason:** {{ $json.primaryReason.replace('_', ' ') }}\n\n{{ $json.managerIssue ? '⚠️ MANAGEMENT FEEDBACK: ' + $json.managementConcerns.join(', ') + '\\nHR will follow up.' : '' }}\n\n**Ratings:**\n- Satisfaction: {{ $('Jotform Trigger').item.json.overallSatisfaction }}/5\n- Your Rating: {{ $('Jotform Trigger').item.json.managerRating }}/5\n- Environment: {{ $('Jotform Trigger').item.json.workEnvironmentRating }}/5\n\n📋 **YOUR ACTION ITEMS:**\n\n**1. Knowledge Transfer ({{ $json.knowledgeRisk.toUpperCase() }} RISK)**\nComplexity: {{ $json.transferComplexity }}\nReplacement: {{ $('Jotform Trigger').item.json.replacementName }}\n\nPlan:\n{{ $json.transferPlan.map((step, i) => `${i + 1}. ${step}`).join('\\n') }}\n\n**2. Critical Projects:**\n{{ $json.criticalProjects || 'Please identify with employee' }}\n\n**3. Documentation:**\nLocation: {{ $json.documentationLocation || 'TBD' }}\n\n**4. Key Contacts:**\n{{ $json.keyContacts || 'TBD' }}\n\n**5. Schedule Transfer Sessions:**\nDeadline: {{ $('Jotform Trigger').item.json['Last Working Day '] }}\n{{ $json.daysUntilLastDay < 10 ? '⚠️ URGENT - Limited time!' : '' }}\n\n**6. Team Communication:**\nAnnounce departure and transition plan\n\n**7. Access Review:**\nConfirm all shared passwords documented\n\n{{ $json.compensationIssue ? '💰 COMPENSATION NOTE: Exit interview indicated comp concerns. Consider for team retention.' : '' }}\n\n**Retention Recommendations:**\n{{ $json.retentionRecommendations.slice(0, 3).map((rec, i) => `${i + 1}. ${rec.recommendation} (${rec.priority})`).join('\\n') }}\n\n**Boomerang Potential:** {{ $json.returnProbability }}%\n{{ $json.likelyToReturn ? 'Keep door open - they may return!' : '' }}\n\nContact HR with questions.\n\nHR Team",
            "options": {},
            "subject": "=Action Required: Offboarding -  {{ $('Jotform Trigger').item.json['Employee Name'].first }}"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "0cf711cd-fa20-466d-8975-0f5bc7e2712b",
          "name": "Send IT Offboarding",
          "type": "n8n-nodes-base.gmail",
          "position": [
            512,
            64
          ],
          "webhookId": "37c95c12-43c4-476c-ac58-7bd040c26369",
          "parameters": {
            "sendTo": "user@example.com",
            "message": "=IT Offboarding Request\n\n**Employee:** {{ $json.employeeName }}\n**ID:** {{ $json.employeeId }}\n**Email:** {{ $json.employeeEmail }}\n**Department:** {{ $json.department }}\n**Last Day:** {{ $json.lastWorkingDay }}\n**Days Until:** {{ $json.daysUntilLastDay }}\n\n🔒 **ACCESS TO REVOKE ON {{ $json.lastWorkingDay }}:**\n• Email account ({{ $json.employeeEmail }})\n• All company systems\n• VPN access\n• Building access card\n• Any admin privileges\n\n📦 **EQUIPMENT TO RECOVER:**\n{{ $json.equipmentList.length > 0 ? $json.equipmentList.map((item, i) => `${i + 1}. ${item}`).join('\\n') : 'No equipment listed' }}\n\n📧 **EMAIL FORWARDING:**\nForward to: {{ $json.manager }} ({{ $json.managerEmail }})\nDuration: 30 days\n\n💾 **DATA TRANSFER:**\n• Backup employee files\n• Transfer to: {{ $json.replacementName !== 'TBD' ? $json.replacementName + ' (' + $json.replacementEmail + ')' : $json.manager }}\n• Document location: {{ $json.documentationLocation || 'TBD' }}\n\n📋 **CHECKLIST:**\n[ ] Revoke all system access\n[ ] Disable email account\n[ ] Forward emails to manager\n[ ] Backup user files\n[ ] Transfer critical data\n[ ] Deactivate VPN\n[ ] Disable badge access\n[ ] Confirm equipment return\n[ ] Remove from distribution lists\n[ ] Update org chart systems\n\n{{ $json.daysUntilLastDay < 7 ? '⚠️ URGENT - Less than 1 week!' : '' }}\n\nSchedule access revocation for EOD {{ $json.lastWorkingDay }}\n\nHR Team",
            "options": {},
            "subject": "=IT Offboarding: {{ $json.employeeName }} - {{ $json.lastWorkingDay }}"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "faae0f0c-322c-4415-8360-d73bb308584d",
          "name": "Log to Google Sheets",
          "type": "n8n-nodes-base.googleSheets",
          "position": [
            848,
            240
          ],
          "parameters": {
            "columns": {
              "value": {},
              "schema": [
                {
                  "id": "Employee Name",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Employee Name",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Employee Email",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Employee Email",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Address",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Address",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Start Date",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Start Date",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Position",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Position",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Department",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Department",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Manager Email",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Manager Email",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Employee Type",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Employee Type",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Laptop Type",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Laptop Type",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Software Access",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Software Access",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Phone Needed",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Phone Needed",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Experience Level",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Experience Level",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Emergency Contact",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Emergency Contact",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Shirt Size",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Shirt Size",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "Dietary Restrictions",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "Dietary Restrictions",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "id",
                  "type": "string",
                  "display": true,
                  "removed": false,
                  "required": false,
                  "displayName": "id",
                  "defaultMatch": true,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "threadId",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "threadId",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                },
                {
                  "id": "labelIds",
                  "type": "string",
                  "display": true,
                  "required": false,
                  "displayName": "labelIds",
                  "defaultMatch": false,
                  "canBeUsedToMatch": true
                }
              ],
              "mappingMode": "autoMapInputData",
              "matchingColumns": [
                "id"
              ],
              "attemptToConvertTypes": false,
              "convertFieldsToString": false
            },
            "options": {},
            "operation": "appendOrUpdate",
            "sheetName": {
              "__rl": true,
              "mode": "list",
              "value": "gid=0",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1pwrTx5GXB7mAg5eJQ9q0I9tsgSI9keZ2W4iuTZi7wF8/edit#gid=0",
              "cachedResultName": "Sheet1"
            },
            "documentId": {
              "__rl": true,
              "mode": "list",
              "value": "1pwrTx5GXB7mAg5eJQ9q0I9tsgSI9keZ2W4iuTZi7wF8",
              "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1pwrTx5GXB7mAg5eJQ9q0I9tsgSI9keZ2W4iuTZi7wF8/edit?usp=drivesdk",
              "cachedResultName": "Employee Onboarding"
            }
          },
          "credentials": {
            "googleSheetsOAuth2Api": {
              "id": "credential-id",
              "name": "googleSheetsOAuth2Api Credential"
            }
          },
          "typeVersion": 4.4
        },
        {
          "id": "71b9e82f-c9d8-4b33-a415-0696f80142c9",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1680,
            48
          ],
          "parameters": {
            "height": 240,
            "content": "📩 **TRIGGER**\nCaptures resignation\nand exit interview data\nvia Jotform\nCreate your form for free on [Jotform using this link](https://www.jotform.com/?partner=mediajade)"
          },
          "typeVersion": 1
        },
        {
          "id": "797528ee-89eb-4bde-97ed-99a0af58a3f1",
          "name": "Sticky Note1",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1408,
            48
          ],
          "parameters": {
            "height": 240,
            "content": "🧾 **PARSE**\nNormalizes all\noffboarding data"
          },
          "typeVersion": 1
        },
        {
          "id": "bee1b348-6fc4-4660-a812-5854140d48b2",
          "name": "Sticky Note2",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1120,
            48
          ],
          "parameters": {
            "height": 640,
            "content": "🤖 **AI ANALYSIS**\nAnalyzes exit interview\nfor retention insights,\nred flags, and trends"
          },
          "typeVersion": 1
        },
        {
          "id": "71087237-b7f3-4489-aa99-0cbdd3c1c845",
          "name": "Sticky Note3",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -864,
            0
          ],
          "parameters": {
            "height": 240,
            "content": "🔗 **EXTRACT**\nExtracts structured\nJSON from AI"
          },
          "typeVersion": 1
        },
        {
          "id": "d1a2d1bb-275f-4462-a880-41aeba329d84",
          "name": "Sticky Note4",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -608,
            80
          ],
          "parameters": {
            "height": 240,
            "content": "🧩 **MERGE**\nCombines AI insights\nwith offboarding data\nand calculates metrics"
          },
          "typeVersion": 1
        },
        {
          "id": "c41d3858-26fb-4b6b-b8fb-a2a9fa9d129c",
          "name": "Sticky Note5",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -352,
            96
          ],
          "parameters": {
            "width": 352,
            "height": 416,
            "content": "⚠️ **RED FLAG CHECK**\nRoutes serious issues\nto HR/Legal immediately"
          },
          "typeVersion": 1
        },
        {
          "id": "1d71ecc7-886c-462b-8dc0-b4380655160d",
          "name": "Sticky Note6",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            32,
            16
          ],
          "parameters": {
            "width": 640,
            "height": 736,
            "content": "📧 **NOTIFICATIONS**\nSends automated emails to:\n• Employee (checklist)\n• Manager (action items)\n• IT (access revocation)\n• HR (alerts if red flags)"
          },
          "typeVersion": 1
        },
        {
          "id": "864a4f22-2ed4-433e-9846-d16ab2aac05e",
          "name": "Sticky Note7",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            768,
            96
          ],
          "parameters": {
            "height": 240,
            "content": "📊 **LOGGING**\nComplete audit trail\nwith AI insights for\nretention analytics"
          },
          "typeVersion": 1
        },
        {
          "id": "1f9c4d10-9a3a-4578-9844-3eca072b5554",
          "name": "OpenAI Chat Model",
          "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
          "position": [
            -1120,
            464
          ],
          "parameters": {
            "model": {
              "__rl": true,
              "mode": "list",
              "value": "gpt-4.1-mini"
            },
            "options": {}
          },
          "credentials": {
            "openAiApi": {
              "id": "credential-id",
              "name": "openAiApi Credential"
            }
          },
          "typeVersion": 1.2
        },
        {
          "id": "032e0843-0db5-4d76-869e-a10f9905fcf0",
          "name": "Jotform Trigger",
          "type": "n8n-nodes-base.jotFormTrigger",
          "position": [
            -1632,
            192
          ],
          "webhookId": "employee-offboarding",
          "parameters": {
            "form": "252852702090453"
          },
          "credentials": {
            "jotFormApi": {
              "id": "credential-id",
              "name": "jotFormApi Credential"
            }
          },
          "typeVersion": 1
        }
      ],
      "pinData": {
        "Jotform Trigger": [
          {
            "Manager": "me",
            "Position": "manager",
            "hasLaptop": "",
            "hasMobile": "",
            "Department": "IT",
            "Shirt Size": "",
            "Laptop Type": "hp",
            "employee Id": "223",
            "New Employer": "mo",
            "Phone Needed": "35915",
            "careerGrowth": "nil",
            "Employee Name": {
              "last": "Singhal",
              "first": "Deepanshi"
            },
            "Employee Type": "Full Type",
            "Manager Email": "Deep@gmail.com",
            "managerRating": "2",
            "Employee Email": "deepashirig@gmail.com",
            "whatWorkedWell": "nothing",
            "wouldRecommend": "no",
            "Software Access": "070249",
            "replacementName": "",
            "willingToReturn": "never",
            "Experience Level": "mid level",
            "compensationFair": "2",
            "criticalProjects": "",
            "improvementAreas": "",
            "reasonForLeaving": "",
            "replacementEmail": "",
            "Emergency Contact": {
              "full": ""
            },
            "Last Working Day ": {
              "day": "18",
              "year": "2025",
              "month": "10"
            },
            "resignationReason": "Due t o limited growth and poor organization culture",
            "additionalFeedback": "",
            "laptopSerialNumber": "",
            "overallSatisfaction": "1",
            "Dietary Restrictions": "",
            "documentationLocation": "",
            "workEnvironmentRating": "1"
          }
        ]
      },
      "connections": {
        "Has Red Flags?": {
          "main": [
            [
              {
                "node": "Send Red Flag Alert",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Send Manager Action Items",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Jotform Trigger": {
          "main": [
            [
              {
                "node": "Parse Offboarding Data",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "OpenAI Chat Model": {
          "ai_languageModel": [
            [
              {
                "node": "AI Exit Interview Analysis",
                "type": "ai_languageModel",
                "index": 0
              }
            ]
          ]
        },
        "Extract AI Analysis": {
          "main": [
            [
              {
                "node": "Merge Exit Analysis",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Merge Exit Analysis": {
          "main": [
            [
              {
                "node": "Has Red Flags?",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send IT Offboarding": {
          "main": [
            [
              {
                "node": "Log to Google Sheets",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Red Flag Alert": {
          "main": [
            [
              {
                "node": "Send Manager Action Items",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Parse Offboarding Data": {
          "main": [
            [
              {
                "node": "AI Exit Interview Analysis",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Employee Checklist": {
          "main": [
            [
              {
                "node": "Send IT Offboarding",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Send Manager Action Items": {
          "main": [
            [
              {
                "node": "Send Employee Checklist",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "AI Exit Interview Analysis": {
          "main": [
            [
              {
                "node": "Extract AI Analysis",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 20,
      "nodeTypes": {
        "n8n-nodes-base.if": {
          "count": 1
        },
        "n8n-nodes-base.set": {
          "count": 1
        },
        "n8n-nodes-base.code": {
          "count": 2
        },
        "n8n-nodes-base.gmail": {
          "count": 4
        },
        "n8n-nodes-base.stickyNote": {
          "count": 8
        },
        "n8n-nodes-base.googleSheets": {
          "count": 1
        },
        "n8n-nodes-base.jotFormTrigger": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.agent": {
          "count": 1
        },
        "@n8n/n8n-nodes-langchain.lmChatOpenAi": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Jitesh Dugar",
      "username": "jiteshdugar",
      "bio": "AI Automation Specialist - OpenAI, CRM & Automation Expert with a solid understanding of various tools that include Zapier, Make, Zoho CRM, Hubspot, Google Sheets, Airtable, Pipedrive, Google Analytics, and more.",
      "verified": true,
      "links": [
        "https://www.linkedin.com/in/jiteshdugar"
      ],
      "avatar": "https://gravatar.com/avatar/edaa3abb99806b0586dced559d0a5417f24a507e7c4464a63960f0638a4b1b90?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 18,
        "icon": "file:googleSheets.svg",
        "name": "n8n-nodes-base.googleSheets",
        "codex": {
          "data": {
            "alias": [
              "CSV",
              "Sheet",
              "Spreadsheet",
              "GS"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/love-at-first-sight-ricardos-n8n-journey/",
                  "icon": "❤️",
                  "label": "Love at first sight: Ricardo’s n8n journey"
                },
                {
                  "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/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/supercharging-your-conference-registration-process-with-n8n/",
                  "icon": "🎫",
                  "label": "Supercharging your conference registration process with n8n"
                },
                {
                  "url": "https://n8n.io/blog/creating-triggers-for-n8n-workflows-using-polling/",
                  "icon": "⏲",
                  "label": "Creating triggers for n8n workflows using polling"
                },
                {
                  "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/migrating-community-metrics-to-orbit-using-n8n/",
                  "icon": "📈",
                  "label": "Migrating Community Metrics to Orbit using n8n"
                },
                {
                  "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/your-business-doesnt-need-you-to-operate/",
                  "icon": " 🖥️",
                  "label": "Hey founders! Your business doesn't need you to operate"
                },
                {
                  "url": "https://n8n.io/blog/how-honest-burgers-use-automation-to-save-100k-per-year/",
                  "icon": "🍔",
                  "label": "How Honest Burgers Use Automation to Save $100k per year"
                },
                {
                  "url": "https://n8n.io/blog/how-a-digital-strategist-uses-n8n-for-online-marketing/",
                  "icon": "💻",
                  "label": "How a digital strategist uses n8n for online marketing"
                },
                {
                  "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-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/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.googlesheets/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Data & Storage",
              "Productivity"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"input\",\"output\"]",
        "defaults": {
          "name": "Google Sheets"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI2MCI+PGcgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNS42OSAxIDUyIDE3LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0OC4yOTMgNjBIMTIuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDkgNTYuMzEyVjQuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTIuNzA3IDF6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM1LjY5IDEgNTIgMTcuMjI1SDM5LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzkuMjExIDE3LjIyNSA1MiAyMi40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTIwLjEyIDMxLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMS42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzEuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjxwYXRoIGZpbGw9IiMyOEI0NDYiIGQ9Ik0zNC42OSAwIDUxIDE2LjIyNXYzOS4wODdhMy42NyAzLjY3IDAgMCAxLTEuMDg0IDIuNjFBMy43IDMuNyAwIDAgMSA0Ny4yOTMgNTlIMTEuNzA3YTMuNyAzLjcgMCAwIDEtMi42MjMtMS4wNzhBMy42NyAzLjY3IDAgMCAxIDggNTUuMzEyVjMuNjg4YTMuNjcgMy42NyAwIDAgMSAxLjA4NC0yLjYxQTMuNyAzLjcgMCAwIDEgMTEuNzA3IDB6Ii8+PHBhdGggZmlsbD0iIzZBQ0U3QyIgZD0iTTM0LjY5IDAgNTEgMTYuMjI1SDM4LjM5N2MtMi4wNTQgMC0zLjcwNy0xLjgyOS0zLjcwNy0zLjg3MnoiLz48cGF0aCBmaWxsPSIjMjE5QjM4IiBkPSJNMzguMjExIDE2LjIyNSA1MSAyMS40OHYtNS4yNTV6Ii8+PHBhdGggZmlsbD0iI0ZGRiIgZD0iTTE5LjEyIDMwLjk3NWMwLS44MTcuNjYyLTEuNDc1IDEuNDgzLTEuNDc1aDE3Ljc5NGMuODIxIDAgMS40ODIuNjU4IDEuNDgyIDEuNDc1djE1LjQ4N2MwIC44MTgtLjY2MSAxLjQ3NS0xLjQ4MiAxLjQ3NUgyMC42MDNhMS40NzYgMS40NzYgMCAwIDEtMS40ODItMS40NzRWMzAuOTc0em0yLjIyNSAxLjQ3NWg2LjY3MnYyLjIxMmgtNi42NzJ6bTAgNS4xNjJoNi42NzJ2Mi4yMTNoLTYuNjcyem0wIDUuMTYzaDYuNjcydjIuMjEyaC02LjY3MnptOS42MzgtMTAuMzI1aDYuNjcydjIuMjEyaC02LjY3MnptMCA1LjE2Mmg2LjY3MnYyLjIxM2gtNi42NzJ6bTAgNS4xNjNoNi42NzJ2Mi4yMTJoLTYuNjcyeiIvPjwvZz48L3N2Zz4="
        },
        "displayName": "Google Sheets",
        "typeVersion": 5,
        "nodeCategories": [
          {
            "id": 3,
            "name": "Data & Storage"
          },
          {
            "id": 4,
            "name": "Productivity"
          }
        ]
      },
      {
        "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": 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": 227,
        "icon": "file:jotform.svg",
        "name": "n8n-nodes-base.jotFormTrigger",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/trigger-nodes/n8n-nodes-base.jotformtrigger/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/jotform/"
                }
              ]
            },
            "categories": [
              "Communication"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "Jotform Trigger"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNSAyOCI+PHBhdGggaWQ9ImpvdGZvcm0tbG9nb21hcmstZmlyc3QiIGZpbGw9IiNGRjYxMDAiIGQ9Ik0xOS4yOTQgMy45MzRhMy4zNDEgMy4zNDEgMCAwIDEgNC43MjcgMCAzLjM0NCAzLjM0NCAwIDAgMSAwIDQuNzI4bC0xMS44MTcgMTEuODJhMy4zNDEgMy4zNDEgMCAwIDEtNC43MjYgMCAzLjM0NCAzLjM0NCAwIDAgMSAwLTQuNzI3bDExLjgxNi0xMS44MloiPjwvcGF0aD48cGF0aCBpZD0iam90Zm9ybS1sb2dvbWFyay1zZWNvbmQiIGZpbGw9IiMwMDk5RkYiIGQ9Ik05LjI1Ljk4YTMuMzQ0IDMuMzQ0IDAgMCAxIDQuNzI3IDQuNzI4bC04LjI3MSA4LjI3NGEzLjM0MiAzLjM0MiAwIDAgMS00LjcyNyAwIDMuMzQ0IDMuMzQ0IDAgMCAxIDAtNC43MjlMOS4yNS45OFoiPjwvcGF0aD48cGF0aCBpZD0iam90Zm9ybS1sb2dvbWFyay10aGlyZCIgZmlsbD0iI0ZGQjYyOSIgZD0iTTE4LjcwNCAxNy41MjdhMy4zNDQgMy4zNDQgMCAwIDEgNC43MjYgNC43MjhsLTQuNzI2IDQuNzI5YTMuMzQyIDMuMzQyIDAgMSAxLTQuNzI3LTQuNzI4bDQuNzI3LTQuNzI5WiI+PC9wYXRoPjxwYXRoIGlkPSJqb3Rmb3JtLWxvZ29tYXJrLWZvdXJ0aCIgZmlsbD0iIzBBMTU1MSIgZD0iTTEuNjcxIDI4aDQuNjY3Yy43NDUgMCAxLjExOC0uOS41OTEtMS40MjdMMS40MjYgMjEuMDdDLjkgMjAuNTQyIDAgMjAuOTE1IDAgMjEuNjU5djQuNjdDMCAyNy4yNTEuNzQ4IDI4IDEuNjcxIDI4WiI+PC9wYXRoPjwvc3ZnPg=="
        },
        "displayName": "Jotform Trigger",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          }
        ]
      },
      {
        "id": 356,
        "icon": "file:gmail.svg",
        "name": "n8n-nodes-base.gmail",
        "codex": {
          "data": {
            "alias": [
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "resources": {
              "generic": [
                {
                  "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/supercharging-your-conference-registration-process-with-n8n/",
                  "icon": "🎫",
                  "label": "Supercharging your conference registration process with 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-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/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/your-business-doesnt-need-you-to-operate/",
                  "icon": " 🖥️",
                  "label": "Hey founders! Your business doesn't need you to operate"
                },
                {
                  "url": "https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/",
                  "icon": "💪",
                  "label": "Using Automation to Boost Productivity in the Workplace"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.gmail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Gmail"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMTkzIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZmlsbD0iIzQyODVGNCIgZD0iTTU4LjE4MiAxOTIuMDVWOTMuMTRMMjcuNTA3IDY1LjA3NyAwIDQ5LjUwNHYxMjUuMDkxYzAgOS42NTggNy44MjUgMTcuNDU1IDE3LjQ1NSAxNy40NTV6Ii8+PHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTE5Ny44MTggMTkyLjA1aDQwLjcyN2M5LjY1OSAwIDE3LjQ1NS03LjgyNiAxNy40NTUtMTcuNDU1VjQ5LjUwNWwtMzEuMTU2IDE3LjgzNy0yNy4wMjYgMjUuNzk4eiIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im01OC4xODIgOTMuMTQtNC4xNzQtMzguNjQ3IDQuMTc0LTM2Ljk4OUwxMjggNjkuODY4bDY5LjgxOC01Mi4zNjQgNC42NyAzNC45OTItNC42NyA0MC42NDRMMTI4IDE0NS41MDR6Ii8+PHBhdGggZmlsbD0iI0ZCQkMwNCIgZD0iTTE5Ny44MTggMTcuNTA0VjkzLjE0TDI1NiA0OS41MDRWMjYuMjMxYzAtMjEuNTg1LTI0LjY0LTMzLjg5LTQxLjg5LTIwLjk0NXoiLz48cGF0aCBmaWxsPSIjQzUyMjFGIiBkPSJtMCA0OS41MDQgMjYuNzU5IDIwLjA3TDU4LjE4MiA5My4xNFYxNy41MDRMNDEuODkgNS4yODZDMjQuNjEtNy42NiAwIDQuNjQ2IDAgMjYuMjN6Ii8+PC9zdmc+"
        },
        "displayName": "Gmail",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "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": 834,
        "icon": "file:code.svg",
        "name": "n8n-nodes-base.code",
        "codex": {
          "data": {
            "alias": [
              "cpde",
              "Javascript",
              "JS",
              "Python",
              "Script",
              "Custom Code",
              "Function"
            ],
            "details": "The Code node allows you to execute JavaScript in your workflow.",
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers",
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Code"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="
        },
        "displayName": "Code",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "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"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 17,
        "name": "HR"
      },
      {
        "id": 49,
        "name": "AI Summarization"
      }
    ],
    "image": []
  }
}