{
  "name": "LinkedIn job search: auto-match resume with AI + cover letter & Telegram alerts",
  "nodes": [
    {
      "id": "bd8ca013-eefb-439e-b15b-48b5502ffa91",
      "name": "Split Out",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        1700,
        -580
      ]
    },
    {
      "id": "22a12a7d-2ef7-47d2-8a01-50d1b24b3dc8",
      "name": "Loop Over Items",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -240,
        0
      ]
    },
    {
      "id": "4f32bc04-34d5-48d3-b87b-eb6f9e5d655b",
      "name": "Wait",
      "type": "n8n-nodes-base.wait",
      "position": [
        -20,
        -260
      ]
    },
    {
      "id": "19bf5463-06a1-4d69-99b3-11d4e0b2c7b1",
      "name": "Score Filter",
      "type": "n8n-nodes-base.if",
      "position": [
        1900,
        -260
      ]
    },
    {
      "id": "dbe8693f-b1bb-4a90-81f8-74e547da6345",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        940,
        -260
      ]
    },
    {
      "id": "8bda24dc-8a1c-43be-9dab-c64fa3902102",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        940,
        -60
      ]
    },
    {
      "id": "7facf548-a5ae-40f6-9733-30b7dd18f5c6",
      "name": "Extract from File",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        320,
        -580
      ]
    },
    {
      "id": "9ab899ad-6f37-446c-99bb-f7c92aae39e7",
      "name": "Download file",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        60,
        -580
      ]
    },
    {
      "id": "26acf7d7-717b-4993-a35f-b8f47bacb932",
      "name": "Append or update row in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1620,
        -260
      ]
    },
    {
      "id": "85b27871-88f5-4cc5-8884-a9fd8714bb16",
      "name": "Send a text message",
      "type": "n8n-nodes-base.telegram",
      "position": [
        2140,
        40
      ]
    },
    {
      "id": "04ae55dc-2c78-4bef-b76b-a6abe0d2b287",
      "name": "Get row(s) in sheet",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        680,
        -580
      ]
    },
    {
      "id": "8e9679f9-f523-4ae5-933a-50f4e085f9d1",
      "name": "Create search URL",
      "type": "n8n-nodes-base.code",
      "position": [
        1000,
        -580
      ]
    },
    {
      "id": "a1261369-4939-44a5-908f-1f79cf05d275",
      "name": "Schedule Trigger",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -240,
        -580
      ]
    },
    {
      "id": "bff65551-c8ab-4f3b-a6f7-1705b340a4dc",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -300,
        -680
      ],
      "parameters": {
        "width": null,
        "height": 260,
        "content": "Worklofw executes daily at 5pm, you can change the interval and time of execution.\n"
      }
    },
    {
      "id": "5e5e4480-3608-45de-bda0-e7d36a2b20c3",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -20,
        -680
      ],
      "parameters": {
        "width": null,
        "height": 260,
        "content": "Read user resume from google drive, you need to upload your resume in pdf format and select in **From List** section."
      }
    },
    {
      "id": "b4ed86d6-8562-4738-9972-5eaa2ef296b5",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        260,
        -680
      ],
      "parameters": {
        "width": null,
        "height": 260,
        "content": "Convert pdf file into text to AI can read content."
      }
    },
    {
      "id": "5c7bb6c3-ecfa-4fdd-a6f0-e1f8da743383",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        540,
        -720
      ],
      "parameters": {
        "width": 400,
        "height": 300,
        "content": "Read search filter consiste of keywords, location, experience level, remot, job type and easy apply from google sheet.\n\nYou can download [this Template](https://docs.google.com/spreadsheets/d/1mtKVxj_"
      }
    },
    {
      "id": "fc4bc16a-a825-4d26-8b9b-2254338c7d56",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        960,
        -680
      ],
      "parameters": {
        "width": 180,
        "height": 260,
        "content": "Create Linkedin search url from filter params."
      }
    },
    {
      "id": "13197864-2918-4e55-8991-8861ad723455",
      "name": "Fetch Jobs from Linkedin",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1220,
        -580
      ]
    },
    {
      "id": "e83ad624-2aca-4ad4-b82b-69c2ea14deb8",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1380,
        -740
      ],
      "parameters": {
        "width": 220,
        "height": 320,
        "content": "Extrat Job links from Linkdin search result"
      }
    },
    {
      "id": "33939f6d-2a09-4f9f-a59c-f287ef4daf72",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1660,
        -720
      ],
      "parameters": {
        "width": 180,
        "height": 300,
        "content": "fetch jobs one by one"
      }
    },
    {
      "id": "2add2540-d2ca-4903-b497-17bc141b4a18",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        -380
      ],
      "parameters": {
        "width": 180,
        "height": 260,
        "content": "Wait 10 sec between each job fetch."
      }
    },
    {
      "id": "df5815da-e55c-494e-919c-07b93ec4b9fa",
      "name": "Fetch Job Page",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        180,
        -260
      ]
    },
    {
      "id": "33b9404e-ca19-48f5-b55d-c62d6c5d4507",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        360,
        -380
      ],
      "parameters": {
        "width": 380,
        "height": 300,
        "content": "Parse job HTML page, extract **title**, **company**, **location**, **jobDescription** and **applyLink** from it"
      }
    },
    {
      "id": "a5c28135-f232-4fee-8127-646ec8f20854",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        760,
        -380
      ],
      "parameters": {
        "width": 540,
        "height": 440,
        "content": "AI model compare your resume and job description and rate your resume from 0-100, (0 does not match, 100 fully match) and also AI will write a sample cover letter based on your resume and your exprien"
      }
    },
    {
      "id": "7bba7f09-fd34-477a-a4db-3c4baf3ca5af",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1320,
        -380
      ],
      "parameters": {
        "width": 180,
        "height": 300,
        "content": "Convert AI output to JSON."
      }
    },
    {
      "id": "b20dbe40-7efa-4378-89cc-53bb392221c2",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1540,
        -380
      ],
      "parameters": {
        "width": 260,
        "height": 300,
        "content": "Add new job with score in google sheet.\n\nYou can download [this Template](https://docs.google.com/spreadsheets/d/1mtKVxj_z_QCLGXMx0mJVihWSgS41SzHfU1Rv4r_mRY0) and copy in your personal space."
      }
    },
    {
      "id": "d5d301b7-fd22-4c4f-8523-39779ce8c88d",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2080,
        -60
      ],
      "parameters": {
        "width": 260,
        "height": 300,
        "content": "Send telegram message if matching score is greater than criteria defined in previuos step."
      }
    },
    {
      "id": "b610e530-ad72-470a-a52e-d592797c51d4",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1820,
        -380
      ],
      "parameters": {
        "width": 260,
        "height": 300,
        "content": "Filter job that has score higher than 50. you can change filter criteria in this node."
      }
    },
    {
      "id": "9838b440-d3ad-4665-b47b-d04e4d2cb928",
      "name": "Parse AI Output",
      "type": "n8n-nodes-base.set",
      "position": [
        1360,
        -260
      ]
    },
    {
      "id": "a4d125b1-8d0c-4927-9470-33ab24b6706b",
      "name": "Parse Job Attributes",
      "type": "n8n-nodes-base.html",
      "position": [
        400,
        -260
      ]
    },
    {
      "id": "ba71d7c3-a89a-447d-aba6-7a0fdfda19dc",
      "name": "Modify Job Attributes",
      "type": "n8n-nodes-base.set",
      "position": [
        600,
        -260
      ]
    },
    {
      "id": "af4831f6-f9fa-4d68-aee1-d0ba38d8a46c",
      "name": "Extract Job Links",
      "type": "n8n-nodes-base.html",
      "position": [
        1440,
        -580
      ]
    }
  ],
  "connections": {
    "Wait": {
      "main": [
        [
          {
            "node": "Fetch Job Page",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Agent": {
      "main": [
        [
          {
            "node": "Parse AI Output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Score Filter": {
      "main": [
        [
          {
            "node": "Send a text message",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Download file": {
      "main": [
        [
          {
            "node": "Extract from File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Job Page": {
      "main": [
        [
          {
            "node": "Parse Job Attributes",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Over Items": {
      "main": [
        [],
        [
          {
            "node": "Wait",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse AI Output": {
      "main": [
        [
          {
            "node": "Append or update row in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Download file",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Create search URL": {
      "main": [
        [
          {
            "node": "Fetch Jobs from Linkedin",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Job Links": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract from File": {
      "main": [
        [
          {
            "node": "Get row(s) in sheet",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Get row(s) in sheet": {
      "main": [
        [
          {
            "node": "Create search URL",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Send a text message": {
      "main": [
        [
          {
            "node": "Loop Over Items",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Parse Job Attributes": {
      "main": [
        [
          {
            "node": "Modify Job Attributes",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Modify Job Attributes": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Fetch Jobs from Linkedin": {
      "main": [
        [
          {
            "node": "Extract Job Links",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Append or update row in sheet": {
      "main": [
        [
          {
            "node": "Score Filter",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}