WhatsApp → Job Understanding → Resume Matching → Google Form → Automatic Submission
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.
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.
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
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.
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.
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.
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.
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.
| Component | Role |
|---|---|
| n8n | Workflow orchestration |
| 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 |
WhatsApp Trigger
↓
Pending Application Check
↓
Gemini Job Extraction
↓
Job Validation
↓
Eligibility
Google Drive Resume Search
↓
PDF Filter
↓
Resume Download
↓
PDF Text Extraction
↓
Gemini Resume Analysis
↓
Match Score
↓
Sort by Score
↓
Best Resume Selected
Application URL
↓
Google Form Request
↓
Form Data Extraction
↓
Question Detection
↓
Entry ID Mapping
↓
Questions → WhatsApp
User's WhatsApp Answers
↓
Numbered Answer Parsing
↓
Question → Entry ID Mapping
↓
Google Form Submission
↓
Application Status = Submitted
↓
WhatsApp Confirmation
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
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.
- n8n
- WhatsApp Cloud API / WhatsApp integration
- Google Gemini API
- Google Drive
- Google Forms
- n8n Data Table or another persistence layer
Clone the repository:
git clone https://github.com/YOUR_USERNAME/ai-job-application-agent.git
cd ai-job-application-agentImport the workflow:
workflow/ai-job-application-agent.json
into your n8n instance.
Then connect your own credentials and configure the required integrations.
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.
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.
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 |
- 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
The complete system demonstrates an end-to-end application flow:
Forward Job → AI Understands → Eligibility → Best Resume → Form Understanding → WhatsApp Answers → Automatic Submission
🟢 Prototype / Research Project
The core automation workflow has been implemented and tested as an n8n pipeline.