To extract data from a LinkedIn URL, send the profile URL to a people-enrichment API and parse the structured JSON it returns. With Captain Data's People Enrichment endpoint, a single POST to /v1/people/enrich with a LinkedIn /in/ URL gives you the person's full name, headline, current role, company, experiences, education, and skills — no scraper to build or keep alive. This guide shows the exact call, what to do when you only have a name, and how the same URL-in, JSON-out pattern works for company URLs and domains. One thing up front: Captain Data returns profile and firmographic data, not email or phone.
#Extract a profile from a LinkedIn URL
The core call is one POST to People Enrichment with the profile URL as li_profile_url. It accepts public /in/ profile URLs and returns a structured profile for 1 credit (2 credits with full_enrich, which adds recent experiences, education, and skills).
Request — POST /v1/people/enrich with body { "li_profile_url": "https://www.linkedin.com/in/jane-doe" }.
Response — structured JSON. The fields you'll use most:
- full_name, first_name, last_name — the person's name, parsed and ready to store.
- headline — their LinkedIn headline.
- job_title and company_name — current role and employer.
- location — city or region.
- li_profile_url and li_profile_id — canonical identifiers to dedupe against.
Set full_enrich to true to add the 5 most recent experiences, 2 most recent skills, and 2 most recent education entries. When the response flags has_more_experiences or has_more_skills, call the List Experiences and List Skills endpoints for the complete history.
#Don't have the URL? Resolve it from a name
If you start from a name instead of a URL, resolve it first. Pass the full name — and the company whenever you have it — to Find People (/v1/people/find). It returns the person's public LinkedIn URL and a stable uid, which you pass straight to People Enrichment for the full profile. Adding the company name is the single biggest accuracy lever for common names, so include it when you can. For the full walkthrough, see how to find a LinkedIn profile by name and company.
#Extract company data from a URL or a domain
The same pattern works for companies. Pass a LinkedIn company URL to Company Enrichment (/v1/companies/enrich) for firmographics — industry, headcount, HQ, and locations. Only have a domain? Resolve it with Find Company (/v1/companies/find), which returns the company's LinkedIn URL and uid. From that uid, Find Employees lists the people at the account.
#Why use an API instead of scraping a LinkedIn URL
Scraping a LinkedIn URL yourself means building and babysitting the extraction, rotating infrastructure, and re-fixing it every time the page changes. A managed data API removes that: you call a versioned REST endpoint and get fresh, structured JSON from 750M+ profiles, with no pipeline to maintain. Captain Data focuses on profile and firmographic data — not email or phone — which keeps it a clean, auditable source you can defend. For the product view, see the data extraction API page.
Start extracting — get an API key with 100 free credits, or explore People Enrichment in detail.