Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

AI Job Application Agent

Automating the repetitive job application workflow with AI

WhatsApp → Job Understanding → Resume Matching → Google Form → Automatic Submission

n8n Google Gemini WhatsApp Google Drive JavaScript


📌 Overview

AI Job Application Agent is an AI-powered automation workflow built with n8n that streamlines repetitive job application tasks through a simple WhatsApp-based interaction.

A user can forward a job opportunity to WhatsApp. The system extracts the job requirements, checks eligibility, searches available resumes, evaluates their relevance, selects the strongest matching resume, understands the application form, collects the required answers through WhatsApp, and submits the form automatically.

The goal is simple:

Reduce repetitive manual work involved in applying to multiple jobs while keeping the user interaction as simple as WhatsApp.


🎯 Problem Statement

Applying to multiple jobs often involves the same repetitive sequence:

Read Job
   ↓
Check Eligibility
   ↓
Find Resume
   ↓
Choose the Best Resume
   ↓
Open Application Form
   ↓
Read Questions
   ↓
Enter Details
   ↓
Submit

Doing this repeatedly can consume significant time and can lead to missed requirements or inconsistent applications.

This project explores how an AI-driven workflow can automate these repetitive steps while keeping the candidate in control of the information they provide.


💡 Solution

The agent converts the manual workflow into an automated pipeline:

                  WhatsApp
                      │
                      ▼
               Job Understanding
                      │
                      ▼
               Eligibility Check
                      │
                      ▼
               Resume Search
                      │
                      ▼
               Resume Matching
                      │
                      ▼
                Best Resume
                      │
                      ▼
               Google Form
                      │
                      ▼
              Dynamic Parsing
                      │
                      ▼
               WhatsApp Questions
                      │
                 User Answers
                      │
                      ▼
               Answer Mapping
                      │
                      ▼
               Form Submission
                      │
                      ▼
               Confirmation

✨ Key Features

🧠 AI Job Information Extraction

Gemini extracts structured information from a forwarded job message, including:

  • Company
  • Job / internship role
  • Job description
  • Required skills
  • Eligibility criteria
  • Education requirements
  • Graduation / batch requirements
  • Experience requirements
  • Location
  • Stipend / salary / CTC
  • Application deadline
  • Application URL
  • Employment type

The extraction is restricted to information explicitly present in the job message.


Intelligent Resume Selection

The workflow searches the candidate's Google Drive for available resumes and filters the results for PDF resumes.

Each resume is analyzed against the extracted job description.

The matching process considers:

  • Overall match score
  • Matching technical skills
  • Missing / weak skills
  • Relevant experience and projects
  • Education and eligibility
  • Overall suitability

The resumes are sorted by their match score and the highest-scoring resume is selected.


Dynamic Google Form Understanding

The workflow does not depend on a hardcoded list of application questions.

When a Google Form URL is detected, the system retrieves the form data and dynamically extracts:

  • Questions
  • Question numbers
  • Question IDs
  • Form entry IDs
  • Field information

This allows the same workflow to handle different Google Forms without manually configuring every question.


WhatsApp-Based Conversation

The user does not need a separate dashboard.

The same WhatsApp interaction is used throughout the process:

User forwards job
        ↓
AI processes job
        ↓
Questions sent to WhatsApp
        ↓
User replies with numbered answers
        ↓
Answers are mapped to form fields
        ↓
Application submitted
        ↓
Confirmation sent

The workflow stores pending application state so later WhatsApp messages can be associated with the correct application.


Automated Form Submission

User responses are mapped to the corresponding Google Forms entry IDs and submitted programmatically.

After submission, the application state is updated and the user receives a WhatsApp confirmation.


Architecture

Core Components

Component Role
n8n Workflow orchestration
WhatsApp User interaction and job input
Google Gemini Job extraction and resume matching
Google Drive Resume storage and search
Google Forms Application destination
HTTP Request Form retrieval and submission
JavaScript Parsing, transformation and mapping
n8n Data Table Pending application state

🔄 End-to-End Workflow

Phase 1 — Job Processing

WhatsApp Trigger
      ↓
Pending Application Check
      ↓
Gemini Job Extraction
      ↓
Job Validation
      ↓
Eligibility

Phase 2 — Resume Matching

Google Drive Resume Search
      ↓
PDF Filter
      ↓
Resume Download
      ↓
PDF Text Extraction
      ↓
Gemini Resume Analysis
      ↓
Match Score
      ↓
Sort by Score
      ↓
Best Resume Selected

Phase 3 — Dynamic Form Processing

Application URL
      ↓
Google Form Request
      ↓
Form Data Extraction
      ↓
Question Detection
      ↓
Entry ID Mapping
      ↓
Questions → WhatsApp

Phase 4 — Answer & Submission

User's WhatsApp Answers
          ↓
Numbered Answer Parsing
          ↓
Question → Entry ID Mapping
          ↓
Google Form Submission
          ↓
Application Status = Submitted
          ↓
WhatsApp Confirmation

📁 Repository Structure

ai-job-application-agent/
│
├── workflow/
│   └── ai-job-application-agent.json
│
├── src/
│   ├── code-in-javascript.js
│   ├── code-in-javascript1.js
│   ├── code-in-javascript2.js
│   ├── code-in-javascript3.js
│   ├── code-in-javascript4.js
│   ├── code-in-javascript5.js
│   ├── code-in-javascript6.js
│   ├── code-in-javascript7.js
│   └── code-in-javascript8.js
│
├── .env.example
├── .gitignore
└── README.md

Why are both JSON and JavaScript included?

The workflow JSON is the complete n8n workflow definition and is used to import the workflow into n8n.

The src/ directory contains the JavaScript from the n8n Code nodes in a readable source-code format for easier inspection and development.


Getting Started

Requirements

  • n8n
  • WhatsApp Cloud API / WhatsApp integration
  • Google Gemini API
  • Google Drive
  • Google Forms
  • n8n Data Table or another persistence layer

Installation

Clone the repository:

git clone https://github.com/YOUR_USERNAME/ai-job-application-agent.git
cd ai-job-application-agent

Import the workflow:

workflow/ai-job-application-agent.json

into your n8n instance.

Then connect your own credentials and configure the required integrations.


🔐 Security

The public workflow file is sanitized before publication.

Credentials are intentionally not included in the repository.

Never commit:

API Keys
Access Tokens
Passwords
Database Credentials
Private Webhook Secrets
Personal Candidate Data

Configure your own credentials inside n8n after importing the workflow.


⚠️ Limitations

This is a working prototype / research project and should be tested carefully before being used for real job applications.

Current limitations include:

  • Google Forms can use different field types and structures.
  • Some forms may not support programmatic submission.
  • Resume matching depends on the quality of extracted job and resume text.
  • AI match scores are an automated aid, not a guaranteed measure of job suitability.
  • Job platforms other than the supported workflow path may require additional integrations.

🔬 Research & Evaluation

This project can be evaluated as an AI-assisted job application automation system.

Potential evaluation metrics include:

Metric Example Evaluation
Job Extraction Field-level accuracy
Resume Matching Match-ranking accuracy
Form Parsing Question / field extraction accuracy
Answer Mapping Correct question-to-entry mapping
Submission End-to-end success rate
Efficiency Time saved per application
Reliability Successful runs across different inputs

🗺️ Future Improvements

  • Better resume ranking and evaluation
  • Support for more resume formats
  • More Google Form field types
  • Application history and analytics
  • Stronger validation before submission
  • Support for additional job platforms
  • Improved error recovery
  • Human approval before final submission

🎥 Demo

The complete system demonstrates an end-to-end application flow:

Forward Job → AI Understands → Eligibility → Best Resume → Form Understanding → WhatsApp Answers → Automatic Submission


📜 Project Status

🟢 Prototype / Research Project

The core automation workflow has been implemented and tested as an n8n pipeline.


Built with n8n + Google Gemini + WhatsApp

AI Job Application Agent

About

AI-powered n8n workflow that automates job applications through WhatsApp - extracting job requirements, checking eligibility, matching the best resume, parsing Google Forms, collecting answers, and submitting applications automatically.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages