{
  "name": "Resume screening & candidate routing with OpenAI, Jotform, and Google Sheets",
  "nodes": [
    {
      "id": "d549b930-1e35-4bcd-a7d7-8806c6990170",
      "name": "Extract Application Data",
      "type": "n8n-nodes-base.set",
      "position": [
        -2752,
        688
      ]
    },
    {
      "id": "01591f1c-25da-4d0a-b627-0814d817d785",
      "name": "Download Resume",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -2528,
        672
      ]
    },
    {
      "id": "3af3677e-0537-417e-9249-a51af94e4fe6",
      "name": "Process Resume",
      "type": "n8n-nodes-base.code",
      "position": [
        -2224,
        688
      ]
    },
    {
      "id": "0a82dda9-b144-41f5-8903-579947f536c8",
      "name": "AI Resume Parser",
      "type": "@n8n/n8n-nodes-langchain.openAi",
      "position": [
        -2032,
        688
      ]
    },
    {
      "id": "c071c207-e09d-4ca5-90b9-d4d300476dde",
      "name": "AI Candidate Screener",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -1424,
        720
      ]
    },
    {
      "id": "7e3e68f1-7ab2-42aa-811b-52bf2984c90b",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        -1456,
        976
      ]
    },
    {
      "id": "34f9050d-fac1-4501-8742-719d589e7d5c",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -1200,
        992
      ]
    },
    {
      "id": "8f0f2d89-2164-4f31-b6cb-b8e71ebbda57",
      "name": "Strong Yes?",
      "type": "n8n-nodes-base.if",
      "position": [
        -784,
        704
      ]
    },
    {
      "id": "867d5a96-aaaf-4bce-a9e7-a1a8e3737713",
      "name": "Maybe or Yes?",
      "type": "n8n-nodes-base.if",
      "position": [
        -784,
        944
      ]
    },
    {
      "id": "4b90f9bd-a0b3-42a2-8aa9-ef308563c1cb",
      "name": "Send Interview Invitation",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -192,
        544
      ]
    },
    {
      "id": "3f187791-5c7a-4292-a623-f7e005db0da2",
      "name": "Request Manager Review",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -512,
        800
      ]
    },
    {
      "id": "5dbe1e3b-b603-4e38-ac36-19e800f042c7",
      "name": "Send Rejection Email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -480,
        1104
      ]
    },
    {
      "id": "7e75f755-7d07-4a34-a91e-5a33ae27696b",
      "name": "Log to Hiring Database",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        336,
        784
      ]
    },
    {
      "id": "baadadfd-335e-44fb-84d0-0ef98335c76e",
      "name": "Sticky Note - Intake",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -3008,
        336
      ],
      "parameters": {
        "width": 640,
        "height": 576,
        "content": "## 📝 Application Intake\n\nCaptures job applications via Jotform and extracts all candidate data including resume.\n\n### What Happens Here\n- **Jotform** trigger receives application.\nCreate your form for"
      }
    },
    {
      "id": "54f7865d-5b0f-4dac-8f32-fcf7aeac882e",
      "name": "Sticky Note - Parsing",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2272,
        192
      ],
      "parameters": {
        "width": 562,
        "height": 724,
        "content": "## 🤖 AI Resume Analysis\n\nUses OpenAI to parse resume and extract structured information.\n\n### AI Tasks\n1. **Resume Parsing:** Extracts skills, experience, education, projects\n2. **Pattern Detection:**"
      }
    },
    {
      "id": "4ba29b67-1c31-4793-bed8-ac0f39033c30",
      "name": "Sticky Note - Screening",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1552,
        80
      ],
      "parameters": {
        "width": 500,
        "height": 1116,
        "content": "## 🎯 Intelligent Candidate Screening\n\nAI Agent evaluates candidates against job requirements with structured scoring.\n\n### Evaluation Criteria\n- **Skills Match:** Required vs preferred skills analysis"
      }
    },
    {
      "id": "efc3e4dc-a5eb-4b6a-9b24-e863af4838c5",
      "name": "Sticky Note - Routing",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -896,
        -96
      ],
      "parameters": {
        "width": 892,
        "height": 1388,
        "content": "## 🚦 Smart Routing & Actions\n\nAutomatically routes candidates based on AI evaluation and triggers appropriate workflows.\n\n### Route 1: Strong Yes (Score 85-100)\n✅ **Instant Actions:**\n- Slack alert to"
      }
    },
    {
      "id": "bde3090f-306e-47c0-96c1-5d2737952475",
      "name": "Sticky Note - Analytics",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        144,
        288
      ],
      "parameters": {
        "width": 496,
        "height": 672,
        "content": "## 📊 Hiring Analytics Hub\n\nAll applications logged to Google Sheets for comprehensive hiring analytics.\n\n### Tracked Metrics\n- Application volume by position\n- Average candidate scores\n- Time-to-hire "
      }
    },
    {
      "id": "48ef417e-9b90-4fc9-9693-09a0ed4c0e1d",
      "name": "Send a message",
      "type": "n8n-nodes-base.slack",
      "position": [
        -480,
        560
      ]
    },
    {
      "id": "b0ec920b-97b7-425e-a0fa-f30f91a70f31",
      "name": "Jotform Trigger",
      "type": "n8n-nodes-base.jotFormTrigger",
      "position": [
        -2960,
        656
      ]
    }
  ],
  "connections": {
    "Strong Yes?": {
      "main": [
        [
          {
            "node": "Send a message",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Maybe or Yes?": {
      "main": [
        [
          {
            "node": "Request Manager Review",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Send Rejection Email",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Process Resume": {
      "main": [
        [
          {
            "node": "AI Resume Parser",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send a message": {
      "main": [
        [
          {
            "node": "Send Interview Invitation",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download Resume": {
      "main": [
        [
          {
            "node": "Process Resume",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Jotform Trigger": {
      "main": [
        [
          {
            "node": "Extract Application Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Resume Parser": {
      "main": [
        [
          {
            "node": "AI Candidate Screener",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Candidate Screener",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Send Rejection Email": {
      "main": [
        [
          {
            "node": "Log to Hiring Database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Candidate Screener": {
      "main": [
        [
          {
            "node": "Strong Yes?",
            "type": "main",
            "index": 0
          },
          {
            "node": "Maybe or Yes?",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Request Manager Review": {
      "main": [
        [
          {
            "node": "Log to Hiring Database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Application Data": {
      "main": [
        [
          {
            "node": "Download Resume",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "AI Candidate Screener",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Send Interview Invitation": {
      "main": [
        [
          {
            "node": "Log to Hiring Database",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}