Most no-login tutorials start working and then hit the auth wall after a few profile views. Here is what you can actually get logged out, why doing it yourself breaks, and a no-cookie API that just returns the JSON.
I am Dawson Young, the founder of CrustAPI. I ran every call on this page against our live endpoint on July 15, 2026, and I have pasted the real timings and the real JSON below. Where doing it yourself is genuinely fine, I say so. Where it breaks, I show you where.
Fetching one public profile with curl works. Fetching the fiftieth in a row usually does not. Here is what goes wrong, in the order most people hit it.
Browse a handful of profiles signed out and LinkedIn starts redirecting you to a sign-in or sign-up screen. The page you wanted stops loading and you get a login prompt instead.
Run the requests from one address and LinkedIn flags and throttles it at any real volume, so you end up spending your time on blocks and retries instead of on the data.
LinkedIn changes its public markup constantly. The selectors you wrote work until a layout change ships, then your parser returns nulls and you are debugging again.
A scraper is not a one-time build. LinkedIn changes, blocks evolve, and every fix lands back on you. You end up running a scraping system instead of building your own product.
A logged-out visitor can still see the core of a public profile. The table below is the actual field split from a live call. The left column is what came back; the right is what stays behind the sign-in gate.
| Public, logged out | Login-gated | |
|---|---|---|
| Name and headline | Yes | Visible signed out |
| Current title and company | Yes | Visible signed out |
| Location, follower count | Yes | Visible signed out |
| Full work history with dates | Yes | Visible signed out |
| Education and dates | Yes | Visible signed out |
| Skills, languages, awards | When the profile lists them | Some detail gated |
| Photo, banner, public URL | Yes | Visible signed out |
| Email address | Not on the public page | Behind login |
| Who viewed you, private connections | Not public | Behind login |
Field split from a live type=profile call on July 15, 2026. Skills can be empty on some profiles, so we do not promise they are always there.
Signed out, LinkedIn hands guest visitors a placeholder connection value of 8. We drop that and report the real public number instead. On the test profile that was a capped connectionsCount: 500, not the fake 8. Some tools pass the 8 straight through, which is a quick way to spot a thin scrape.
Instead of building and babysitting your own scraper, point one GET request at CrustAPI with a public profile URL. No LinkedIn login, no session cookie, no browser extension. Here is the exact call I ran.
The response is clean JSON, the same shape every time. This is the real body from July 15, 2026, trimmed for length where arrays repeat.
Five profile surfaces run the same way: type=profile, type=company, type=posts, type=jobs, and type=search for people by keyword. You are billed one credit per successful call. A private or empty result returns a normal 200 with a note and costs nothing. Full field docs are at the LinkedIn docs.
This is the split that matters most, and it is easy to miss. A lot of popular LinkedIn tools do not scrape public pages. They run through a real LinkedIn login, which means the account carrying the risk is yours.
PhantomBuster asks for your LinkedIn session cookie and runs through your account, with a cap around 1,500 profiles a day. Unipile connects your own accounts and the data rides your real sessions. Lix connects through an account too. If LinkedIn flags that activity, the account that gets restricted is yours.
CrustAPI reads only public, logged-out pages. There is no LinkedIn login in the loop and no session cookie of yours anywhere. Nothing of yours can get limited, because there is nothing of yours involved. That is the whole point of the no-cookie method.
To be fair, a connected-account tool can reach things the public page never shows, like your own network, private connection details, or actions that need a real session such as sending connection requests. If you specifically need signed-in-only data or automation and you accept the account risk on your own account, a cookie-based tool is the right pick. The no-cookie method is for public profile data at volume without putting an account on the line.
Server processing time from live calls, reported as tookMs. Wall-clock is a bit higher because it includes the network hop to you. Profiles and companies come back in about a second.
People search is the slower surface, usually about 1 to 3 seconds, because it runs a discovery pass and returns name, headline, location, and URL. Add enrich=true and each person comes back as a full profile in the same call. Do not expect sub-second on people search.
Short version: public, logged-out reading is the lane courts have treated most favorably, and it is the lane this method sits in. Here is the factual background, with sources. This is background, not legal advice; check your own use with a lawyer.
Start with the method, because the method is what the cases turn on. CrustAPI reads public pages, signed out, with no accounts, no fake profiles, and no CAPTCHA solving. It only reads what any signed-out visitor sees.
In hiQ Labs v. LinkedIn, the Ninth Circuit held in 2019, and reaffirmed on April 18, 2022, that scraping data from a public website is not access "without authorization" under the Computer Fraud and Abuse Act, because a public page has no login gate to circumvent. The honest caveat: hiQ ultimately lost on contract, not on hacking. A court found it had breached LinkedIn's User Agreement, which binds people who signed in and agreed to it, including by using fake accounts, and it settled for $500,000 and shut down. The public-scraping-is-not-hacking point stands; the loss was for violating a contract hiQ had agreed to.
Two more recent rulings point the same way for logged-off data. On January 23, 2024, in Meta v. Bright Data, a federal court ruled that the Facebook and Instagram terms do not bar logged-off scraping of public data. On May 9, 2024, in X Corp. v. Bright Data, the court dismissed X's claims, finding attempts to block copying of public data preempted by federal copyright law.
The way to hold all of this in your head is the gate. Reading a public, logged-out page is like walking through an open door, there is no login gate to breach. Logging in, or creating fake accounts to log in, crosses an authorization gate. That distinction is why the account-based approach carries the risk that public reading does not.
The Bright Data rulings are district-court decisions, so they are persuasive, not nationwide binding precedent, and the X ruling was on a motion to dismiss. They turned on those platforms' specific terms. The fair way to say it is that courts have sided with public-data scrapers, not that scraping is legal or that the law is settled. This is background, not legal advice; check your own use with a lawyer.
You can run real work on the free tier before you pay anything, and paid credits do not expire on you.
No card. Resets to 3,000 each month; it does not stack. Enough to test on real profiles for real.
From $1.96 per 1,000 profiles, down to $0.65 at volume, and the credits never expire.
Packs are self-serve the whole way up, no sales calls: 25k $49 at $1.96 per 1k, 100k $149 at $1.49 per 1k, 500k $549 at $1.10 per 1k, 2.5M $1,999 at $0.80 per 1k, 10M $6,500 at $0.65 per 1k, ex-tax. One credit is one successful result; private or empty results are free. Enriched people search is the one exception: it charges one credit per full profile returned.
Point one GET request at a public profile and get clean JSON back. No cookie, no account, no proxy pool to babysit. Test it free and see the receipt for yourself.
Get 3,000 free credits