LinkedIn Jobs Scraper - Public Job Postings, No Login avatar

LinkedIn Jobs Scraper - Public Job Postings, No Login

Pricing

from $1.00 / 1,000 job scrapeds

Go to Apify Store
LinkedIn Jobs Scraper - Public Job Postings, No Login

LinkedIn Jobs Scraper - Public Job Postings, No Login

Scrape public LinkedIn job postings by keyword and location. No login, no cookies, no proxy. Returns title, company, location, seniority, employment type, posted date and apply URL. For recruiters, job boards and sales teams treating hiring as a buying signal.

Pricing

from $1.00 / 1,000 job scrapeds

Rating

0.0

(0)

Developer

Mohammed Samaan

Mohammed Samaan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

4 hours ago

Last modified

Share

LinkedIn Jobs Scraper

Scrape LinkedIn job postings by keyword and location — title, company, location, posted date, salary (when shown), URL, and optional full detail (description, seniority, employment type, job function, industries, applicant count). No browser: it talks to LinkedIn's own public guest jobs API (the endpoint linkedin.com/jobs itself calls for "see more jobs" pagination), the same one used for the diagnostic probe that confirmed this approach.

Price: $1 per 1,000 jobs, +$1 per 1,000 detail fetches. Rows are de-duplicated by job ID across every keyword in one run.

Honest limits

This actor uses no cookies, no login, and no proxies — plain HTTP requests against LinkedIn's guest API. LinkedIn may throttle or block large or repeated runs from a single IP; if that happens the actor detects it (status 429/403/999 or an "authwall" response body) and stops gracefully after 5 consecutive blocked requests, keeping whatever rows it already collected rather than retrying forever. Treat it as best-effort, not a guaranteed-reliable feed for large volumes.

Who it's for

  • Recruiting and staffing agencies tracking new postings in a market
  • Market research — what roles/employers are hiring, by city
  • Lead generation — companies actively hiring signal budget and growth

Inputs

FieldWhat it does
keywordsSearch terms, one per line (required)
locationLocation to search (default United Arab Emirates)
maxJobsPerKeywordCap per keyword (default 100, max 1000)
datePostedany / day / week / month
jobTypeany / fulltime / parttime / contract / internship
remoteany / onsite / remote / hybrid
fetchDetailsFetch full description + criteria per job (extra charge)

Example input

{
"keywords": ["nurse", "chef"],
"location": "Dubai",
"maxJobsPerKeyword": 100,
"datePosted": "week",
"fetchDetails": false
}

Output

One row per job:

{
"jobId": "3912345678",
"title": "Registered Nurse",
"company": "Example Medical Center",
"companyUrl": "https://www.linkedin.com/company/example-medical-center",
"location": "Dubai, United Arab Emirates",
"postedText": "2 days ago",
"postedAt": "2026-09-13T00:00:00.000Z",
"salaryText": null,
"url": "https://www.linkedin.com/jobs/view/3912345678",
"keyword": "nurse",
"searchLocation": "Dubai"
}

With fetchDetails: true, rows also get description, seniorityLevel, employmentType, jobFunction, industries, applicantsText, scrapedAt.

How it works

LinkedIn's public jobs pages call https://www.linkedin.com/jobs-guest/jobs/api/seeMoreJobPostings/search with keywords, location, start (25 results per page) and filter params (f_TPR date posted, f_JT job type, f_WT workplace type) to lazily load more cards — no login required. This actor calls that same endpoint directly and parses the returned HTML fragment with cheerio. Job detail pages come from the equivalent jobPosting/<id> guest endpoint. Concurrency 3, 1s delay per request, retries with exponential backoff on 429/5xx/999.

Our other actors


Using this actor? A quick review helps other buyers find it: linkedin-jobs-scraper