Screen job applicants with Gemini AI: Jotform to Notion hiring pipeline
Ready for 3.0Ready for 3.0. This template uses no nodes that n8n 3.0 removes. No removed nodes, versions or helpers found. Static check, last run 2026-10-19.
Nodes used (12)
- Jotform Trigger
n8n-nodes-base.jotFormTrigger - Google Gemini Chat Model
@n8n/n8n-nodes-langchain.lmChatGoogleGemini - Structured Output Parser
@n8n/n8n-nodes-langchain.outputParserStructured - HTTP Request
n8n-nodes-base.httpRequest - Extract from File
n8n-nodes-base.extractFromFile - Merge
n8n-nodes-base.merge - Gmail
n8n-nodes-base.gmail - Slack
n8n-nodes-base.slack - AI Agent
@n8n/n8n-nodes-langchain.agent - Notion
n8n-nodes-base.notion - If
n8n-nodes-base.if - No Operation, do nothing
n8n-nodes-base.noOp
What it does
Stop drowning in job applications. This workflow transforms your hiring process from a manual, time-consuming data-entry task into an automated, intelligent screening system. When a candidate applies via your Jotform, this workflow automatically: 1. Downloads their PDF resume (even from private links). 2. Extracts the text from the resume and reads their cover letter. 3. Compares the application to the Notion job description using Gemini AI. 4. Generates an "AI Fit Score" (0-100) and a concise summary. 5. Filters out low-scoring applicants. 6. Creates a new, fully detailed candidate page in your Notion database, linked to the correct job. 7. Instantly alerts your hiring team on Slack with the candidate's score and summary. 8. Sends an automated confirmation email to the candidate. Features Triggers on New Jotform Submissions: Kicks off the moment a candidate clicks "Apply Now." Handles Private Files: Securely downloads private resume files from Jotform using your API key. PDF Text Extraction: Automatically reads the text from any uploaded PDF resume. Deep AI Analysis: Uses Gemini AI to compare the candidate's resume and cover letter against the specific job description from Notion. Relational Database Linking: Automatically links the new candidate to the correct "Open Position" page in Notion. Automated Quality Filtering: An IF node stops low-scoring candidates from cluttering your database. Multi-Channel Communication: Provides instant feedback to your team (Slack) and the candidate (Email). Nodes Used 🟣 Jotform Trigger (Jotform Trigger) ✉️ Gmail (Send Confirmation Email) ⬇️ HTTP Request (Download Resume PDF) 📄 Extract From File (Read Resume Text) 🔍 Notion (Find Job in Notion) 🖇️ Merge (Combine Data) 🧠 AI Agent (AI Candidate Analysis) ❓ IF (Score > 40?) ➕ Notion (Create Candidate in Notion) 📣 Slack (Alert Hiring Team) 🚫 No Operation, do nothing (Ignore (Score < 40)) ----- How to use this template This template requires manual setup due to Jotform's unique Question IDs (QIDs). Please follow these steps carefully. ⚠️ CRITICAL WARNING ON JOTFORM QIDs To get the file URL, this template requires you to turn "Resolve Data" OFF in the Jotform Trigger. This means the workflow uses Question IDs (e.g., q7positionApplying, q8typeA8) instead of human-readable labels. Your QIDs will be different from the ones in this template. You must run the trigger once, find your QIDs, and replace them in the downstream nodes. ----- 1. Set up Jotform and Notion (See "More Information" section below) Before you start, create your Jotform form and your two Notion databases ("Open Positions" and "Candidates") as described at the end of this document. 2. Configure the Jotform Trigger Node Credentials: Connect your Jotform account. Form: Select your "Job Application" form. IMPORTANT: In the node Parameters, find the "Resolve Data" option and turn it OFF. Test: Run a test by submitting your form. Look at the output and write down your unique QIDs for each field (e.g., q3fullName, q7positionApplying, q8typeA8, uploadYour). 3. Configure the Download Resume PDF (HTTP Request) Node Credentials: This node needs your Jotform API Key. Authentication: Query Auth Credential: Create new Header Auth credentials. Name: Jotform API Key (Query) Parameter Name: apiKey Parameter Value: Paste your Jotform API Key here URL: Replace uploadYour in the expression {{ $('Jotform Trigger').item.json.uploadYour0 }} with the QID for your file upload field. 4. Configure the Find Job in Notion Node (See the "Required Notion Setup" section at the end of this document for detailed instructions on how to build this database) Credentials: Connect your Notion credentials. Database ID: Select your "Open Positions" database. Filter Value: Replace q7positionApplying in the expression {{ $('Jotform Trigger').item.json.q7positionApplying }} with the QID for your "Position" dropdown. 5. Configure the AI Candidate Analysis Node Credentials: Connect your Google AI (Gemini) credentials