LinkedIn jobs API

A LinkedIn jobs API returns public LinkedIn job listings for a role and a location — title, company and company URL, location, posting date, salary chip where shown, benefits, job id and the listing link.

It reads LinkedIn's logged-out job search: the guest endpoint LinkedIn's own infinite scroll calls when nobody is signed in. Public listings only — no login, no cookies, no session, no browser. That constraint is the product. Scrapers built on authenticated sessions get accounts restricted, and LinkedIn is unusually effective at detecting them; a read of the public guest surface keeps working.

$0.001 per delivered job, up to 300 jobs per run. Nothing delivered means nothing charged.

How the LinkedIn jobs API works

You send a role and, usually, a location. The collector calls the same guest pagination endpoint the logged-out site uses, ten cards at a time, until it reaches your max_results — up to 300 jobs in one run.

Two filters are applied at the source rather than after collection, which means they reduce the bill and not just the output: remote_only and posted_within_days. The second one matters more than it looks. Job boards are full of listings that have been open for four months, and a freshness window is the difference between a live pipeline and an archive.

posted_at and posted_label both come back — the parsed date and LinkedIn's own relative phrasing ("2 days ago"). Keep both: the label is what LinkedIn asserted, the date is what you can sort on.

Inputs

query is the role and is required. location is a free-text place as LinkedIn understands it ("United States", "Berlin, Germany"). remote_only and posted_within_days filter at the source. country sets the proxy exit, which affects which listings LinkedIn surfaces — a genuinely regional index, not a global one filtered client-side.

What one job looks like

One row per listing. company_url is the company's LinkedIn page, which is the join key to the company collector if you want to enrich the employer rather than just the role. salary is the chip LinkedIn displays and is frequently null — most LinkedIn listings do not publish pay, which is itself worth recording rather than treating as a gap. job_id is stable, so deduplicating across daily runs is a set operation rather than fuzzy title matching.

What the LinkedIn jobs API costs

$0.001 per delivered job ($1 per 1,000). Nothing delivered means nothing charged, and the $2 monthly free credit covers roughly 2,000 jobs here. Volume tiers take up to 30% off.

$0.001 per delivered job, $1 per 1,000. A daily sweep of 20 role-and-location combinations at 100 jobs each is 2,000 rows a day, $2 — and the freshness filter means most of those are genuinely new rather than the same backlog re-delivered.

Blocked pages and retries are never billed. The free $2 monthly allowance covers about 2,000 jobs.

LinkedIn jobs API vs LinkedIn's official APIs

LinkedIn does have job-related APIs, and effectively nobody reading this page can use them. Access runs through LinkedIn's partner programmes — Talent Solutions, Job Posting — which require an approved partnership, a signed agreement and a business case LinkedIn agrees with. They are built for applicant tracking systems that post jobs and for enterprise recruiting integrations, not for reading the job market.

There is no public, self-serve LinkedIn API that returns job listings for a search. The developer portal will let you create an application, and the products you can actually enable without partner status are Sign In with LinkedIn and basic share functionality. Anyone who has gone through this discovers it about forty minutes in.

So the realistic options are: become a LinkedIn partner, or read the public guest listings. This collector is the second, scoped honestly to what is publicly visible.

Versus scraping LinkedIn jobs yourself

LinkedIn is the platform where the do-it-yourself route most often ends badly, and the reason is the account:

Reading only the logged-out surface is a smaller dataset than a session-based scraper claims, and it is one you can keep running.

What people build with it

Job aggregation

Feed a board or a newsletter with fresh listings for a set of roles and markets, deduplicated on job_id.

Hiring-signal and competitive intelligence

A company suddenly opening twelve infrastructure roles is a strategy disclosure. Track hiring volume by company over time.

Labour market research

Role demand by location and over time, with the caveat that salary is usually absent — the absence itself is a finding.

Recruiting and sourcing

Find which companies are hiring for the roles you place, then enrich the employer through the LinkedIn company collector.

Limits, reliability and the legal bit

Up to 300 jobs per run, paginated internally ten at a time. Public logged-out listings only — anything requiring a session is out of scope. More coverage means more runs across roles and locations, parallel up to your plan's rate limit (60 requests/minute on pay-as-you-go, up to 1,200 on the top tier).

Legally, LinkedIn is the platform with the most litigation history here, and the outcome has broadly favoured the position that scraping publicly accessible pages is not unlawful access under the US Computer Fraud and Abuse Act. That is a narrow holding, not a general permission: LinkedIn's terms still prohibit automated collection and it enforces them by other means, the analysis differs outside the US, and job postings can contain named recruiters, which is personal data. Not legal advice.

FAQ

Is there a free LinkedIn jobs API?

Not from LinkedIn — its job APIs sit behind partner programmes that require an approved partnership and a signed agreement. Here there is a free allowance of $2 a month with no card, about 2,000 delivered jobs at $0.001 each.

Does LinkedIn have a public jobs API?

No self-serve one. You can register an application on LinkedIn's developer portal, but the products available without partner status are Sign In with LinkedIn and basic sharing. Reading job listings programmatically requires Talent Solutions or Job Posting partner access.

How much does it cost?

$0.001 per delivered job — $1 per 1,000 — with no subscription. The remote_only and posted_within_days filters apply at the source, so narrowing lowers the bill rather than just the output. Volume tiers take up to 30% off.

Does it need a LinkedIn login?

No, and that is the point. It reads the logged-out guest endpoint only. Session-based LinkedIn scrapers get accounts restricted, which on LinkedIn can mean losing a real person's professional profile — a much worse outcome than a rate limit.

Why is salary usually empty?

Because most LinkedIn listings do not publish pay. The field carries the salary chip when LinkedIn shows one and is null otherwise. The rate at which it is null is itself a useful statistic about a market rather than a defect.

How many jobs can one run return?

Up to 300, paginated internally in batches of ten. Wider coverage comes from more role-and-location combinations rather than deeper paging on one.

Is scraping LinkedIn legal?

US courts have repeatedly declined to treat scraping publicly accessible pages as unlawful access under the CFAA, which is meaningful but narrow. LinkedIn's terms still prohibit automated collection, the analysis differs outside the US, and listings can name individual recruiters, which is personal data. Take proper advice for your case.

Related scrapers

If you're an AI agent

Skip the marketing. QuantumProxies.io publishes a machine-readable site map, Markdown for every page, a free MCP server, and APIs billed from the same balance as your proxies.

Connect in one command: npx -y quantumproxies-mcp