AutomationFlowsAI & RAG › Auto Data Ml Job Application V1

Auto Data Ml Job Application V1

Auto_Data_ML_Job_Application_v1. Uses httpRequest, openAi, gmail, googleSheets. Scheduled trigger; 7 nodes.

Cron / scheduled trigger★★★★☆ complexityAI-powered7 nodesHTTP RequestOpenAIGmailGoogle SheetsSlack
AI & RAG Trigger: Cron / scheduled Nodes: 7 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow follows the Gmail → Google Sheets recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "name": "Auto_Data_ML_Job_Application_v1",
  "nodes": [
    {
      "id": "1",
      "name": "Daily Trigger",
      "type": "n8n-nodes-base.cron",
      "parameters": {
        "mode": "everyDay",
        "hour": 8,
        "minute": 0
      }
    },
    {
      "id": "2",
      "name": "Fetch Jobs",
      "type": "n8n-nodes-base.httpRequest",
      "parameters": {
        "url": "https://api.jobright.ai/jobs/search",
        "method": "GET",
        "queryParametersUi": {
          "parameter": [
            {
              "name": "keywords",
              "value": "Senior Data Engineer, Machine Learning Engineer, Data Scientist"
            },
            {
              "name": "remote",
              "value": "true"
            },
            {
              "name": "visa",
              "value": "H1B likely"
            },
            {
              "name": "daysAgo",
              "value": "7"
            }
          ]
        },
        "options": {
          "responseFormat": "json"
        }
      },
      "credentials": {
        "httpBasicAuth": {
          "name": "<your credential>"
        }
      }
    },
    {
      "id": "3",
      "name": "GPT-5 Tailoring",
      "type": "n8n-nodes-base.openAi",
      "parameters": {
        "model": "gpt-5",
        "prompt": "You are ResumeGPT, an AI job assistant for Salman Shaik (Senior Data/ML Engineer). Analyze each job description and output JSON with {summary, bullets[5], recruiter_email}.",
        "input": "={{$json[\"jobResult\"][\"jobSummary\"]}}",
        "responseFormat": "json"
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "id": "4",
      "name": "Apply Logic",
      "type": "n8n-nodes-base.if",
      "parameters": {
        "conditions": {
          "string": [
            {
              "value1": "={{$json[\"applyLink\"]}}",
              "operation": "contains",
              "value2": "greenhouse.io"
            },
            {
              "value1": "={{$json[\"applyLink\"]}}",
              "operation": "contains",
              "value2": "lever.co"
            }
          ]
        }
      }
    },
    {
      "id": "5",
      "name": "Send Email",
      "type": "n8n-nodes-base.gmail",
      "parameters": {
        "fromEmail": "salman.sid1007@gmail.com",
        "subject": "Application for {{$json[\"jobTitle\"]}}",
        "message": "={{$json[\"recruiter_email\"]}}",
        "attachments": [
          "/path/to/salmanshaikDE.pdf"
        ]
      },
      "credentials": {
        "gmailOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "id": "6",
      "name": "Log to Sheet",
      "type": "n8n-nodes-base.googleSheets",
      "parameters": {
        "operation": "append",
        "sheetName": "Job tracker",
        "fields": "Date, Job Title, Company, Source, Link, Status",
        "options": {
          "data": [
            {
              "Date": "={{$now}}",
              "Job Title": "={{$json[\"jobTitle\"]}}",
              "Company": "={{$json[\"companyName\"]}}",
              "Source": "={{$json[\"companyURL\"]}}",
              "Link": "={{$json[\"applyLink\"]}}",
              "Status": "Applied"
            }
          ]
        }
      },
      "credentials": {
        "googleApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "id": "7",
      "name": "Slack Summary",
      "type": "n8n-nodes-base.slack",
      "parameters": {
        "channel": "#job-alerts",
        "text": "\u2705 Applied to {{$json[\"jobTitle\"]}} at {{$json[\"companyName\"]}}. Next run scheduled for tomorrow 8 AM."
      },
      "credentials": {
        "slackApi": {
          "name": "<your credential>"
        }
      }
    }
  ],
  "connections": {
    "Daily Trigger": {
      "main": [
        [
          {
            "node": "Fetch Jobs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Jobs": {
      "main": [
        [
          {
            "node": "GPT-5 Tailoring",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "GPT-5 Tailoring": {
      "main": [
        [
          {
            "node": "Apply Logic",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Apply Logic": {
      "main": [
        [
          {
            "node": "Send Email",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Log to Sheet",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Slack Summary",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

Auto_Data_ML_Job_Application_v1. Uses httpRequest, openAi, gmail, googleSheets. Scheduled trigger; 7 nodes.

Source: https://gist.github.com/salman9596/e276e7fb064fd41ebebd422196b8d79f — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Imagine a dedicated financial expert tirelessly working behind the scenes, sifting through every transaction, every investment move, and every accounting entry. That's exactly what this automated syst

HTTP Request, Google Sheets, OpenAI +3
AI & RAG

A scheduled process aggregates content from eight distinct data sources and standardizes all inputs into a unified format. AI models perform sentiment scoring, detect conspiracy or misinformation sign

HTTP Request, OpenAI, Postgres +2
AI & RAG

Stop wasting billable hours on manual time-tracking. AutoTimesheet Pro uses AI to collect emails, meetings, and GitHub work, then writes a clean timesheet straight into Google Sheets. Perfect for deve

Google Calendar, Gmail, GitHub +3
AI & RAG

Who is this for? AI creators, marketers, agencies, and researchers tracking YouTube trends who need weekly high-signal insights without 4+ hours manual research.

HTTP Request, OpenAI, Google Sheets +2
AI & RAG

Overview

Gmail Trigger, Google Drive, OpenAI +4