Skip to main content

Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable

Workflow preview

Workflow preview
100%
Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

Who is this for? This workflow is designed for job seekers who want to automate their job application research and resume optimization. It's ideal for professionals who wa...

Best for

  • Personal Productivity automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.stickynote, @n8n/n8n-nodes-langchain.lmchatopenai, n8n-nodes-base.splitinbatches, n8n-nodes-base.code, n8n-nodes-base.cron, n8n-nodes-base.googlesheets, n8n-nodes-base.httprequest, n8n-nodes-base.if

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Ashish Kumar Swain.

Original n8n.io source

1.1 Workflow description

Title
Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable
Workflow name
Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable

Who is this for?

This workflow is designed for job seekers who want to automate their job application research and resume optimization. It's ideal for professionals who want to match their CVs to new job postings daily, improving the chance of landing interviews without manual work.

Use case

  • Problem: Manually searching for jobs, matching resumes, and updating application records is time-consuming and inefficient.

  • Use Case: Automatically fetches new job listings based on user preferences, scores them against the user's existing CV, generates a revamped CV tailored for each job, and stores everything neatly into an Airtable database for easy tracking.

What this workflow does?

  1. Fetches user job preferences from Google Sheets daily.
  2. Searches for jobs matching those preferences using Apify’s scraping.
  3. Filters job posts that are fresh (posted within 24-48 hours).
  4. Scores each job against the user’s current CV using an OpenAI agent.
  5. Generates a revamped CV tailored to each job.
  6. Stores the job listing, compatibility score, match reason, and revamped CV into Airtable for future use.

API Credentials Required

  • Google Sheets API Credentials — for reading user-defined job preferences.
  • Apify API Key — to scrape job postings (e.g., Indeed Scraper Actor).
  • OpenAI API Key — for AI scoring and CV enhancement.
  • Airtable API Key — for job listing and tracking.

Setup

  • Google Sheets: Store your job preferences (like titles, locations, etc.).

  • Apify API: Set up a scraper for LinkedIn, Indeed, or other job boards.

  • OpenAI API: Provide access to a GPT model (ideally GPT-4 Turbo) to handle CV scoring and revamping.

  • Airtable: Create two tables:

    • One for archived jobs (old jobs >48 hours).

    • One for current processed jobs with AI scores and revamped CVs.

      • Columns for Airtable: job_title,company,location,date_posted,job_type,description,link,compatibilityScore,matcReason,revampedCV,newCompatibilityScore,newMatchReason.

  • n8n: Deploy the full workflow with nodes for triggers, loops, API calls, parsing, and storage.

How to customize it for your needs

  • Edit Job Preferences: Add or update the fields in Google Sheets (Columns: job_title, job_location) to search.

  • Fine-tune AI Prompts: Adjust the scoring criteria (e.g., favor remote roles, leadership experience, certifications).

  • Customize CV Style: Configure the AI to generate shorter, more detailed, or industry-specific resumes.

  • Change Storage Destination: Replace Airtable with Notion, Google Sheets, a CRM system, or even send yourself Slack updates.

  • Expand Job Sources: Easily swap the job scraper to pull listings from your favorite niche job boards.

Why Use This Template?

  1. Saves 10+ hours/week on manual job search.
  2. Instantly tailor CVs to each application.
  3. Centralizes all data across Google Sheets and Airtable.
  4. Flexible — customize AI prompts, scoring logic, or expand to multiple users!

Need Assistance?

For setup guidance, customization, or business inquiries, Email: [email protected]

1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - Sticky Note2

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 2 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - OpenAI Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatOpenAi - lmChatOpenAi
Config choices
Version 1.2

Block 4 - Split Job Preferences

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 1

Block 5 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 6 - Job Extract with revamped scoring

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 7 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 8 - 🕒 Trigger: Daily Job Fetch

Type / Role
n8n-nodes-base.cron - cron
Config choices
Version 1

Block 9 - 📄 Fetch Job Preferences (Google Sheets)

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 2

Block 10 - 🔄 Loop: Search Jobs per Preference

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 11 - 🔍 Apify: Scrape Jobs

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 1

Block 12 - 🧹 Clean & Extract Job Data

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 13 - Filter: Recent Jobs (<48h)

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 14 - 🗂️ Archive: Old Jobs (Airtable)

Type / Role
n8n-nodes-base.airtable - airtable
Config choices
Version 2.1

Block 15 - 🔄 Loop: Score New Jobs

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 16 - 🤖 AI: Score CV vs Job

Type / Role
@n8n/n8n-nodes-langchain.agent - agent
Config choices
Version 1.7

Block 17 - 📄 Parse AI Score Output

Type / Role
n8n-nodes-base.code - code
Config choices
Version 2

Block 18 - 🔄 Loop: Generate CV Suggestions

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

Block 19 - ✍️ AI: Revamp CV Based on Job

Type / Role
@n8n/n8n-nodes-langchain.openAi - openAi
Config choices
Version 1.8

Block 20 - 🗂️ Save: Final Job Data (Airtable)

Type / Role
n8n-nodes-base.airtable - airtable
Config choices
Version 2.1

Block 21 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 22 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 23 - Sticky Note7

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 24 - Sticky Note8

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Showing the first 24 of 25 workflow blocks. Download the JSON for the full node graph.

3. Summary Table

Workflow Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable
Complexity advanced
Nodes 25
Categories Personal Productivity, Multimodal AI
Author Ashish Kumar Swain
Published 26 Apr 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/3724/3724.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Smart job search: resume scoring & tailoring with OpenAI, Apify, and Airtable do?

Who is this for? This workflow is designed for job seekers who want to automate their job application research and resume optimization. It's ideal for professionals who wa...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Personal Productivity, Multimodal AI use case.