LinkedIn B2B Lead Scraper (no login)
Pricing
from $1.40 / 1,000 results
LinkedIn B2B Lead Scraper (no login)
Finds companies hiring for your keywords on LinkedIn and enriches each one with public firmographics — industry, headcount, HQ, website, founded year. Uses only LinkedIn's public guest surfaces; no login, no cookies, no people-profile scraping.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
Ibnu Adzim
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Finds companies that are hiring for the roles you care about, then enriches each one with public firmographics — industry, headcount, HQ, website, founded year, company type. A job opening is a buying signal; this actor turns that signal into a lead list.
Uses only LinkedIn's public guest surfaces. No login, no cookies, no session transplant, no CAPTCHA solving, no browser. Pure HTTP.
What you get
leads mode (default) — one row per employer:
| Field | Example |
|---|---|
companyName / companySlug / companyUrl | Kerry Consulting |
openJobCount | 3 |
openJobs[] | every matching posting: title, location, posted date, URL |
company.industry | Staffing and Recruiting |
company.employeeCountRange / employeeCountExact | 51-200 employees / 148 |
company.headquarters | Singapore |
company.website | https://www.kerryconsulting.com |
company.companyType | Privately Held |
company.foundedOn, company.specialties, full postal address |
jobs mode — one row per posting. With fetchJobDetail you also get the
full description, seniority level, employment type, job function and industries.
companies mode — firmographics for LinkedIn company URLs you already have.
Accepts full URLs, country-subdomain URLs (de.linkedin.com/company/siemens)
and bare slugs (ibm).
Input
{"mode": "leads","keywords": "data engineer","location": "Singapore","maxItems": 50,"maxCompanies": 25,"datePosted": "r604800"}
Things worth knowing
Your location is validated before the run starts. LinkedIn does not reject
an unknown location — it silently returns United States results instead. So
this actor resolves your location against LinkedIn's own geo endpoint first and
aborts with an explanation if it does not resolve, rather than handing you
country-wide rows under a city label. The resolved place is reported back as
locationResolved / locationEcho.
1000 rows per query is LinkedIn's ceiling, not ours. The guest result window
ends at start=1000 (which answers HTTP 400). For more coverage, run several
narrower queries rather than one broad one.
Company enrichment is the slow part. LinkedIn's guest budget forces a fresh
session for every company page, so keep maxCompanies modest and leave
minRequestInterval at its default.
People profiles are not scraped. Every LinkedIn people surface
(/pub/dir/, /search/results/people/, Voyager) sits behind a login wall, and
this actor does not do logins. It scrapes companies and job postings only.
Output
Rows are pushed to the default dataset with a recordType of lead, job or
company. Failures produce a diagnostic row (_error: NOT_FOUND,
BLOCKED_AFTER_RETRIES) rather than a silent gap, so downstream joins never
lose an input. A RUN_SUMMARY key-value record carries the resolved location,
pages fetched, ceiling status and transport stats.