LinkedIn Email Finder: a profile URL in, a work email out
Send a public LinkedIn profile URL. Get back a verified work email with the person's name, job title, company, company domain and location attached. 30 credits on a match, and a profile that resolves to no email costs you nothing.

30
Credits per email found
charged only on a match
0
Credits when nothing is found
a miss returns 200 and bills nothing
8
Fields back on a match
email, name, title, employer and location
2.5x
Cheaper than B2B Contact Append
that one is 75 credits per match
What LinkedIn Email Finder gives you
A profile URL in, a work email out
One field goes in and one address comes back, with the identity fields attached so you can file it against the right record. No name to spell, no company domain to look up first, no browser session involved.
- One input field
- Verified work email out
- Name, title and employer attached
- City, region and country too
Only charged on a match
A profile that resolves to no email is a normal 200 response that deducts zero credits. That rule holds on the API, in the dashboard and in bulk CSV jobs, so a scraped list of profile URLs costs you only the rows that turned into an address.
- Zero credits on a miss
- Same rule in bulk jobs
- Misses still return 200
- No minimum commitment
Send the URL however you store it
profile_url is the documented field, but profileUrl, linkedin_url, linkedinUrl and url are all accepted, and username or vanity takes the bare handle. Locale subdomains, trailing slashes and tracking parameters are stripped before anything runs.
- camelCase or snake_case
- linkedin_url, url, vanity accepted
- Bare username accepted
- Tracking params stripped
It finds an address, it does not test one
This endpoint returns a work email, not a deliverability verdict. There is no bounce score, no catch-all detection and no send-safety rating anywhere in the response. Run the matches through Email Validation before they enter a sequence.
- No bounce score
- No catch-all detection
- Pair it with Email Validation
- Honest about the gap
Bulk CSV with one column
Upload a CSV with a profile_url column and every row runs the same lookup. The output puts Status, Error, Matched, Email, Full Name, Job Title, Company, Company Domain and Credits Used next to your input column, and empty rows show zero credits used.
- One profile_url column
- Credits Used shown per row
- Bad rows skipped, batch survives
- Template in the dashboard
Same credits, same API key
One balance covers this, profile lookups, contact append, email validation and everything else in the catalog. No separate contract, no per-seat licence and no extension to roll out to a team.
- Universal credits
- Credits roll over
- One API key
- No seats to buy
How a lookup runs
Send one profile URL
POST the profile link you already have on the record. profile_url is the documented field, and profileUrl, linkedin_url, linkedinUrl and url are accepted aliases. A bare vanity username works too.
$ POST /v1/linkedin-email-finder
"profile_url": ".../in/avery-chen"
> linkedin_url and url also accepted
> bare username works too
We resolve the person, then the email
Locale subdomains, trailing slashes and tracking parameters are stripped so every spelling of a profile collapses to one canonical URL. From there the person is tied to their employer and the work email is looked up.
Profile URL canonicalized
Locale and tracking params stripped
Person matched to a company domain
Searching for a work email...
Take the email or the empty row
A match returns the address with name, title, employer and location beside it, and bills 30 credits. A miss returns a 200 with matched false and zero credits, so nothing about the result is hidden behind an error.
matchedtrue
work_emailavery.chen@acme.com
titleVP of Revenue Operations
One endpoint. A public LinkedIn profile URL in, structured data out.
Same authentication, same credit balance, and the same response envelope as every other 1Lookup product. If you have already integrated one endpoint, this one is a URL change.
curl -X POST https://app.1lookup.io/api/v1/linkedin-email-finder \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{ "profile_url": "https://www.linkedin.com/in/avery-chen" }'{
"success": true,
"data": {
"classification": {
"matched": true,
"work_email": "avery.chen@acme.com",
"full_name": "Avery Chen",
"job_title": "VP of Revenue Operations",
"company": "Acme Analytics",
"company_domain": "acme.com",
"city": "San Francisco",
"region": "California",
"country": "United States",
"profile_url": "https://www.linkedin.com/in/avery-chen"
},
"insights": {
"linkedin_email_finder": {
"work_email": "avery.chen@acme.com",
"full_name": "Avery Chen",
"first_name": "Avery",
"job_title": "VP of Revenue Operations",
"profile_url": "https://www.linkedin.com/in/avery-chen",
"company": "Acme Analytics",
"company_domain": "acme.com",
"company_city": "San Francisco",
"company_region": "California",
"company_country": "United States",
"city": "San Francisco",
"region": "California",
"country": "United States"
}
},
"metadata": {
"credits_used": 30,
"cache_hit": false
}
}
}What a matched profile URL comes back as
One call turns a profile link into a row you can mail, route and file: the work email on top, with the identity and location fields that let you match it to the record you already have. The two rows marked Not included are there on purpose, because knowing what this endpoint does not return is what stops it being used for the wrong job.
- Matchedtrue
- Emailavery.chen@acme.com
- Full nameAvery Chen
- Job titleVP of Revenue Operations
- CompanyAcme Analytics
- Company domainacme.com
- CitySan Francisco
- RegionCalifornia
- CountryUnited States
- Credits used30
- Personal emailNot included
- Deliverability scoreNot included
{
"success": true,
"data": {
"classification": {
"matched": true,
"work_email": "avery.chen@acme.com",
"full_name": "Avery Chen",
"job_title": "VP of Revenue Operations",
"company": "Acme Analytics",
"company_domain": "acme.com",
"city": "San Francisco",
"region": "California",
"country": "United States",
"profile_url": "https://www.linkedin.com/in/avery-chen"
},
"insights": {
"linkedin_email_finder": {
"work_email": "avery.chen@acme.com",
"full_name": "Avery Chen",
"first_name": "Avery",
"job_title": "VP of Revenue Operations",
"profile_url": "https://www.linkedin.com/in/avery-chen",
"company": "Acme Analytics",
"company_domain": "acme.com",
"company_city": "San Francisco",
"company_region": "California",
"company_country": "United States",
"city": "San Francisco",
"region": "California",
"country": "United States"
}
},
"metadata": {
"credits_used": 30,
"cache_hit": false
}
}
}Every field you get back
No hidden tiers. Every field below is returned on a successful lookup at the price shown above.
Match
- matched
- work_email
- full_name
- job_title
- company
- company_domain
Location
- city
- region
- country
Insight
- linkedin_email_finder.profile_url
- linkedin_email_finder.email
- linkedin_email_finder.full_name
- linkedin_email_finder.job_title
- linkedin_email_finder.company_domain
Billing and cache
- credits_used
- credits_remaining
- cache_hit
- cached_at
Request echo
- id
- type
- input
- timestamp
- processing_time_ms
Who uses LinkedIn Email Finder
Outbound teams working from a profile list
A saved search or an export leaves you with a few hundred profile URLs and no way to reach anyone on it. Run the column through and the email lands beside each row with the title and employer to personalize on. The profiles that resolve to nothing do not decide your bill.
Recruiters moving a shortlist off-platform
You have the candidates but the conversation is stuck behind a platform inbox and a message limit. Turn each profile URL into a work email so the follow-up lands somewhere they actually read, and pay only for the candidates you can actually reach.
RevOps filling gaps on CRM records
Plenty of contact records carry a LinkedIn URL and nothing sendable, which quietly breaks routing and sequencing. Enrich them in one batch and write the matches back, then send the addresses through Email Validation before anything is scheduled.
Agencies running client campaigns
A client hands over a spreadsheet of profile links for the accounts they want opened. Fill in the emails at 30 credits a match, validate them before the first send, and invoice on matched records rather than on attempts.
Frequently asked questions
What does the LinkedIn Email Finder return?
A verified work email, or nothing. When there is a match you also get the person's full name, job title, company, company domain and their city, region and country, so the row is usable without a second call. What you will not get is a personal address, a phone number or the person's job history: those belong to other endpoints.
What do I send as the input?
One public LinkedIn profile URL, such as https://www.linkedin.com/in/avery-chen. The field is profile_url, and profileUrl, linkedin_url, linkedinUrl and url all work if that is what your code already calls it. You can also send just the vanity username with username or vanity. Locale subdomains, trailing slashes and tracking parameters are stripped for you.
Am I charged when no email is found?
No. A miss is a normal 200 response with matched false and zero credits deducted, and the same rule holds on the API, in the dashboard and in bulk CSV jobs. You are charged 30 credits when an email comes back and nothing at all when one does not, so the quality of your profile list does not quietly decide your bill.
Is there a LinkedIn email finder Chrome extension?
No. This is an API and a bulk CSV job, not a browser extension, and we would rather say so than let you find out after signing up. There is nothing to install and nothing that watches your browsing. If your workflow today is clicking an extension on one profile at a time, the equivalent here is pasting a column of profile URLs into a CSV and getting the whole list back at once, or calling the endpoint from your own tooling.
What match rate should I expect?
We do not publish one, because we have not measured a number on our own traffic that we would stand behind. Anyone quoting you a headline percentage is quoting a vendor's own test on a list you have never seen. The billing is your protection instead: you pay for the emails you actually get, and the profiles that come back empty cost nothing.
Is the email checked for deliverability?
No, and this is the limit worth knowing before you buy. There is no bounce score, no catch-all detection and no deliverability verdict anywhere in the response. If the address is going straight into a sequence, run it through Email Validation first and send on that result.
How is this different from LinkedIn Profile Lookup and B2B Contact Append?
By what you get back and what it costs. LinkedIn Profile Lookup is 10 credits and returns the profile itself, including role history, education and skills, with no email. This one is 30 credits and returns the work email plus enough identity to file it. B2B Contact Append is 75 credits and returns the fullest record, adding seniority, departments and employment history. Pick the cheapest one that answers your question.
Can I run a whole list of profile URLs at once?
Yes. Bulk CSV takes a single profile_url column and runs every row through the same endpoint. Rows without a usable profile URL are skipped rather than failing the batch, so the rest of the file still runs. Your output adds Matched, Work Email, Name, Job Title, Company, Company Domain, City, Region and Country beside your input column, and the rows that found nothing show zero credits used.
Pairs well with
How LinkedIn Email Finder compares
Verified pricing and scope against the products buyers usually weigh this one against. Every number on those pages carries its source and the date it was checked.