Quick answer: LinkedIn aggressively prohibits scraping in its User Agreement, actively blocks automated access, and has litigated against scrapers. The compliant way to get LinkedIn data is through its official APIs and partner programs, with the member's authorization. There is no safe do-it-yourself scraper for LinkedIn's logged-in content, and I am not going to pretend otherwise or hand you evasion tactics. Here is the honest map of what is possible.
LinkedIn sits at the top of most "how do I scrape it" wish lists because the profile, company, and job data is enormously valuable for recruiting, sales, and market research. It is also one of the hardest and legally riskiest targets on the web. I would rather give you the accurate picture than a tutorial that gets you banned or sued.
Start with the official APIs
LinkedIn exposes several official programs. They are gated, they require review, and they do not give you an open firehose of every profile. That is by design. But they are the only sanctioned way to build on LinkedIn data.
- Sign In with LinkedIn (OpenID Connect): lets a member authenticate and share their own basic profile with your app, with their consent.
- Marketing Developer Platform: for managing ads, pages, and campaign analytics on accounts you are authorized to manage.
- Talent and Sales Solutions partner programs: gated integrations for recruiting and sales tooling, available to approved partners.
- Community Management APIs: for organizations to manage their own LinkedIn Page content.
The common thread: access is scoped to data the authenticated member or organization controls or consents to share. You will not get a way to pull arbitrary strangers' profiles in bulk, and that limitation is the point.
API and partner programs vs scraping
| Official APIs / partners | Scraping LinkedIn | |
|---|---|---|
| User Agreement | Sanctioned | Explicitly prohibited |
| Consent | Member or org authorizes | None |
| Data scope | What the member controls | Anything visible (until blocked) |
| Stability | Documented, supported | Breaks constantly, heavy blocking |
| Litigation history | None | LinkedIn has sued scrapers |
| Recommended | Yes | No |
The hiQ v. LinkedIn context
You have probably heard hiQ v. LinkedIn cited as proof that "scraping public data is legal." Be careful with that claim. The case dealt with scraping of publicly visible profile data and, at one stage, a court found that such scraping did not clearly violate the CFAA because the data was public and no authentication was bypassed. But the litigation was long and mixed, later stages went against hiQ on other grounds including breach of LinkedIn's User Agreement, and the company wound down.
The honest takeaway is directional, not a green light:
- The CFAA analysis around genuinely public, unauthenticated data is unsettled and fact-specific.
- Breach of contract (the User Agreement you accept by using the site) is a separate and very live exposure.
- This is not legal advice, and courts have reached different conclusions in different cases and jurisdictions.
Anyone telling you hiQ makes LinkedIn scraping "legal, settled, and safe" is overreading it.
What is and is not public
A meaningful amount of LinkedIn content sits behind a login or is only partially visible to logged-out visitors. The distinction matters:
- Public: a member's public profile page as shown to logged-out visitors (often a trimmed version), public company pages, and public job postings.
- Not public: anything you can only see while authenticated, connection-gated content, and anything that requires you to log in to view.
The moment your access depends on logging in, accepting the User Agreement, or getting past a block, you are no longer in "public data" territory, and you should stop.
Compliant alternatives that actually work
You usually do not need to scrape LinkedIn to solve the underlying problem.
- Official APIs and partner programs for authorized profile, page, and campaign data.
- Licensed data providers that have their own agreements and compliance posture (evaluate theirs carefully).
- First-party collection: ask candidates or leads to share their profile via Sign In with LinkedIn, or to submit a form. Consent-based data is cleaner and more durable.
- Public company websites: for firmographic and contact data, a company's own public site is fair game and often richer. See our guide on how to extract contact info from company websites.
For that last path, when you are fetching a company's own public pages (not LinkedIn), link.sc turns a URL into clean markdown or JSON:
curl https://link.sc/v1/fetch \
-H "Authorization: Bearer lsc_..." \
-H "Content-Type: application/json" \
-d '{
"url": "https://www.example-company.com/about/team",
"format": "markdown"
}'
link.sc is the right tool for the legitimate slice: a company's own public site, official API responses, and public content you are allowed to read. It is not a way around LinkedIn's login or defenses, and you should not use any tool that way.
The legal and ethics note
Take this seriously. LinkedIn's User Agreement prohibits scraping, crawling, and automated data collection, and prohibits using bots or bypassing technical measures. Violating it is a breach of contract. Circumventing authentication or access controls can raise CFAA exposure in the US. LinkedIn profiles are full of personal data, so the GDPR and similar laws apply to how you collect, store, and use it, and "it was on a public page" is not, by itself, a lawful basis under the GDPR.
Firm guardrails:
- Do not build a LinkedIn scraper. Use the official APIs and partner programs.
- Never bypass login, rate limits, or anti-bot systems.
- Get consent for personal data, and have a lawful basis before you store it.
- Talk to counsel before any project that touches LinkedIn data at scale. None of this post is legal advice.
For the broader legal framing, read is web scraping legal and ethical web scraping and compliance best practices.
The bottom line
LinkedIn is the one platform where "just scrape it" is genuinely bad advice. The company prohibits it, blocks it, and litigates it, and its data is personal data governed by privacy law. The compliant path is the official APIs, partner programs, consent-based first-party collection, and public company websites for firmographics. Solve the real problem there, and skip the scraper.
Building on legitimate public web data and official APIs? link.sc fetches any public URL to clean markdown or JSON in one call. Try it free.