👉 n8n No Limits Access :

https://www.hostg.xyz/SHHAd

Hébergement VPS n8n | Automatisation sécurisée et évolutive

coupon -15% : DRFIRAS15

👉 Formation n8n en Français

Formation n8n en Français : Automatisation & Agents IA

coupon -20% : LANCEMENT : HERE


Introduction

This course lets you rebuild the workflow from scratch, node by node, live on camera. Every value you need (models, expressions, JSON bodies, Code node scripts) is in a copy-paste code block, so you never have to open the finished workflow.

What the workflow does: a job seeker submits a form with their preferences and resume. Apify scrapes fresh LinkedIn jobs, a free pre-filter drops duplicates and obvious mismatches, OpenAI screens and ranks the matches, and you receive one approval email listing the shortlist. Nothing is generated until you approve. For each approved job, OpenAI writes a tailored resume and cover letter (facts only, no fabrication) plus likely interview questions. DocRaptor turns them into PDFs, Gmail emails them to you, and Google Sheets logs each match.

Flow diagram

flowchart TD
  A["Job preferences (Form)"] --> B["Configuration (Set)"]
  B --> C["Build Apify input (Code)"]
  C --> D["Scrape LinkedIn jobs (HTTP)"]
  D --> E["Pre-filter and dedupe (Code)"]
  E --> F["Build screening prompt (Code)"]
  F --> G["Screen job fit (Agent)"]
  G --> H["Rank and keep top matches (Code)"]
  H --> I["Approve shortlist (Gmail send and wait)"]
  I --> J{"Proceed if approved (IF)"}
  J -->|declined| K["Stopped"]
  J -->|approved| L["Reload shortlist (Code)"]
  L --> M["Build tailoring prompts (Code)"]
  M --> N["Write resume JSON (Agent)"]
  N --> O["Render resume HTML (Code)"]
  O --> P["Resume PDF (DocRaptor)"]
  P --> Q["Write cover letter JSON (Agent)"]
  Q --> R["Render cover HTML (Code)"]
  R --> S["Cover PDF (DocRaptor)"]
  S --> T["Write interview prep (Agent)"]
  T --> U["Assemble email (Code)"]
  U --> V["Email tailored application (Gmail)"]
  U --> W["Log match to tracker (Google Sheets)"]

Prerequisites and credentials

<aside> 🔑

Create these 5 credentials in n8n before building. Never paste API keys directly into HTTP nodes.

</aside>

Credential (n8n name) Type Where to get it
OpenAi account openAiApi platform.openai.com → API keys → Create new secret key → paste in n8n.
Gmail account gmailOAuth2 n8n Gmail credential → Sign in with Google (OAuth).
Google Sheets account googleSheetsOAuth2Api n8n Google Sheets credential → Sign in with Google (OAuth).
Apify API httpHeaderAuth console.apify.com → Settings → Integrations/API tokens → copy token. In n8n create a Header Auth credential: Name = Authorization, Value = Bearer YOUR_TOKEN.
DocRaptor account httpBasicAuth docraptor.com → API key. Basic Auth: Username = your API key, Password = leave blank.

1. Job preferences (Form trigger)