Block 1 - Sticky Note
- Type / Role
- n8n-nodes-base.stickyNote - stickyNote
- Config choices
- Version 1
Setup Guide Hiring Bot Workflow [ ](https://www.linkedin.com/in/mosaab yassir lafr...
n8n-nodes-base.stickynote, n8n-nodes-base.telegramtrigger, n8n-nodes-base.code, n8n-nodes-base.httprequest, n8n-nodes-base.redis, n8n-nodes-base.telegram, n8n-nodes-base.googledrive, n8n-nodes-base.gmail
This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Joe V.
Original n8n.io sourceBefore importing this workflow, make sure you have:
First, you need to upload your resume to OpenAI's Files API:
# Upload your resume to OpenAI
curl https://api.openai.com/v1/files \
-H "Authorization: Bearer YOUR_OPENAI_API_KEY" \
-F purpose="assistants" \
-F file="@/path/to/your/resume.pdf"
Important: Save the file_id from the response (looks like file-xxxxxxxxxxxxx)
Alternative: Use OpenAI Playground or Python:
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY")
with open("resume.pdf", "rb") as file:
response = client.files.create(file=file, purpose="assistants")
print(f"File ID: {response.id}")
https://drive.google.com/file/d/FILE_ID_HERE/view1h79U8IFtI2dp_OBtnyhdGaarWpKb9qq9/newbot123456789:ABCdefGHIjklMNOpqrsTUVwxyz)/start - Start the bot
/help - Get help
Option A: Redis Cloud (Recommended - Free)
Option B: Local Redis
# Docker
docker run -d -p 6379:6379 redis:latest
# Or via package manager
sudo apt-get install redis-server
Hiring_Bot_Anonymized.json6379 (default)const resumeFileId = "YOUR_OPENAI_FILE_ID_HERE";
const resumeFileId = "file-xxxxxxxxxxxxx";
There are TWO nodes that need updating:
Node 1: "Download Resume"
YOUR_GOOGLE_DRIVE_FILE_ID with your actual IDNode 2: "Download Resume1" (same process)
After importing, you need to assign your credentials to each node:
Nodes that need credentials:
| Node Name | Credential Type |
|---|---|
| Telegram Trigger | Telegram API |
| Generating Reply | OpenAI API |
| Store AI Reply | Redis |
| GetValues | Redis |
| Download Resume | Google Drive OAuth2 |
| Download Resume1 | Google Drive OAuth2 |
| Schedule Email | Gmail OAuth2 |
| SendConfirmation | Telegram API |
| Send a message | Telegram API |
| Edit a text message | Telegram API |
| Send a text message | Telegram API |
| Send a chat action | Telegram API |
How to assign:
file-)gpt-5.2)In the PayloadForReply node, update:
const MODEL = "gpt-5.2"; // Change to gpt-4, claude-3-opus, etc.
Modify the system prompt:
// From:
Email body: ~120β180 words unless INSIGHTS specify otherwise.
// To:
Email body: ~100β150 words for concise applications.
Update language detection logic in the system prompt to support more languages.
Edit the system prompt to target specific roles:
// From:
Only pick ONE job offer to process β the one most clearly related to Data roles
// To:
Only pick ONE job offer to process β the one most clearly related to [YOUR FIELD]
Add a "Wait" node after email sends to schedule a reminder after 7 days.
Telegram Input
β
Switch (Route by type)
β
ββ New Job Post
β β
β Send Chat Action (typing...)
β β
β PayloadForReply (Build AI request)
β β
β Generating Reply (Call OpenAI)
β β
β FormatAiReply (Parse JSON)
β β
β Store AI Reply (Redis cache)
β β
β SendConfirmation (Show preview)
β
ββ Callback (User clicked "Send")
β
GetValues (Fetch from Redis)
β
Format Response
β
Download Resume (from Drive)
β
ββ Path A: Immediate Send
β β
β Send Confirmation Message
β β
β Edit Message (update status)
β
ββ Path B: Scheduled Send
β
Wait (10 seconds)
β
Download Resume Again
β
Schedule Email (Gmail)
β
Send Success Message
"make it more casual""send to [email protected]"Use this checklist to verify your setup:
π You're all set! Start applying to jobs in 10 seconds!
Made with β€οΈ and n8n
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.
| Workflow | Send personalized job application emails with Telegram, OpenAI, and Gmail |
|---|---|
| Complexity | advanced |
| Nodes | 22 |
| Categories | HR, AI Chatbot |
| Author | Joe V |
| Published | 28 Jan 2026 |
Use the JSON export at /data/workflows/13077/13077.json as the source template for this automation.
Open n8n, import the downloaded JSON, and review each node before activating the workflow.
Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.
Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.
Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.
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.
Setup Guide Hiring Bot Workflow [ ](https://www.linkedin.com/in/mosaab yassir lafr...
Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.
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 HR, AI Chatbot use case.