Screen and rank CVs using Gmail, OpenAI, Airtable, and Slack
Ready for 3.0What this workflow does
This AI workflow has 21 nodes and runs on Gmail events (plus 2 other triggers). Along the way it connects Gmail, Google Drive, Airtable and OpenAI and 1 more.
How it runs
Trigger: On Gmail events (plus 2 other triggers).
- Check PDF File Type (If): checks a condition and branches into true / false
- Fetch Job Description (Airtable): search
- Fetch Weekly Pipeline Records (Airtable): search
- Extract PDF CV Text (Extract from File): extracts data from a file (pdf)
- Extract DOCX CV Text (Extract from File): extracts data from a file (text)
- Merge: merges the data from its input branches
- Calculate Digest Statistics (Code): runs custom JavaScript code
- LLM Parse CV (OpenAI): uses OpenAI
- LLM Candidate Scoring (OpenAI): uses OpenAI
- Post Weekly Digest to Slack (Slack): uses Slack
…plus 7 more steps. See the full node list below.
Services it uses
Before you upgrade to n8n 3.0
Nothing in this workflow is removed in n8n 3.0, so it should import and run after the upgrade.
- Still check Gmail Trigger below v1.4 runs as v1.4 (drafts skipped, max emails per poll) (Gmail Application Trigger).
Nodes used (13)
- Gmail Trigger
n8n-nodes-base.gmailTrigger - Google Drive Trigger
n8n-nodes-base.googleDriveTrigger - Extract from File
n8n-nodes-base.extractFromFile - Airtable
n8n-nodes-base.airtable - OpenAI
@n8n/n8n-nodes-langchain.openAi - Code
n8n-nodes-base.code - Merge
n8n-nodes-base.merge - Switch
n8n-nodes-base.switch - Slack
n8n-nodes-base.slack - Gmail
n8n-nodes-base.gmail - No Operation, do nothing
n8n-nodes-base.noOp - Schedule Trigger
n8n-nodes-base.scheduleTrigger - If
n8n-nodes-base.if
From the author
Quick overview This workflow screens CVs received via Gmail (or an optional Google Drive folder), extracts and parses resume text with OpenAI, scores candidates against a job description stored in Airtable, writes results to an Airtable pipeline, and posts…