TL;DR
- A LinkedIn data API comes in three kinds: LinkedIn's official API, a scraped-data provider, or an API that reads and acts through your own connected account, like Curviate.
- LinkedIn's official API opens only sign-in, email and posting to every developer. Profiles, search, messages, Sales Navigator and Recruiter need partner approval or are closed.
- Curviate gives builders 133 LinkedIn reads and actions through their own account for $30 per account a month, with no scraping and no partner program.
The LinkedIn data API you can actually use depends on what you need: LinkedIn's official API covers sign-in and posting, scraped-data providers sell copies of profiles, and an account-based API reads and acts live through your own LinkedIn account. For most builders who want profiles, search and messages for their own team, the third option is the one that does not hang on someone else's access to LinkedIn. I build Curviate, which is that third kind, so weigh my view accordingly.
Does LinkedIn have an API?
Yes: LinkedIn has an official API, but it opens far less of LinkedIn than most builders expect. LinkedIn's developer docs say: "Most permissions and partner programs require explicit approval from LinkedIn. Open Permissions are the only permissions that are available to all developers without special approval."
Those open permissions are three. You can sign a member in and read their name, headline and photo. You can read their primary email address. You can post, comment and like on their behalf.
Everything else sits behind a program:
- Sales. Sales Navigator endpoints need approval as a Sales Navigator Application Platform (SNAP) partner.
- Talent. Recruiter System Connect, Apply Connect and the job programs are by application.
- Marketing. The Advertising API needs approval, and audience permissions come after that.
- Compliance. Listed for reference only: "Access is closed and may not be requested."
If you are building a CRM sync, a recruiting tool or an AI agent that reads profiles, the open tier does not get you there.
What the official API leaves out
Read the open permissions again and look for what a sales or recruiting workflow needs. There is no endpoint to read another member's profile. No people search. No sending a message or an invitation. No inbox.
Partner programs fill some of that, for companies LinkedIn picks. A SNAP partner gets Sales Navigator display and validation permissions, not a general way to message prospects. Approval is a business process, not a signup form, so plan for a review and a real chance of a no.
For an internal tool, a startup, or an agent that one sales team runs on its own accounts, that path rarely fits. Which is why the other two options exist.
Scraper APIs, and what happened to Proxycurl
A scraper API, or scraped-data provider, sells profile and company data that it collected from LinkedIn itself. You send a LinkedIn URL and get back JSON. The appeal is obvious: no LinkedIn account on your side, high volume, a clean schema.
The risk is in the source. LinkedIn's help center says it does not permit "any third party software, including "crawlers", bots, browser plug-ins, or browser extensions that scrape, modify the appearance of, or automate activity on LinkedIn's website", and its User Agreement section 8.2 bans tools that "scrape or copy the Services, including profiles and other data from the Services."
Proxycurl shows what that risk looks like for the customer. On July 4, 2025, it posted: "Today, we are shutting Proxycurl down." The same post says LinkedIn filed a lawsuit against Proxycurl in January 2025, and that it closed "to comply with the legal settlement with LinkedIn." Teams that had built on its endpoints had to migrate.
For a builder looking for a Proxycurl alternative, the choice is about more than a schema and a price. It decides how exposed your product is to one provider's dispute with LinkedIn, which you cannot see from the outside.
Two smaller issues follow from the same model. A stored copy of a profile is as old as the last crawl, so job changes show up late. And you can read, but you cannot act: a data provider does not send the message that the data was for.
Your own account, through an API
The third option starts from a LinkedIn account you already have. You connect it, and an API reads and acts through it: the same profiles, searches and chats you see when you log in, inside that account's limits.
This is how Curviate works. Its terms put it plainly: "We don't scrape LinkedIn, and we don't operate on accounts we're not authorized to use. Actions run through native LinkedIn flows, paced to resemble ordinary human use, on the account you connect and control."
What that gives a builder:
- Reads through your account. Profiles, companies, people search, posts and chats, as your account sees them. Each read can go live to LinkedIn or accept a recent stored copy, and you set how fresh it must be.
- Actions as well as reads. Invitations, messages, comments, reactions and posts, from the same key.
- Sales Navigator and Recruiter, with your own licence: the operations need the matching subscription on the connected account, and they are still marked beta.
- A stored network. Each account's connections are synced, so listing them across accounts calls LinkedIn zero times and uses no limit.
- Limits per account. Every action and read counts against that account's limits, set to its LinkedIn plan, and stops there.
- Data in the EU. For the LinkedIn data you act on, you are the controller and Curviate is the processor.
The honest catch: it is not a bulk database. An account reads at a human pace. If you need ten million profiles by Friday, an account-based API is the wrong tool, and no LinkedIn account should be doing that job anyway.
Here is a profile read, first from the CLI and then over REST:
# Read a profile through your own connected account
curviate core profile https://www.linkedin.com/in/raphael-redmer/
# The same read over REST
curl https://api.curviate.com/v1/$ACCOUNT_ID/users/raphael-redmer -H "Authorization: Bearer $CURVIATE_API_KEY"
The same operations sit behind the TypeScript SDK and the hosted MCP server, so an AI agent such as Claude can call them as tools. Why an agent should call an API instead of driving a browser has its own write-up.
The three options side by side
The table compares the three kinds on the jobs a builder brings to them. Each one wins somewhere.
| Feature | Official LinkedIn API | Scraped-data provider | Curviate (your account) |
|---|---|---|---|
| Approved by LinkedIn | |||
| Open to any developer | Sign-in, email, posting only | ||
| Read any member's profile | Partners only | A provider's stored copy | Through your account, freshness you set |
| People search | Partners only | Varies by provider | |
| Send invitations and messages | |||
| Sales Navigator and Recruiter | Partner programs | With your own licence (beta) | |
| Millions of records in bulk | |||
| Depends on a provider's own LinkedIn access |
Two rows deserve a plain reading. Only the official API is approved by LinkedIn: Curviate is third-party software too, and LinkedIn's prohibited-software page covers it. Curviate's design, one real account per person at a human pace with limits that stop, lowers that risk; it does not remove it. And only a data provider sells volume. If your job is enrichment at scale, buy data, and pick a provider whose sourcing you have read.
For everything in between, the reads and writes a team does every day, the account-based route is the one that does both. Builders comparing account-based APIs head to head can start with Curviate versus Linked API or the wider list of Curviate alternatives for builders.
Which LinkedIn data API fits your job?
Pick by the job, not by the endpoint list:
- Sign in with LinkedIn, or post for your users. The official API. It is free, approved and stable.
- A deep integration for a product LinkedIn wants to partner with, such as an ATS or a CRM. Apply to the partner program and plan for the review.
- Bulk enrichment of records you already hold. A data provider, after you have read how it sources its data and what happens to your pipeline if it stops.
- Profiles, search, messages and inbox for your own team's accounts, from code or an AI agent. An account-based API. That is Curviate Build.
If your team lands in the last line, you do not need all of LinkedIn. You need what your reps can already see, from a script or an agent, with no provider in the middle that might disappear.
Want to test it on a real account? Start a 7-day trial on the pricing page, no card needed.
Where Curviate fits
Curviate Build is the account-based API: $30 per connected LinkedIn account a month, with 279 API operations, 133 of them LinkedIn actions and reads, plus the CLI, the hosted MCP server, the TypeScript SDK and webhooks. Teammates are free; you pay per account, never per person.
Automate, at $60 per account, adds Motions, one inbox for every account and analytics on top of the same engine, for when the reads turn into outreach. API reference: docs.curviate.com.
Sources checked
- LinkedIn developer docs, Getting Access to LinkedIn APIs, updated June 3, 2026, read November 4, 2026.
- LinkedIn Help, Prohibited software and extensions, read November 4, 2026.
- Proxycurl, shutdown announcement, dated July 4, 2025, read November 4, 2026.
- Curviate terms, pricing and the API reference, read November 3, 2026.
