AutomationFlowsWeb Scraping › Linkedin Job Hunting & Outreach Automation with Apify, Gemini Ai, and Gmail

Linkedin Job Hunting & Outreach Automation with Apify, Gemini Ai, and Gmail

ByAgentick AI @arpanjain29 on n8n.io

This n8n workflow automates the process of collecting job and decision-maker data, crafting AI-generated referral messages, and drafting them in Gmail—all using a combination of Apify, Google Sheets, LLMs, and email APIs. Auto-sourcing job postings from LinkedIn via Apify…

Cron / scheduled trigger★★★★☆ complexityAI-powered21 nodesGoogle SheetsChain LlmGoogle Gemini ChatOutput Parser StructuredGmailHTTP Request
Web Scraping Trigger: Cron / scheduled Nodes: 21 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #5738 — we link there as the canonical source.

This workflow follows the Chainllm → Gmail 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
{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "f6b1e29c-d52e-4564-be7a-e839c6ef3c74",
      "name": "Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        660,
        0
      ],
      "parameters": {
        "columns": {
          "value": {
            "id": "={{ $json.id }}",
            "title": "={{ $json.title }}",
            "sector": "={{ $json.sector }}",
            "applyUrl": "={{ $json.applyUrl }}",
            "location": "={{ $json.location }}",
            "poster url": "={{ $json.posterProfileUrl }}",
            "companyName": "={{ $json.companyName }}",
            "poster name": "={{ $json.posterFullName }}",
            "companyWebsite": "=",
            "addressLocality": "={{ $json.location }}",
            "descriptionText": "={{ $json.description }}",
            "application count": "={{ $json.applicationsCount }}",
            "postedAtTimestamp": "={{ $json.postedTime }}",
            "standardizedTitle": "={{ $json.title }}",
            "companyLinkedinUrl": "={{ $json.companyUrl }}"
          },
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "id",
              "defaultMatch": true,
              "canBeUsedToMatch": true
            },
            {
              "id": "title",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "title",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyName",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyName",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyLinkedinUrl",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyLinkedinUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "location",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "location",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "easyApply",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "easyApply",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "isPromoted",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "isPromoted",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "link",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "link",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "poster name",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "poster name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "poster url",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "poster url",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "sector",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "sector",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "application count",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "application count",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "formattedLocation",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "formattedLocation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "standardizedTitle",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "standardizedTitle",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "applyUrl",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "applyUrl",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "descriptionText",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "descriptionText",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "postedAtTimestamp",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "postedAtTimestamp",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "postedAt",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "postedAt",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "addressLocality",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "addressLocality",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "addressRegion",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "addressRegion",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "addressCountry",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "addressCountry",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyWebsite",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "companyWebsite",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companySlogan",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "companySlogan",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "companyEmployeesCount",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "companyEmployeesCount",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "id"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit?usp=drivesdk",
          "cachedResultName": "LinkedIn Jobs Data"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "072965da-3b73-4872-889c-660a6bb48ce7",
      "name": "Filter",
      "type": "n8n-nodes-base.filter",
      "position": [
        1300,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "or",
          "conditions": [
            {
              "id": "d15c6e65-e1dd-4419-9e42-0f3db3569db6",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.location }}",
              "rightValue": "Bengaluru"
            },
            {
              "id": "2ce2ef08-1397-498c-9274-1651598691f4",
              "operator": {
                "name": "filter.operator.equals",
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.company }}",
              "rightValue": "Snapmint"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "5bee2c85-6174-487b-9192-043b389debfd",
      "name": "Google Sheets1",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1640,
        0
      ],
      "parameters": {
        "columns": {
          "value": {
            "Name": "={{ $json.name }}",
            "Company": "={{ $json.company }}",
            "Location": "={{ $json.location }}",
            "Verified": "={{ $json.verified }}",
            "Designation": "={{ $json.designation }}",
            "Profile Link": "={{ $json.link }}"
          },
          "schema": [
            {
              "id": "Profile Link",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Profile Link",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Company",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Company",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Designation",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Designation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Education",
              "type": "string",
              "display": true,
              "removed": true,
              "required": false,
              "displayName": "Education",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Verified",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Verified",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Location",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Location",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Headline",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Headline",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Body",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Body",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Profile Link"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 341882268,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit#gid=341882268",
          "cachedResultName": "n8n-sheet"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit?usp=drivesdk",
          "cachedResultName": "LinkedIn Jobs Data"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "7213a501-06c5-4405-a1f6-ad5bd8004338",
      "name": "Basic LLM Chain",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        220,
        260
      ],
      "parameters": {
        "text": "={{ $('Google Sheets').item.json.title }},{{ $('Google Sheets').item.json.descriptionText }},{{ $('Google Sheets').item.json.link }},{{ $json.Designation }},{{ $json.Name }},",
        "batching": {
          "batchSize": 10
        },
        "messages": {
          "messageValues": [
            {
              "message": "Objective\nSecure a job referral by establishing a meaningful professional connection that makes the recipient feel valued and motivated to help.\n\nCraft a concise, professional LinkedIn message requesting a job referral that:\n - Personalizes the approach using the recipient's name\n - Demonstrates genuine interest and research about the recipient\n - Highlights a specific, authentic compliment\n - Clearly but subtly communicates your referral request\n - Maintains a professional and courteous tone\n\nRules:\n- Keep it under 100 words\n- Sound natural and conversational \n- Be specific and authentic\n- Avoid being too formal or overly enthusiastic"
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.7
    },
    {
      "id": "3ce73090-b5fd-4b23-885e-6284302c0db5",
      "name": "Google Gemini Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "position": [
        220,
        480
      ],
      "parameters": {
        "options": {},
        "modelName": "models/learnlm-2.0-flash-experimental"
      },
      "credentials": {
        "googlePalmApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "7f2a1a75-75ff-4936-9bcc-2dc05a80a099",
      "name": "Structured Output Parser",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        400,
        480
      ],
      "parameters": {
        "schemaType": "manual",
        "inputSchema": "{\n  \"type\": \"object\",\n  \"required\": [\"Headline\",\"Body\"],\n  \"properties\": {\n    \"Headline\": {\n      \"type\": \"string\"\n    },\n    \"Body\": {\n      \"type\": \"string\"\n    }\n  }\n}\n  "
      },
      "typeVersion": 1.2
    },
    {
      "id": "71aec2e5-c39f-4ef0-8426-07aba04f7f21",
      "name": "Merge",
      "type": "n8n-nodes-base.merge",
      "position": [
        820,
        300
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineByPosition"
      },
      "typeVersion": 3.2
    },
    {
      "id": "d1097be2-71b9-4a14-b523-23acaea0993a",
      "name": "Google Sheets2",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1040,
        300
      ],
      "parameters": {
        "columns": {
          "value": {
            "Body": "={{ $json.output.Body }}",
            "Headline": "={{ $json.output.Headline }}",
            "Profile Link": "={{ $json['Profile Link'] }}"
          },
          "schema": [
            {
              "id": "Profile Link",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Profile Link",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Company",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Company",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Designation",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Designation",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Education",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Education",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Verified",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Verified",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Location",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Location",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Headline",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Headline",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Body",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Body",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Profile Link"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": 341882268,
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit#gid=341882268",
          "cachedResultName": "n8n-sheet"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1sFuU0RA8_8t_lW24WW7jyxRzMol6RRURiWZNKbjgrxU/edit?usp=drivesdk",
          "cachedResultName": "LinkedIn Jobs Data"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.6
    },
    {
      "id": "af533364-7b5d-4f85-9eb9-9ae42bfa8f78",
      "name": "Schedule Trigger1",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        40,
        0
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "0944940d-9329-4b13-b37c-212982be0fb1",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        -180
      ],
      "parameters": {
        "color": 5,
        "width": 200,
        "content": "Apify Actor, use the link - https://console.apify.com/actors/BHzefUZlZRKWxkTck/input to input role, location to target and paste the URL of JSON output here."
      },
      "typeVersion": 1
    },
    {
      "id": "b1d52c5f-0cd2-42e9-94d5-fd3cfa4bb646",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        600,
        -180
      ],
      "parameters": {
        "width": 220,
        "content": "This node is to put all the jobs into a google sheet with all details. Configure this creating google sheet credentials from google developer console and enable Gsheet APIs and enable N8N via auth. "
      },
      "typeVersion": 1
    },
    {
      "id": "19701081-733d-4654-95ff-266dc76e3a5f",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        840,
        -180
      ],
      "parameters": {
        "width": 200,
        "content": "Use this Apify action - https://console.apify.com/actors/9Qmr7CUJ3fVH6bAmC/input to add all companies profile link in input and relevant designation you want to reach out."
      },
      "typeVersion": 1
    },
    {
      "id": "3e0285cb-259d-4d8a-8c56-489e2d1724e6",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        620
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 80,
        "content": "This is meessage drafting node to create a cusomt message for all contacts."
      },
      "typeVersion": 1
    },
    {
      "id": "92debce8-eabc-4fa6-86a9-402b87bb5c8c",
      "name": "Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1600,
        300
      ],
      "parameters": {
        "message": "={{ $json.output.Body }}",
        "options": {},
        "subject": "={{ $json.output.Headline }}",
        "resource": "draft"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "3fe63fd4-c01b-4b09-a55a-f5614856ba92",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1540,
        460
      ],
      "parameters": {
        "height": 100,
        "content": "From google console enable Email APIs, This will draft email in your linked Gmail account"
      },
      "typeVersion": 1
    },
    {
      "id": "cb0d7d29-dbe8-4ac4-bda5-8350c572a732",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1240,
        460
      ],
      "parameters": {
        "height": 100,
        "content": "I have used anymailfinder APIs, but you can use Hunter.io or any other API config to get email IDs"
      },
      "typeVersion": 1
    },
    {
      "id": "781444a6-26cc-43e8-a0b7-53712cfed4ed",
      "name": "Pull Jobs ",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        220,
        0
      ],
      "parameters": {
        "url": "https://api.apify.com/v2/datasets/EfaMgoTc0ibyoM2Qc/items?clean=true&format=json&limit=1000",
        "options": {}
      },
      "retryOnFail": true,
      "typeVersion": 4.2
    },
    {
      "id": "54f0a078-9503-4dc6-a29d-80da4e45fed0",
      "name": "Extract Info",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        440,
        0
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "=applyUrl,companyId, companyName, companyUrl, contractType,description,descriptionHtml, jobUrl, location, postedTime, salary, sector, title, workType, posterFullName, posterProfileUrl, applicationsCount, contractType, id"
      },
      "typeVersion": 1
    },
    {
      "id": "b37649fa-6f12-4921-a6d3-f68a9b73a6c1",
      "name": "Pull Decision Makers",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        880,
        0
      ],
      "parameters": {
        "url": "https://api.apify.com/v2/datasets/9u0RiQrljJXL5KBCk/items?clean=true&format=json",
        "options": {
          "batching": {
            "batch": {
              "batchSize": 1
            }
          }
        }
      },
      "retryOnFail": false,
      "typeVersion": 4.2
    },
    {
      "id": "450fa0b4-ce12-4a5b-a98b-92aa1a7ec344",
      "name": "Extract Info1",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1100,
        0
      ],
      "parameters": {
        "options": {},
        "fieldToSplitOut": "link, name, company, designation, education, location, verified, thumbnail"
      },
      "typeVersion": 1
    },
    {
      "id": "b48a4f47-6a64-4e54-8d9d-780f7bb89d76",
      "name": "Get Email IDs",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1300,
        300
      ],
      "parameters": {
        "url": "https://api.anymailfinder.com/v5.0/search/linkedin-url.json",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "sendHeaders": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "profile link",
              "value": "={{ $json['Profile Link'] }}"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {
              "name": "authorization",
              "value": "Bearer <Token>"
            }
          ]
        }
      },
      "typeVersion": 4.2
    }
  ],
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Google Sheets2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Filter": {
      "main": [
        [
          {
            "node": "Google Sheets1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pull Jobs ": {
      "main": [
        [
          {
            "node": "Extract Info",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Info": {
      "main": [
        [
          {
            "node": "Google Sheets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Info1": {
      "main": [
        [
          {
            "node": "Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Email IDs": {
      "main": [
        [
          {
            "node": "Gmail",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Sheets": {
      "main": [
        [
          {
            "node": "Pull Decision Makers",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Sheets1": {
      "main": [
        [
          {
            "node": "Basic LLM Chain",
            "type": "main",
            "index": 0
          },
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Google Sheets2": {
      "main": [
        [
          {
            "node": "Get Email IDs",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Basic LLM Chain": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger1": {
      "main": [
        [
          {
            "node": "Pull Jobs ",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pull Decision Makers": {
      "main": [
        [
          {
            "node": "Extract Info1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Basic LLM Chain",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Basic LLM Chain",
            "type": "ai_outputParser",
            "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

This n8n workflow automates the process of collecting job and decision-maker data, crafting AI-generated referral messages, and drafting them in Gmail—all using a combination of Apify, Google Sheets, LLMs, and email APIs. Auto-sourcing job postings from LinkedIn via Apify…

Source: https://n8n.io/workflows/5738/ — original creator credit. Request a take-down →

More Web Scraping workflows → · Browse all categories →

Related workflows

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

Web Scraping

Visual Regression Testing With Apify And Ai Vision Model. Uses googleDrive, lmChatGoogleGemini, outputParserStructured, stickyNote. Scheduled trigger; 34 nodes.

Google Drive, Google Gemini Chat, Output Parser Structured +4
Web Scraping

This n8n workflow is a proof-of-concept template exploring how we might work with multimodal LLMs and their multi-image analysis capabilities. In this demo, we compare 2 screenshots of a webpage taken

Google Drive, Google Gemini Chat, Output Parser Structured +4
Web Scraping

Community nodes are used in this workflow. B2B Sales Teams & SDRs Recruitment Agencies & Tech Recruiters Startup Founders Growth Marketing Teams Scrape Hiring Signals: The workflow starts by using an

Google Sheets, Google Gemini Chat, Output Parser Structured +3
Web Scraping

AI Chatbot-Backend. Uses scheduleTrigger, chainLlm, lmChatGoogleGemini, outputParserStructured. Scheduled trigger; 12 nodes.

Chain Llm, Google Gemini Chat, Output Parser Structured +3
Web Scraping

This tutorial details an end-to-end automation solution for streamlining the lien filing process for Homeowners Associations (HOAs) using an n8n workflow. It significantly reduces manual effort and po

Gmail, HTTP Request, Google Gemini Chat +5