Screen candidate CVs with Claude Sonnet, Google Drive, Google Sheets, and Gmail
Quick overview A candidate submits a CV to a webhook. One AI agent parses it and scores it against the job description, a deterministic rule turns that score into a recommendation, then the CV is filed in Drive, logged to Sheets, and the candidate gets an email.
How it works A webhook receives the CV plus candidate name, email, and the job ID applied for. Text is extracted from the file: PDF directly, DOCX through a Google Drive conversion. The matching job description is pulled from Google Sheets and combined with the CV text. One agent call on Claude Sonnet reads both together and returns a candidate profile plus a scored evaluation across required skills, experience, domain alignment, and nice-to-have, weighted by role category. A recommendation is computed in code from those scores: a required-skills floor first, then a threshold on the overall score. The CV is filed into the Shortlisted, Pending, or Do Not Proceed Drive folder, and the full record is logged to Sheets. A shortlist email is sent automatically, or a rejection draft is prepared for a human to review and send.
Setup Open the Config node and fill in all eight values: spreadsheet ID, results tab GID, three Drive folder IDs, a temp folder ID for DOCX conversion, company name, and HR email. Attach credentials: Google Sheets, Google Drive, Gmail, and OpenRouter. Create the Google Sheet with a Job Description tab keyed on job_id, and a results tab matching the columns written by Log to Sheets. Point your intake form at the webhook, sending candidate_name, candidate_email, applied_job_id, and the CV file as cv_file. Replace the YOUR COMPANY ADDRESS placeholder in the two email bodies.
Requirements Google Sheets, Google Drive, and Gmail credentials on one Workspace account OpenRouter API key with access to Claude Sonnet, or swap the Screening Model node for any provider you prefer
Customization Adjust the role-category weights or the recommendation thresholds directly in Build Submission Record, since both live in code rather than in the prompt Swap the Screening Model node for a cheaper or faster model Update the PRICING rate in Build Submission Record if your provider's cost per token changes
Additional info The prompt instructs the model to ignore name, age, gender, nationality, and other protected characteristics, and to score only on evidence found in the CV. This is a first-pass screening aid, not an automated hiring decision. The rejection path only ever drafts an email, so no candidate is declined without a human sending it.
Related Templates
AI Email Classifier & Auto-Delete for Gmail (SPAM/OFFER Cleaner)
This workflow is designed for freelancers, solopreneurs, and business owners who receive a high volume of irrelevant mes...
Generate Product Ad Copy & CTAs with GPT-4 for Slack and Airtable
⚡ AI Copywriter Pro: Instant Ad Copy & CTA Generator Transform product details into compelling marketing copy in second...
Auto-classify Gmail emails with AI and apply labels for inbox organization
Who is this for? Professionals and individuals who receive high volumes of emails, those who want to automatically organ...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments