AI Recruitment Screening Agent¶
An automated recruitment workflow that processes job applications by analyzing uploaded CVs and essays using AI-powered document analysis. The system extracts key information from resumes, evaluates essay responses, and consolidates results into a structured output for recruitment teams.
Purpose¶
No business context provided yet — add a context.md to enrich this documentation.
This workflow appears to be designed for processing job applications, specifically for a program called "YET" (Youth Entrepreneurship Training). It automatically screens candidates by: - Analyzing uploaded CVs to extract experience, education, and skills - Evaluating essay responses about entrepreneurship in Ugandan society - Providing structured scoring and summaries for recruitment decision-making
How It Works¶
- Application Monitoring: The workflow monitors a Google Sheets document for new job applications submitted through a form
- Document Processing: When a new application is detected, it extracts CV and essay files from Google Drive links
- CV Analysis: Downloads the CV, uploads it to OpenAI for OCR and text extraction, then analyzes experience, education, and skills
- Essay Evaluation: Downloads the essay submission and scores it based on specific criteria related to entrepreneurship in Uganda
- AI Processing: Uses OpenAI assistants to perform document analysis and scoring with structured prompts
- Data Consolidation: Combines the original application data with AI analysis results
- Output Generation: Writes the enriched data to a separate Google Sheets document for review
- Cleanup: Removes uploaded files from OpenAI to manage storage
Workflow Diagram¶
graph TD
A[Google Sheets Trigger - CV Path] --> B[Code3 - Get Latest Row]
A2[Google Sheets Trigger - Essay Path] --> B2[Code4 - Get Latest Row]
B --> C[Code - Extract CV File ID]
B --> G[Google Sheets - Write Output]
C --> D[HTTP Request - Download CV]
D --> E[OpenAI - Upload CV File]
E --> F[OpenAI6 - Update CV Assistant]
F --> H[OpenAI2 - Analyze CV]
H --> I[Code2 - Structure Output]
I --> J[OpenAI8 - Delete CV File]
B2 --> C2[Code1 - Extract Essay File ID]
C2 --> D2[HTTP Request1 - Download Essay]
D2 --> E2[OpenAI3 - Upload Essay File]
E2 --> F2[OpenAI9 - Update Essay Assistant]
F2 --> H2[OpenAI5 - Analyze Essay]
H2 --> J2[OpenAI10 - Delete Essay File]
J --> G
J2 --> G
Trigger¶
Google Sheets Trigger (2 instances) - Monitors the "YET_applications" sheet in a Google Sheets document - Triggers when new rows are added (new applications submitted) - Polls every minute for changes - Both triggers monitor the same sheet but process different document types
Nodes Used¶
| Node Type | Count | Purpose |
|---|---|---|
| Google Sheets Trigger | 2 | Monitor for new job applications |
| Code | 5 | Extract file IDs, get latest rows, structure AI output |
| HTTP Request | 2 | Download CV and essay files from Google Drive |
| OpenAI | 8 | File upload, AI analysis, assistant management, file cleanup |
| Google Sheets | 1 | Write processed results to output sheet |
| Sticky Note | 6 | Workflow documentation and organization |
External Services & Credentials Required¶
Google Services¶
- Google Sheets Trigger OAuth2: Access to read application data from source spreadsheet
- Google Sheets OAuth2: Write permissions for output spreadsheet
OpenAI¶
- OpenAI API: Access to file operations and assistant APIs
- Pre-configured Assistants:
asst_XE7zzsVBnrgP6DIhsldk3LPh(file analyzer) - CV analysisasst_BX1yz8XVvktnWJitik7Q0NCg(Essay analyzer) - Essay scoring
Environment Variables¶
No environment variables are explicitly configured in this workflow. All configuration is handled through: - Google Sheets document IDs (hardcoded in nodes) - OpenAI assistant IDs (hardcoded in nodes) - Credential references for API access
Data Flow¶
Input¶
- Source: Google Sheets form responses containing:
- Personal information (name, email, phone, location)
- Education details
- CV file (Google Drive link)
- Essay submission (Google Drive link)
- Other application fields
Processing¶
- CV Analysis Output: JSON containing experience summary, CV summary, and overall rating
- Essay Analysis Output: Numerical score (0-100) based on entrepreneurship essay criteria
Output¶
- Destination: Consolidated Google Sheets with original application data plus AI analysis
- Format: Structured rows with all original fields maintained
Error Handling¶
The workflow includes several error handling mechanisms: - HTTP Request1: Configured with "Continue on Error" for essay download failures - OpenAI8 & OpenAI10: File deletion operations continue on error to prevent workflow failure - Retry Logic: OpenAI2 and OpenAI5 (analysis nodes) have retry enabled for reliability
Known Limitations¶
- Workflow is currently inactive (status: false)
- Hardcoded document IDs limit portability
- Dependent on specific Google Drive file sharing permissions
- Essay analysis requires specific keyword usage ("salubrious")
- Limited to processing one application at a time
- No validation for file format compatibility
Related Workflows¶
No related workflows identified from the provided context.
Setup Instructions¶
-
Import Workflow: Import the JSON into your n8n instance
-
Configure Credentials:
- Set up Google Sheets OAuth2 credentials for both trigger and output operations
- Configure OpenAI API credentials with appropriate permissions
-
Create OpenAI Assistants:
- Create a "file analyzer" assistant for CV processing
- Create an "Essay analyzer" assistant for essay evaluation
- Update assistant IDs in the respective OpenAI nodes
-
Update Google Sheets References:
- Replace source spreadsheet ID in both Google Sheets Trigger nodes
- Replace output spreadsheet ID in the Google Sheets output node
- Ensure proper sheet names match your setup
-
Test File Access:
- Verify Google Drive file sharing permissions
- Test with sample CV and essay uploads
- Confirm OpenAI file upload/download functionality
-
Activate Workflow: Enable the workflow to begin monitoring for new applications
-
Monitor Performance: Check execution logs and adjust polling frequency as needed