Overview
This lesson is part of the n8n AI Automation - Zero to Hero course, Section: 6. AI-Powered Workflows.
Watch the video above for the full tutorial, or read the written guide below.
What is the AI Resume Screening workflow in n8n?
The AI Resume Screening workflow in n8n automates the end-to-end recruiter cycle: an n8n Form collects applicant details and a PDF resume, a parallel branch uploads the file to Google Drive while the main branch parses it with the Extract from File node, then two Information Extractor AI nodes pull structured personal and professional data from the raw text. A scoring step routes each candidate to a shortlist, a maybe sheet, or an archive.
How to build the AI Resume Screening workflow in n8n
The n8n Form node acts as the job application trigger. Add text fields for first name and last name, an email-type field, and a file upload field restricted to .pdf. Add a hidden field named "job code" with a static value such as 001 to tag which role the submission belongs to. The hidden field is invisible to applicants but flows into the workflow output, letting one workflow handle multiple job postings without duplication. Copy the form's production URL and embed it in your job posting so candidates apply directly through it.
The Form node feeds two parallel branches simultaneously: a Google Drive Upload node that saves the resume to a designated "resumes" folder, and an Extract from File node that converts the binary PDF into a plain-text JSON field named text. In the Google Drive node, build the file name dynamically by concatenating the job code, first name, and last name from the form output. In the Extract from File node, set the operation to "Extract from PDF" and point the input binary field at the resume upload field. Both branches run in parallel so file storage never delays evaluation.
Two Information Extractor cluster nodes transform the unstructured text field into structured JSON. The first node uses a JSON schema to extract personal information: full name, telephone, city, email, and LinkedIn URL, each with a plain-English description property. The second node uses the "from attribute descriptions" schema type to extract professional information: educational qualification, job history, skills, experience breakdown by role, most recent job title, and total years of experience, each attribute carrying a format instruction such as "summarize in 100 words" or "make a bulleted list." Attach one OpenAI Chat Model sub-node (GPT-4o mini) and share it across both cluster nodes. Add a system prompt to each node instructing the model to return "NA" for any attribute it cannot locate in the text.
Key Takeaways
- The n8n Form node's hidden field carries a job code (for example,
001) that is invisible to applicants and lets one workflow distinguish between multiple open roles without duplicating downstream nodes. - The Extract from File node converts an uploaded PDF resume to a plain-text
textfield in one step, requiring no external API call or third-party parser. - The Information Extractor node is an advanced AI cluster node that requires an attached language model and supports three schema modes: attribute descriptions (UI-driven, no JSON required), a JSON example, or a raw JSON schema with typed properties and descriptions.
- Splitting extraction into a personal-info node and a professional-info node feeds the LLM smaller, focused prompts per call and produces more accurate structured output than one large combined prompt.
- One OpenAI Chat Model sub-node attaches to multiple Information Extractor cluster nodes in the same workflow, avoiding credential duplication and keeping model configuration in a single place.
Related Lessons
- Lesson 36: AI Automation with n8n: Supercharge Your Workflows with OpenAI
- Lesson 37: AI Powered Email Assistant: Automate Your Inbox with n8n & OpenAI
- Lesson 38: AI Blog Writer
Next Steps
Continue your n8n journey with the full n8n AI Automation - Zero to Hero course.