Automation on n8n A developer's tutorial on building a LinkedIn job-search automation with n8n and Apify shows how to scrape job listings, filter them with Google Gemini, and send matches to Gmail, using a free trial and $5 Apify credit. The workflow uses n8n's Loop Over Items node to limit results to five per run and an Edit Fields node to customize search URLs. but True motive is about learning n8n. When I wanted to learn about automation, I came across the name called n8n. I don’t know it fully, but I will write what I have done and what I learned. As usual, I searched for it on YouTube, and I came across a YouTube video by Michele Torti. As per his video, I created a rough plan and used alternate nodes. You can see this is how he proposed to create automation, but I just made a change where I won’t be rewriting the resume instead, I will just grab all jobs and details to my DB in here Sheets At first, we need an account to sign in, Apify — a robust cloud platform designed for web scraping, data extraction, and browser automation.They have an n8n — n8n is a workflow automation platform that connects apps, services, databases, and APIs so they can work together with little or no custom code. It is commonly used to automate repetitive tasks, move data between systems, and build AI-powered workflows. It gives you 14 days free trial. All we have to do is create an account. After creating an account in n8n, go to the home page. You will see these things: create a workflow, then it will ask you to build on your own, or you want to build with AI. If you want to build with the help of AI, you can do that, click on “Add first step…” to build manually. It will ask you to add a trigger manually; it is just something you can use to trigger the workflow. Then you to add app click + button next to your trigger to get nodes nodes are thing that helps you automate your work in a workflow . You can search for Apify and make a connection by clicking OAuth2, it will ask you to log in with Google or you can also manually enter your api key as well You need to search for LinkedIn web scraper in Apify; search for cheap scraper since you will only have $5 which they provide for an account This is my recommendation. You can also look for a cheaper one. After selecting the scraper, change it into JSON and then copy it. In n8n → Apify node, select the actor which scraper you use and paste the JSON in input JSON; here is an example of what I did. Inside your JSON, there will be startUrls or URL-related strings. We need to change that by adding an extra node called edit fields, this will be helpful to change or modify the job search URL. Note: The job URL is what you will get from the LinkedIn website go to search jobs → give filters and copy the url After implementing the edit field before the Apify node, map the output of the edit field to Apify by just dragging the text field from the output of the edit field and putting it inside the Apify JSON where the URL string is present. Here is an example. Now we have to create a loop to iterate n times your desired number; in my case, I used 5 because Apify will return 150 or more outputs. If we give those to Google Docs or AI, it will take so much time. In some cases, it may crash, so we will reduce it to 5 outputs. Search for the Loop Over Items node and add it to the workflow. Next We need resume, just create your resume and upload it to your docs actually, we don’t need to have 5 instances since we just get job details Connect the node to your Gmail account and paste the link to your resume. For the next step, we need AI api previleges. If you have any Pro or pay-as-you-go account in your AI assistant, then you can use that; I will use Google Gemini to get suitable jobs with respect to my resume. Select your AI from the nodes with the “message a model” node, connect it with your AI account, and select your model. We need two values: Value1 → prompt = give a prompt that makes the model to think that it is best in job search field. role = Model Value2 → prompt = give a detailed explanation of how you want a job and what you want; lastly, make sure to give a verdict as true and a good reason for the verdict. role = User this is mine, you can give anything you want {“verdict”:”true or false”, “reason”:”reasonforverdict”} If I’m a fit then true If I’m not a fit then false Add a line mentioning to give output as JSON. It would be to map. We don’t need all jobs, we can just filter out all unsuitable jobs from what we get from the AI node with respect to the verdict. Add a node called filter and give the condition as our output from the AI node by dragging the text variable and putting it inside the condition, then write true in the “is equal to” box. For the last step, you need to create a sheet with a named column like Note: What you give in sheets will be shown in google sheet node in n8n Add a Google Sheets node and connect it with your Google account. Select operation = append row, from list select your sheet, and you can see there will be fields to map our sheet columns, map it with the filtered output. At last, we need to connect the output from Sheets to the loop node, to iterate the steps again and again for all jobs, if you done, then your workflow will look like the image below. You can start the workflow, it starts to append the suitable jobs to your sheet. You can just see the job and apply for it. For your reference, click the link below and see how he did that. Michele Torti → https://youtu.be/lq8OaM-SeJo?si=jwn4NfpQJQ 44 os https://youtu.be/lq8OaM-SeJo?si=jwn4NfpQJQ 44 os Automation on n8n https://blog.devgenius.io/automation-on-n8n-4c4d39b6a82a was originally published in Dev Genius https://blog.devgenius.io on Medium, where people are continuing the conversation by highlighting and responding to this story.