See llms.txt for all machine-readable content.

Back to Templates

Track new LinkedIn jobs daily in Google Sheets with Apify MEKA

Quick overview

Monitor new public LinkedIn jobs in Google Sheets with MEKA. The workflow validates a focused search, deduplicates job IDs against your sheet, and appends only unseen roles.

How it works

  1. Use the Manual Trigger for a supervised test, or enable the included daily Schedule Trigger after setup.
  2. Read and validate search, spreadsheet, result, and budget settings before starting one MEKA Actor run through Apify.
  3. Handle READY and RUNNING responses with a bounded poll loop without retrying the billable start request.
  4. Read the Actor OUTPUT summary before accepting data; stop on failed searches and mark enrichment failures or budget stops as partial coverage.
  5. Fetch one bounded Dataset batch and normalize valid public LinkedIn job records into the documented ten-column shape.
  6. Read existing IDs from the target sheet and remove jobs already present or duplicated inside the fetched batch.
  7. Append only unseen rows, preserve firstSeenAt, and report fetched, new, appended, skipped, and coverage counts.

Setup

  1. Import the workflow JSON and keep it inactive.
  2. Create a Google Sheet with a Jobs worksheet and add these exact headers in row 1: id, title, company, location, postedAt, url, salary, employmentType, seniority, firstSeenAt.
  3. Create an HTTP Header Auth credential. Set the header Name to Authorization and Value to Bearer <YOUR_APIFY_TOKEN>. Select the same credential on Start Actor, Poll Actor Run, Get Run Output, and Get Dataset Items.
  4. In Search settings, enter your spreadsheet document ID and sheetName, then choose keywords, location, date window, limit, and budgetUsd (mapped to the maxTotalChargeUsd HTTP query parameter). Connect Google Sheets OAuth2 to Read Existing Jobs and Append Rows.
  5. Open Workflow settings -> Timezone and choose the timezone you intend to use. Confirm that 08:00 is the intended time in the timezone you explicitly choose. Run the Manual Trigger, inspect the execution and real sheet, and enable the Schedule Trigger only after that test succeeds.

Requirements

  • Use n8n with an Apify account and token, a Google account that can authorize Google Sheets OAuth2, and a writable spreadsheet with the documented Jobs worksheet and ten headers. This template is free, but Apify Actor usage may incur separate Apify charges.

Customization

  • Edit Search settings to change the keywords, location, date window, result limit, spending cap, spreadsheet, or worksheet. After choosing a workflow timezone, adjust the 08:00 schedule if needed. Focused smaller searches are easier to inspect; result limits and budget caps do not guarantee full-market coverage.

Additional info

The template is free to use, while Apify Actor runs may incur separate Apify charges; the user's n8n plan may also apply. Public repository: https://github.com/meka-im/linkedin-jobs-scraper-examples. MEKA Actor: https://apify.com/meka.im/linkedin-jobs-scraper. Use one workflow and one active writer per sheet because concurrent read-and-append runs can race. Results depend on search ranking, public availability, enrichment outcomes, and result or budget limits, so this workflow does not provide full-market coverage.