LinkedIn lead generation API
Most lead lists fail because they are built on firmographics alone: right industry, right headcount, no reason to care this quarter. The endpoints below let you start from a signal and work backwards to the people.
Endpoints used
/v1/profile-search
Search profiles
From $0.0180 per request at Scale
/v1/company-search
Search companies
From $0.0180 per request at Scale
/v1/post-search
Search posts
From $0.0180 per request at Scale
The problem with a filter-only list
You can build a list of every VP of Engineering at a 200–1,000 person software company in three minutes. So can everyone else selling to them, which is why that list converts at roughly the rate of cold mail generally: badly.
What changes the number is a reason. Someone who commented on a post about the exact problem you solve, or works at a company that just posted four roles on the team you sell into, is a different prospect from someone who merely matches a filter. The API gives you both halves — the filter and the signal — so you can require both.
A workflow that starts from intent
- Find the conversation.
post-searchwith the keywords your buyers use when they have the problem. Sort by recency, bound withpostedLimitso you only see this week. - Pull the people who engaged.
post-commentsandpost-reactionson the posts worth caring about. A comment is a stronger signal than a reaction, and the comment text lets you filter on what was actually said. - Qualify against your ICP. You now have profile identifiers.
profile-searchfiltered oncurrentCompanyandtitleconfirms fit, orprofilegives you the full record if you want work history. - Enrich the account.
companyon the employer for headcount, industry and specialities so routing and scoring have something to work with.
Only step four is per-record. Steps one to three are per-page, which is why this costs far less than enriching a filter list of the same size.
Search first, enrich second
The single biggest cost mistake is resolving a full profile for everyone who matches a query. Search results already carry name, public identifier, headline, position, location and photo — enough to score a lead and often enough to write the first line of an email.
Resolve the full profile only for people who survive scoring. On a 2,000-name list where 200 make the cut, that is 200 profile calls instead of 2,000: at Pro rates, $7.42 instead of $74.24. The full-profile call is the expensive one on this platform, and treating it as a second pass rather than a first is most of the difference between a sensible bill and a surprising one.
What this will not do
It will not give you email addresses. There is no email endpoint here and there is not going to be one — addresses are not part of a public profile. Teams generally pair this with a dedicated email provider or with the addresses they already hold in their CRM.
It will not give you a complete roster of any company, because employee lookup runs through relevance-ranked search rather than a table dump. And it will not tell you anything a signed-out visitor could not see, which is a real constraint on how deeply you can qualify before you talk to someone.
You are also the data controller for everything you retrieve. Our acceptable use policy sets out what that means in practice, including having a lawful basis before you start.
Frequently asked questions
How much does it cost to build a list of 1,000 leads?
Search is priced per page, so paging to 1,000 results costs roughly $8 at Starter and $3.60 at Scale. Resolving full profiles for all 1,000 would add $64 at Starter — which is why the recommended pattern is to score from search results first and enrich only the shortlist.
Can I get email addresses for my leads?
No. Email addresses are not part of a public LinkedIn profile, so no endpoint here returns them and we do not offer email enrichment at any price.
Is it legal to build lead lists from LinkedIn data?
Scraping public data has generally been treated differently from accessing private data, but the position varies by jurisdiction and by what you then do with the data. Under the GDPR you need a lawful basis for processing and must honour objection and deletion requests. This is not legal advice — see our acceptable use policy and take your own.
How fresh are the leads?
Every call is fetched at request time rather than served from a stored dataset, so a job change made yesterday shows up today. That is the main practical difference from database providers whose records can be months old.
Can I run this on a schedule?
Yes. A common pattern is a daily post-search bounded with postedLimit, feeding new engagers into your CRM. Keep the newest post ID you have processed and stop paging when you reach it.