Screen LinkedIn jobs and send tailored applications with Apify and OpenAI
Needs changesWhat this workflow does
This AI workflow has 27 nodes and runs when someone submits an n8n form (“Find and tailor jobs for me”). Along the way it connects OpenAI Chat Model, Gmail and Google Sheets. It also calls api.docraptor.com over HTTP.
How it runs
Trigger: When someone submits an n8n form (“Find and tailor jobs for me”).
- Configuration (Edit Fields (Set)): sets 11 fields: applicant_email, apify_actor, max_jobs…
- Build Apify input (Code): runs custom JavaScript code
- Scrape LinkedIn jobs (HTTP Request): calls an HTTP API (POST)
- Pre-filter and dedupe (Code): runs custom JavaScript code
- Build screening prompt (Code): runs custom JavaScript code
- Screen job fit (AI Agent): runs an AI agent, with model: Screening model
- Rank and keep top matches (Code): runs custom JavaScript code
- Approve shortlist (Gmail): send and wait for a reply
- Proceed if approved (If): checks a condition and branches into true / false
- Reload shortlist (Code): runs custom JavaScript code
…plus 11 more steps. See the full node list below.
Services it uses
HTTP calls to: api.docraptor.com
Before you upgrade to n8n 3.0
1 thing in this workflow is removed in n8n 3.0. Fix it before you upgrade:
- AI Agent v1 (old agent modes) in Screen job fit (v1.9), Write resume JSON (v1.9), Write cover letter JSON (v1.9)…: replace with Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent.
Rather not rewrite it? Many of these flows can be rebuilt in Make (free plan).
| Removed in 3.0 | Replace with |
|---|---|
| AI Agent v1 (old agent modes) Screen job fit (v1.9), Write resume JSON (v1.9), Write cover letter JSON (v1.9), Write interview prep (v1.9) | Latest AI Agent node (Tools Agent). For SQL Agent, use a Postgres or MySQL tool with a recent AI Agent. |
Nodes used (10)
- n8n Form Trigger
n8n-nodes-base.formTrigger - Edit Fields (Set)
n8n-nodes-base.set - Code
n8n-nodes-base.code - HTTP Request
n8n-nodes-base.httpRequest - AI Agent
@n8n/n8n-nodes-langchain.agent - OpenAI Chat Model
@n8n/n8n-nodes-langchain.lmChatOpenAi - Gmail
n8n-nodes-base.gmail - If
n8n-nodes-base.if - No Operation, do nothing
n8n-nodes-base.noOp - Google Sheets
n8n-nodes-base.googleSheets
From the author
Quick overview This workflow collects your job preferences via an n8n form, uses Apify to scrape LinkedIn job listings, and has OpenAI screen and rank them. After you approve a shortlist by Gmail, it generates tailored resume and cover-letter PDFs with…