# LinkedIn Profile Extractor & Enricher (No Login Required) ✅ (`unseenuser/linkedin-profile`) Actor

Extract complete LinkedIn profile data - experience, education, skills, certifications, location, headline. No login, no cookies. Built for B2B sales and lead-gen teams.

- **URL**: https://apify.com/unseenuser/linkedin-profile.md
- **Developed by:** [Unseen User](https://apify.com/unseenuser) (community)
- **Categories:** Automation, Lead generation, Social media
- **Stats:** 151 total users, 52 monthly users, 100.0% runs succeeded, 7 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

$4.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

<h1>LinkedIn Profile Extractor (No Login Required)</h1>

<p><strong>$4 per 1,000 profiles. No cookies. No login. No account risk.</strong><br>
Extract full LinkedIn profile data at scale — names, headlines, work history, education, skills, certifications, and 20+ structured fields per profile. Built for B2B sales prospecting, recruiting, CRM enrichment, and market research.</p>

<h2>Use Cases</h2>

<ul>
  <li><strong>B2B sales prospecting</strong> — Build targeted lead lists with full LinkedIn profile data for outreach campaigns. Feed directly into HubSpot, Salesforce, or Clay.</li>
  <li><strong>Recruiting &amp; talent sourcing</strong> — Extract candidate profiles at scale. Filter by country to build geo-specific talent pipelines.</li>
  <li><strong>Account-based marketing (ABM)</strong> — Research key decision-makers at target accounts before personalized outreach.</li>
  <li><strong>CRM enrichment</strong> — Auto-populate your CRM with fresh LinkedIn data. Keep contact records current without manual entry.</li>
  <li><strong>Market research</strong> — Analyze professional demographics, job titles, skill distributions, and career trajectories across industries.</li>
  <li><strong>Competitive intelligence</strong> — Monitor hiring patterns, team composition, and employee movement at competitor companies.</li>
  <li><strong>Influencer outreach</strong> — Identify and research industry thought leaders for partnership and collaboration opportunities.</li>
</ul>

<h2>Key Features</h2>

<table>
  <thead>
    <tr>
      <th>Feature</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><strong>No login required</strong></td><td>Access publicly available LinkedIn profile data without cookies, credentials, or account risk</td></tr>
    <tr><td><strong>Real-time data</strong></td><td>Fresh data scraped on every run — never cached or stale</td></tr>
    <tr><td><strong>Bulk processing</strong></td><td>Scrape thousands of profiles with 50 high-concurrency parallel requests</td></tr>
    <tr><td><strong>Country filtering</strong></td><td>Select countries from a dropdown to only keep profiles from those locations</td></tr>
    <tr><td><strong>Flexible input</strong></td><td>Accept profile URLs, public identifiers, Sales Navigator URLs, or numeric profile IDs</td></tr>
    <tr><td><strong>Migration-safe</strong></td><td>State is automatically preserved across Apify actor migrations — no lost work</td></tr>
    <tr><td><strong>Structured output</strong></td><td>Clean JSON/CSV/Excel with 20+ fields per profile, ready for CRM import</td></tr>
  </tbody>
</table>

<h2>Pricing</h2>

<p><strong>$4 per 1,000 profiles.</strong> Pay only for successfully scraped profiles. No subscriptions, no minimums.</p>

<h2>Free plan limit</h2>

<p>Free Apify users get up to <strong>15 results per run</strong>. Paying users are not affected and receive results normally.</p>

<p>This limit was set by the Actor developer, not by Apify. To remove it and receive unlimited results, upgrade to any paid Apify plan: <a href="https://apify.com/pricing">https://apify.com/pricing</a></p>

<p>When a free plan run hits the cap, the Actor finishes successfully (status <code>SUCCEEDED</code>) and the run's status message explains what happened. No error is raised, so the first 15 results are fully usable as normal.</p>

<h2>Input</h2>

<h3>Target URLs (recommended)</h3>

<p>The simplest way to use this LinkedIn profile scraper. Provide profile URLs, public identifiers, or Sales Navigator profile URLs:</p>

```json
{
  "queries": [
    "https://www.linkedin.com/in/williamhgates",
    "https://www.linkedin.com/in/towhid-rahman",
    "satyanadella"
  ]
}
````

<h3>Country Filter</h3>

<p>Select countries from the dropdown to filter by location. Only profiles from selected countries are included in the output. Leave empty to keep all profiles.</p>

```json
{
  "countryFilter": ["United States", "United Kingdom"],
  "queries": [
    "https://www.linkedin.com/in/williamhgates",
    "https://www.linkedin.com/in/towhid-rahman"
  ]
}
```

<h3>Advanced Input</h3>

<p>For more control, use the dedicated fields under the <strong>Advanced</strong> section:</p>

<ul>
  <li><strong>Profile URLs</strong> — Full LinkedIn profile URLs</li>
  <li><strong>Public Identifiers</strong> — The username portion of a profile URL (e.g., <code>williamhgates</code>)</li>
  <li><strong>Profile IDs</strong> — LinkedIn numeric profile IDs</li>
</ul>

```json
{
  "countryFilter": ["Israel", "Germany"],
  "urls": ["https://www.linkedin.com/in/williamhgates"],
  "publicIdentifiers": ["satyanadella", "towhid-rahman"],
  "profileIds": ["123456789"]
}
```

<h2>Output</h2>

<p>Results are exported as a dataset in <strong>JSON</strong>, <strong>CSV</strong>, or <strong>Excel</strong> format via the Apify console or API. The dataset includes two views:</p>

<ul>
  <li><strong>Overview</strong> — Summary table with name, profile URL, headline, location, connections, and followers</li>
  <li><strong>Detailed</strong> — Full table with all fields including experience, education, skills, and more</li>
</ul>

<h3>Output Fields</h3>

<table>
  <thead>
    <tr>
      <th>Field</th>
      <th>Type</th>
      <th>Description</th>
    </tr>
  </thead>
  <tbody>
    <tr><td><code>fullName</code></td><td>string</td><td>Full name (first + last combined)</td></tr>
    <tr><td><code>firstName</code></td><td>string</td><td>First name</td></tr>
    <tr><td><code>lastName</code></td><td>string</td><td>Last name</td></tr>
    <tr><td><code>profileUrl</code></td><td>string</td><td>Full LinkedIn profile URL</td></tr>
    <tr><td><code>publicIdentifier</code></td><td>string</td><td>Public username / URL slug</td></tr>
    <tr><td><code>headline</code></td><td>string</td><td>Profile headline</td></tr>
    <tr><td><code>location</code></td><td>string</td><td>Location (city, state, country)</td></tr>
    <tr><td><code>about</code></td><td>string</td><td>About / summary section</td></tr>
    <tr><td><code>connectionsCount</code></td><td>number</td><td>Number of connections</td></tr>
    <tr><td><code>followerCount</code></td><td>number</td><td>Number of followers</td></tr>
    <tr><td><code>experience</code></td><td>array</td><td>Work experience — titles, companies, dates, locations, descriptions</td></tr>
    <tr><td><code>education</code></td><td>array</td><td>Education — schools, degrees, fields of study, dates</td></tr>
    <tr><td><code>skills</code></td><td>array</td><td>Skills and endorsements</td></tr>
    <tr><td><code>certifications</code></td><td>array</td><td>Professional certifications</td></tr>
    <tr><td><code>languages</code></td><td>array</td><td>Languages spoken</td></tr>
    <tr><td><code>projects</code></td><td>array</td><td>Projects listed on profile</td></tr>
    <tr><td><code>publications</code></td><td>array</td><td>Publications</td></tr>
    <tr><td><code>websites</code></td><td>array</td><td>Websites listed on profile</td></tr>
    <tr><td><code>id</code></td><td>string</td><td>LinkedIn profile ID</td></tr>
  </tbody>
</table>

<h3>Sample Output</h3>

```json
{
  "firstName": "Bill",
  "lastName": "Gates",
  "fullName": "Bill Gates",
  "publicIdentifier": "williamhgates",
  "profileUrl": "https://www.linkedin.com/in/williamhgates",
  "headline": "Co-chair, Bill & Melinda Gates Foundation",
  "location": "Seattle, Washington, United States",
  "about": "Co-chair of the Bill & Melinda Gates Foundation. Techno-optimist. Eli and Rory's dad.",
  "connectionsCount": 500,
  "followerCount": 35000000,
  "experience": [
    {
      "title": "Co-chair",
      "companyName": "Bill & Melinda Gates Foundation",
      "startDate": "2000-01",
      "endDate": null,
      "location": "Seattle, WA",
      "description": "Working to help all people lead healthy, productive lives..."
    },
    {
      "title": "Co-founder",
      "companyName": "Microsoft",
      "startDate": "1975-04",
      "endDate": "2006-06",
      "location": "Redmond, WA",
      "description": null
    }
  ],
  "education": [
    {
      "schoolName": "Harvard University",
      "degreeName": null,
      "fieldOfStudy": null,
      "startDate": "1973",
      "endDate": "1975"
    },
    {
      "schoolName": "Lakeside School",
      "degreeName": null,
      "fieldOfStudy": null,
      "startDate": null,
      "endDate": "1973"
    }
  ],
  "skills": ["Technology", "Philanthropy", "Software Development", "Public Speaking"],
  "certifications": [],
  "languages": ["English"],
  "projects": [],
  "publications": [],
  "websites": ["https://www.gatesnotes.com"],
  "id": "12345678"
}
```

<h2>Build a B2B Lead-Gen Pipeline</h2>

<p>Combine this LinkedIn profile extractor with other scrapers to build a complete lead generation workflow:</p>

<pre>
Company Scraper → Profile Extractor → CRM (HubSpot / Salesforce / Clay)
</pre>

<h3>Push to HubSpot (n8n / Make / Zapier)</h3>

```json
{
  "email": "{{email}}",
  "firstname": "{{firstName}}",
  "lastname": "{{lastName}}",
  "jobtitle": "{{headline}}",
  "linkedin_url": "{{profileUrl}}",
  "city": "{{location}}"
}
```

<h3>Push to Salesforce</h3>

```json
{
  "FirstName": "{{firstName}}",
  "LastName": "{{lastName}}",
  "Title": "{{headline}}",
  "LinkedIn_URL__c": "{{profileUrl}}",
  "Description": "{{about}}"
}
```

<h3>Use with Clay</h3>

<p>Import the Apify dataset CSV directly into Clay as an enrichment source. Map <code>profileUrl</code> to Clay's LinkedIn URL column for automatic waterfall enrichment.</p>

<h2>FAQ</h2>

<h3>Does this work with Sales Navigator URLs?</h3>
<p>Yes. Paste Sales Navigator profile URLs directly into the Target URLs field. The actor automatically resolves them.</p>

<h3>What about GDPR / CAN-SPAM compliance?</h3>
<p>This actor extracts publicly available LinkedIn profile data. You are the data controller for any personal data you obtain. You must establish a lawful basis (e.g., legitimate interest under GDPR Article 6) and comply with all applicable privacy laws before using the data for outreach. See the full Terms of Service below for details.</p>

<h3>What data is NOT returned?</h3>
<p>This actor does not return: private messages, connection lists, profile view analytics, saved posts, LinkedIn Premium insights, or any data behind LinkedIn's login wall.</p>

<h3>How fast is it?</h3>
<p>With 50 concurrent workers, the actor processes approximately 1,000–3,000 profiles per minute depending on API response times.</p>

<h3>What if a profile is private or doesn't exist?</h3>
<p>Private profiles and invalid URLs are skipped with an error log. You are not charged for profiles that return no data.</p>

<h3>Can I filter by country?</h3>
<p>Yes. Use the Country Filter dropdown to select one or more countries. Only profiles whose location matches will appear in the output.</p>

<h2>Related Scrapers</h2>

<p>Build the complete B2B lead-gen pipeline:</p>

<ul>
  <li><a href="https://apify.com/unseenuser/LinkedIn-Company-Scraper">LinkedIn Company Scraper Pro</a> — research target accounts before extracting profiles</li>
  <li><a href="https://apify.com/unseenuser/LinkedIn-Jobs-Scraper">LinkedIn Jobs Scraper</a> — hiring signals for trigger-based outbound</li>
  <li><a href="https://apify.com/unseenuser/linkedin-post-comment-reaction-extractor-no-cookies">LinkedIn Post Comments &amp; Reactions Scraper</a> — find warmer leads via engagement signals</li>
</ul>

<p><a href="https://apify.com/unseenuser">See all scrapers by unseenuser</a></p>

<h2>Technical Details</h2>

<ul>
  <li>Built with <a href="https://docs.apify.com/sdk/js">Apify SDK</a> and TypeScript</li>
  <li>Powered by <a href="https://harvest-api.com">Harvest API</a> for reliable LinkedIn data retrieval</li>
  <li>High-concurrency worker pool (50 parallel requests) for fast bulk processing</li>
  <li>Automatic state persistence across Apify actor migrations</li>
  <li>Pay-per-event billing — you only pay for successfully scraped profiles</li>
  <li>Memory footprint: 128–512 MB</li>
</ul>

<h2>Disclaimer</h2>

<p>This tool is not affiliated with, endorsed by, or connected to LinkedIn Corporation in any way. It accesses only publicly available profile data through the Harvest API. Use of this actor is subject to LinkedIn's Terms of Service and all applicable data protection laws and regulations. Users are solely responsible for ensuring their use complies with all relevant terms of service, privacy regulations (including GDPR, CCPA, and similar frameworks), and local laws. The developers assume no liability for any misuse or legal consequences arising from the use of this tool.</p>

***

<h2>Terms of Service</h2>

<h3>0. ACCEPTANCE BY USE — IMPORTANT</h3>

<p><strong>Read this section first.</strong></p>

<p>These Terms of Service ("Terms") form a binding legal agreement between you ("User," "you," "your") and UnseenUser, the Publisher of this Apify actor ("UnseenUser," "the Publisher," "we," "us," "our").</p>

<h4>0.1 How You Accept These Terms</h4>

<p>You accept these Terms by any of the following actions, each of which constitutes a clear, affirmative act of acceptance:</p>

<ul>
  <li><strong>(a)</strong> Running the Actor — Initiating any execution of the Actor on the Apify platform</li>
  <li><strong>(b)</strong> Using any output returned by the Actor for any purpose</li>
  <li><strong>(c)</strong> Continuing to access the Actor's listing or documentation after these Terms are visible</li>
</ul>

<h4>0.2 Continuing Acceptance</h4>

<p>Each time you run the Actor or use its outputs, you reaffirm your acceptance of the then-current Terms. If you do not agree to these Terms or any subsequent update, you must stop using the Actor immediately.</p>

<h4>0.3 No Anonymous Acceptance</h4>

<p>You cannot disclaim acceptance by:</p>

<ul>
  <li>Failing to read these Terms before running the Actor</li>
  <li>Running the Actor through automated systems</li>
  <li>Sharing your Apify account with others who may not have read these Terms</li>
</ul>

<p>By the act of running the Actor on Apify, you bind yourself, your organization (if applicable), and any individuals or systems acting on your behalf or under your authority.</p>

<h4>0.4 If You Do Not Accept</h4>

<p>If you do not agree to these Terms, you must not run the Actor. No use is authorized without acceptance.</p>

<h3>PREAMBLE — UNDERSTANDING THE ARCHITECTURE</h3>

<p>Before using the Actor, please understand the technical architecture of the service:</p>

<h4>The Data Flow</h4>

<pre>
You (User) → Apify Platform → Actor (software) → Third-Party API → Source Platform
                                                       ↓
You (User) ← Apify Platform ← Actor (software) ← Third-Party API
</pre>

<h4>What Each Party Does</h4>

<ul>
  <li><strong>You (the User):</strong> Run the Actor on the Apify platform with input parameters you choose</li>
  <li><strong>Apify:</strong> Operates the cloud infrastructure that hosts and executes Actors. Apify is a Czech-incorporated company (Apify Technologies s.r.o.) governed by its own Terms of Service.</li>
  <li><strong>The Publisher (us):</strong> Publishes software code (the Actor) on Apify's platform. The Actor is a thin wrapper that translates your input into requests to a third-party API and returns the API's responses to you. The Publisher does not operate scraping infrastructure. The Publisher does not store or retain data returned by the Actor. The Publisher does not see, log, or process the personal data of any individuals returned in the Actor's outputs beyond what is incidental to passing the data through.</li>
  <li><strong>Third-Party API Provider:</strong> <a href="https://harvest-api.com">HarvestAPI</a> or <a href="https://scrapecreators.com">Scrape Creators</a>. These are independent third-party companies that operate scraping infrastructure and return data from source platforms.</li>
  <li><strong>Source Platform:</strong> LinkedIn, TikTok, YouTube, Reddit, Linktree, etc. These are the platforms whose publicly visible data is accessed by the Third-Party API Providers.</li>
</ul>

<h4>Why This Matters</h4>

<p>Your relationship with the Publisher is that of a software user to a software vendor. The Publisher has the responsibilities of a software vendor (functional code, accurate documentation) and the limits of one (the Publisher is not responsible for how you use the data you obtain).</p>

<p>These Terms operate alongside but do not replace:</p>

<ul>
  <li>Apify's Terms of Service and Acceptable Use Policy (governing your relationship with Apify)</li>
  <li>HarvestAPI Terms of Service and Scrape Creators Terms of Service (governing the underlying data infrastructure)</li>
  <li>Source Platform terms (LinkedIn, TikTok, etc.) governing the public data accessed</li>
  <li>Applicable law in your jurisdiction and the jurisdictions of data subjects</li>
</ul>

<p>These Terms incorporate the actor-specific addendum published in each Actor's individual listing ("Addendum"). In the event of a conflict, the more restrictive provision applies.</p>

<h3>1. NATURE OF THE SERVICE</h3>

<h4>1.1 What the Actor Is</h4>

<p>The Actor is a software program published on the Apify platform. Each Actor:</p>

<ul>
  <li><strong>(a)</strong> Accepts structured input from you on the Apify platform</li>
  <li><strong>(b)</strong> Translates that input into HTTP requests to a third-party API operated by HarvestAPI or Scrape Creators</li>
  <li><strong>(c)</strong> Receives HTTP responses from that third-party API</li>
  <li><strong>(d)</strong> Returns the response data to you in a structured format on the Apify platform</li>
</ul>

<p>The Actor's source code is hosted on Apify's infrastructure. The Actor runs in Apify's cloud, not on the Publisher's servers. The Publisher operates no servers running the Actor.</p>

<h4>1.2 What the Actor Is Not</h4>

<p>The Actor is not:</p>

<ul>
  <li><strong>(a)</strong> A scraping tool — the Publisher does not operate scraping infrastructure, proxies, headless browsers, or fake accounts</li>
  <li><strong>(b)</strong> A direct connection to any source platform — connections to source platforms are made by HarvestAPI / Scrape Creators</li>
  <li><strong>(c)</strong> A data storage or data retention service — the Publisher does not maintain a database of any data the Actor returns</li>
  <li><strong>(d)</strong> A licensed access channel to LinkedIn, TikTok, YouTube, Reddit, X (Twitter), Meta, Linktree, or any other source platform</li>
  <li><strong>(e)</strong> Affiliated with, endorsed by, sponsored by, or authorized by any source platform</li>
</ul>

<h4>1.3 The Publisher's Limited Role</h4>

<p>The Publisher's role is limited to:</p>

<ul>
  <li><strong>(a)</strong> Designing and writing the Actor's source code</li>
  <li><strong>(b)</strong> Publishing the Actor on the Apify Store</li>
  <li><strong>(c)</strong> Maintaining the Actor (updating it when API providers change schemas)</li>
  <li><strong>(d)</strong> Providing documentation and customer support via Apify's contact mechanism</li>
</ul>

<p>The Publisher is a software vendor, similar to a developer who publishes an app on the Apple App Store or Google Play Store. The Publisher is not a data provider, data broker, data processor, or data controller for purposes of GDPR, CCPA, Israel's Privacy Protection Law, or equivalent.</p>

<h4>1.4 The Third-Party API Providers' Role</h4>

<p><a href="https://harvest-api.com">HarvestAPI</a> and <a href="https://scrapecreators.com">Scrape Creators</a> are independent third-party companies. They:</p>

<ul>
  <li><strong>(a)</strong> Operate the actual data scraping infrastructure</li>
  <li><strong>(b)</strong> Maintain relationships with source platforms (or accept the operational risk of accessing public data without such relationships)</li>
  <li><strong>(c)</strong> Are themselves Apify publishers (HarvestAPI publishes 9+ actors directly; Scrape Creators publishes 10+)</li>
  <li><strong>(d)</strong> Provide their own Terms of Service governing their operations</li>
  <li><strong>(e)</strong> Are responsible for compliance obligations relating to the data collection itself</li>
</ul>

<p>The Publisher is a customer of these providers. The Publisher is not their agent, partner, or representative.</p>

<h3>2. WHO MAY USE THE ACTOR</h3>

<h4>2.1 Eligibility</h4>

<p>You may use the Actor only if:</p>

<ul>
  <li><strong>(a)</strong> You are at least 18 years old or the age of majority in your jurisdiction</li>
  <li><strong>(b)</strong> You have legal capacity to enter into binding contracts</li>
  <li><strong>(c)</strong> You are not located in or resident of a country subject to comprehensive sanctions by the United States, European Union, United Kingdom, or Israel</li>
  <li><strong>(d)</strong> You are not on any prohibited persons list</li>
</ul>

<h4>2.2 User Representations</h4>

<p>By using any Actor, you represent and warrant that:</p>

<ul>
  <li><strong>(a) Truthful identity:</strong> Information you provide about your identity and intended use is accurate</li>
  <li><strong>(b) Lawful intent:</strong> Your intended use complies with applicable law in your jurisdiction</li>
  <li><strong>(c) Source platform compliance:</strong> You will independently comply with the Terms of Service of any source platform whose data you obtain through the Actor</li>
  <li><strong>(d) Data subject rights:</strong> Where Actor outputs include personal data, you will respect data subject rights under applicable law</li>
  <li><strong>(e) No prohibited use:</strong> You will not use the Actor for any of the purposes prohibited in Section 4</li>
</ul>

<p>These representations are continuous — they must remain true throughout your use.</p>

<h3>3. PERMITTED USES</h3>

<p>The Actor may be used for any lawful purpose, including:</p>

<ul>
  <li>Market research and competitive analysis</li>
  <li>Academic research</li>
  <li>Journalism and investigative reporting</li>
  <li>Internal business intelligence</li>
  <li>Brand monitoring</li>
  <li>Recruitment research where consistent with applicable employment law</li>
  <li>Building products that further process publicly available information lawfully</li>
</ul>

<h3>4. PROHIBITED USES</h3>

<p>You may not use the Actor for any of the following:</p>

<h4>4.1 Illegal Activity</h4>
<p>Activity illegal under the law of your jurisdiction, the User's jurisdiction, or the jurisdiction of any data subjects.</p>

<h4>4.2 Harassment, Stalking, and Personal Targeting</h4>
<ul>
  <li>Compiling profiles for harassment, stalking, or doxxing</li>
  <li>Tracking individuals' movements or activities without their knowledge</li>
  <li>Building profiles of journalists, activists, dissidents, or vulnerable populations for retaliatory purposes</li>
</ul>

<h4>4.3 Discrimination</h4>
<ul>
  <li>Using outputs for discriminatory employment, lending, housing, or insurance decisions based on protected characteristics</li>
  <li>Building lists for discriminatory purposes</li>
</ul>

<h4>4.4 Spam and Unsolicited Commercial Communication</h4>
<ul>
  <li>Sending unsolicited marketing in violation of CAN-SPAM, CASL, GDPR, PECR, Israeli Anti-Spam Law, or equivalent laws</li>
  <li>Building "lead lists" from scraped contacts without proper consent infrastructure</li>
  <li>Reselling contact data for spam purposes</li>
</ul>

<h4>4.5 Fraud and Deception</h4>
<ul>
  <li>Identity theft or impersonation</li>
  <li>Generation of fake reviews, testimonials, or coordinated inauthentic behavior</li>
  <li>Election interference or political disinformation</li>
  <li>Securities fraud</li>
</ul>

<h4>4.6 Source Platform Abuse</h4>
<ul>
  <li>Using outputs to circumvent technical protection measures of source platforms</li>
  <li>Creating fake accounts on source platforms based on Actor outputs</li>
  <li>Vote manipulation, engagement manipulation, or platform algorithm gaming</li>
  <li>Building services that competitively substitute for source platforms</li>
</ul>

<h4>4.7 Reselling the Actor's Service</h4>
<ul>
  <li>Reselling raw Actor outputs as your own data product or scraping-as-a-service</li>
  <li>Sharing your Apify credentials to provide third parties indirect access</li>
  <li>Building competing API services using Actor outputs</li>
</ul>

<h4>4.8 AI Training Without Authorization</h4>
<ul>
  <li>Using Actor outputs as training data for commercial AI/ML models without separate licensing authority from the source platform</li>
</ul>

<h4>4.9 Sensitive Targeting</h4>
<ul>
  <li>Specifically targeting or profiling based on health conditions, sexual orientation, religious beliefs, political opinions, or other sensitive characteristics</li>
  <li>Targeting children under 16 (or local age of consent for data processing)</li>
</ul>

<h4>4.10 Privacy Law Violations</h4>
<ul>
  <li>Processing personal data of EU/UK/California/Israeli residents without complying with applicable privacy law</li>
  <li>Failing to honor data subject access, deletion, or objection requests</li>
  <li>Processing data for purposes incompatible with its publication context</li>
</ul>

<h3>5. SOURCE PLATFORM TERMS — YOUR RESPONSIBILITY</h3>

<h4>5.1 Acknowledgment</h4>
<p>The Actor accesses publicly visible data on third-party platforms ("Source Platforms") through the Third-Party API Providers (HarvestAPI / Scrape Creators). Source Platforms include LinkedIn, TikTok, YouTube, Reddit, X (Twitter), Meta/Facebook, Linktree, Komi, Pillar, Linkbio, Linkme, and Amazon.</p>

<h4>5.2 Your Sole Responsibility</h4>
<p>You acknowledge:</p>
<ul>
  <li><strong>(a)</strong> You are solely responsible for ensuring your downstream use of data obtained through the Actor complies with the Source Platform's Terms of Service</li>
  <li><strong>(b)</strong> The Publisher makes no representation that any specific use is permitted under any Source Platform's terms</li>
  <li><strong>(c)</strong> The Third-Party API Providers, not the Publisher, bear responsibility for the lawfulness of the data collection itself</li>
  <li><strong>(d)</strong> You should review Source Platform terms before commercial use:
    <ul>
      <li>LinkedIn: <a href="https://www.linkedin.com/legal/user-agreement">https://www.linkedin.com/legal/user-agreement</a></li>
      <li>TikTok: <a href="https://www.tiktok.com/legal/page/global/terms-of-service/en">https://www.tiktok.com/legal/page/global/terms-of-service/en</a></li>
      <li>YouTube: <a href="https://www.youtube.com/static?template=terms">https://www.youtube.com/static?template=terms</a></li>
      <li>X: <a href="https://twitter.com/en/tos">https://twitter.com/en/tos</a></li>
      <li>Reddit: <a href="https://www.redditinc.com/policies/user-agreement">https://www.redditinc.com/policies/user-agreement</a></li>
      <li>Meta: <a href="https://www.facebook.com/legal/terms">https://www.facebook.com/legal/terms</a></li>
      <li>Linktree: <a href="https://linktr.ee/s/terms/">https://linktr.ee/s/terms/</a></li>
    </ul>
  </li>
</ul>

<h4>5.3 Cease-and-Desist Compliance</h4>
<p>If you receive a cease-and-desist letter or other legal demand from a Source Platform regarding your use of Actor outputs, you must:</p>
<ul>
  <li><strong>(a)</strong> Cease the contested use immediately</li>
  <li><strong>(b)</strong> Notify UnseenUser within 48 hours via <a href="https://apify.com/UnseenUser">UnseenUser's Apify profile contact form</a></li>
  <li><strong>(c)</strong> Cooperate with the Publisher as needed to mitigate</li>
  <li><strong>(d)</strong> Not assert against the Publisher any claim arising from your inability to use the Actor for that Source Platform</li>
</ul>

<h3>6. DATA PROTECTION — REFLECTING ACTUAL ARCHITECTURE</h3>

<h4>6.1 Roles Under Privacy Law</h4>
<p>For purposes of GDPR, UK GDPR, CCPA, Israel's Privacy Protection Law (PPL) including Amendment 13, and equivalents:</p>
<ul>
  <li><strong>You (the User)</strong> are the Data Controller of any personal data you obtain through the Actor and subsequently process for your own purposes</li>
  <li><strong>HarvestAPI and Scrape Creators</strong> are the entities that collect data from source platforms — they bear the responsibilities of data processors or controllers (depending on context) for the collection itself</li>
  <li><strong>The Publisher</strong> acts solely as a software vendor, not as a data controller or processor, because the Publisher does not store, retain, or substantively process personal data — the Actor merely passes API responses through</li>
</ul>

<h4>6.2 No Data Retention by the Publisher</h4>
<p>The Publisher confirms:</p>
<ul>
  <li><strong>(a)</strong> The Publisher does not maintain a database of personal data obtained through the Actor</li>
  <li><strong>(b)</strong> The Actor passes data from the Third-Party API directly to you on the Apify platform — data does not flow through the Publisher's infrastructure</li>
  <li><strong>(c)</strong> Apify's standard execution and operational logging may include limited information about Actor runs (input parameters, run duration, data volume) — this is governed by Apify's own privacy practices</li>
  <li><strong>(d)</strong> The Publisher does not access, view, or analyze your Actor outputs except as needed for technical support if you specifically share them with the Publisher</li>
</ul>

<h4>6.3 Your Obligations as Data Controller</h4>
<p>Where your use of the Actor involves processing personal data, you are responsible for:</p>
<ul>
  <li><strong>(a)</strong> Establishing a lawful basis for your processing (consent, legitimate interest with documented balancing test, contract, etc.)</li>
  <li><strong>(b)</strong> Providing transparent notice to data subjects as required by applicable law</li>
  <li><strong>(c)</strong> Honoring data subject access, rectification, erasure, restriction, and portability requests</li>
  <li><strong>(d)</strong> Implementing appropriate security measures</li>
  <li><strong>(e)</strong> Conducting Data Protection Impact Assessments where required</li>
  <li><strong>(f)</strong> Appointing a Data Protection Officer if your operations require one</li>
  <li><strong>(g)</strong> Registering databases with applicable supervisory authorities</li>
  <li><strong>(h)</strong> Honoring opt-out requests for direct marketing</li>
  <li><strong>(i)</strong> Cross-border transfer safeguards where data crosses borders</li>
</ul>

<h4>6.4 Israel's Amendment 13 — User Compliance</h4>
<p>If your use of the Actor involves Israeli residents' personal data, you must comply with the Privacy Protection Law as amended (Amendment 13, effective August 14, 2025). These obligations are yours as the data controller, not the Publisher's as the software vendor.</p>

<h4>6.5 Sensitive Data Targeting Restrictions</h4>
<p>You will not use the Actor to specifically target, profile, or build datasets focused on:</p>
<ul>
  <li>Health or medical conditions</li>
  <li>Religious beliefs</li>
  <li>Political opinions</li>
  <li>Sexual orientation or gender identity</li>
  <li>Genetic or biometric data</li>
  <li>Criminal history</li>
  <li>Children under 16</li>
</ul>

<h3>7. INTELLECTUAL PROPERTY</h3>

<h4>7.1 Actor Code</h4>
<p>The Actor's source code, schemas, documentation, and branding are owned by the Publisher. You receive a limited, non-exclusive, non-transferable, revocable license to use the Actor for permitted purposes during your active subscription/run with Apify.</p>

<h4>7.2 Output Data</h4>
<p>The Publisher claims no ownership over the public data the Actor returns. Source Platforms may have copyright, database rights, or other rights in their data; data subjects may have copyright in user-generated content. Your use of output data must respect these rights independently.</p>

<h4>7.3 Restrictions</h4>
<p>You may not reverse engineer, decompile, or reuse the Actor's code in a competing actor.</p>

<h4>7.4 Feedback</h4>
<p>Feedback you provide may be used by the Publisher to improve products without compensation to you.</p>

<h3>8. PRICING AND PAYMENT</h3>

<h4>8.1 Apify Platform Billing</h4>
<p>Pricing is administered through Apify's pricing models. Apify processes all payments. Apify's payment terms govern refunds and disputes.</p>

<h4>8.2 Pricing Changes</h4>
<p>The Publisher may change Actor pricing with at least 14 days' notice via the Actor's Apify listing.</p>

<h4>8.3 No Refunds for Misuse</h4>
<p>If your access is suspended or terminated for breach of these Terms, you forfeit any unused balance and are not entitled to refunds.</p>

<h3>9. SERVICE AVAILABILITY AND CHANGES</h3>

<h4>9.1 No Uptime Guarantee</h4>
<p>The Actor depends on:</p>
<ul>
  <li><strong>(a)</strong> The Apify platform</li>
  <li><strong>(b)</strong> Underlying API providers (HarvestAPI, Scrape Creators)</li>
  <li><strong>(c)</strong> Source Platforms' continued public accessibility</li>
</ul>
<p>Any of these may change behavior, restrict access, or become unavailable without notice. The Publisher makes no uptime guarantees.</p>

<h4>9.2 Service Discontinuation</h4>
<p>The Publisher may discontinue any Actor at any time. Reasonable notice will be provided when feasible.</p>

<h3>10. DISCLAIMERS</h3>

<h4>10.1 "AS IS" Service</h4>
<p><strong>THE ACTOR IS PROVIDED "AS IS" AND "AS AVAILABLE" WITHOUT WARRANTIES OF ANY KIND, INCLUDING WARRANTIES OF MERCHANTABILITY, FITNESS FOR PURPOSE, NON-INFRINGEMENT, OR ACCURACY OF DATA.</strong></p>

<h4>10.2 No Representation of Lawfulness</h4>
<p>The Publisher makes no representation that your specific use of the Actor or the data it returns is lawful in your jurisdiction or under any Source Platform's terms. The burden of determining lawfulness for your use case is yours.</p>

<h4>10.3 No Endorsement of Source Content</h4>
<p>Content returned by the Actor was created by third parties. The Publisher does not endorse, verify, or take responsibility for it.</p>

<h3>11. LIMITATION OF LIABILITY</h3>

<h4>11.1 Aggregate Liability Cap</h4>
<p><strong>TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL THE AGGREGATE LIABILITY OF THE PUBLISHER FOR ALL CLAIMS RELATING TO THE ACTOR EXCEED THE GREATER OF:</strong></p>
<ul>
  <li><strong>(a)</strong> ONE HUNDRED U.S. DOLLARS (US $100), OR</li>
  <li><strong>(b)</strong> THE AMOUNTS YOU PAID THROUGH APIFY FOR USE OF THE ACTOR IN THE THREE (3) MONTHS IMMEDIATELY PRECEDING THE EVENT</li>
</ul>

<h4>11.2 Excluded Damages</h4>
<p><strong>THE PUBLISHER IS NOT LIABLE FOR INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES, OR FOR LOSS OF PROFITS, REVENUE, OR DATA, EVEN IF ADVISED OF THE POSSIBILITY.</strong></p>

<h4>11.3 Time Limit</h4>
<p>Any claim must be brought within one (1) year of the event.</p>

<h3>12. INDEMNIFICATION</h3>

<h4>12.1 Your Indemnification of the Publisher</h4>
<p>You agree to defend, indemnify, and hold harmless the Publisher from any:</p>
<ul>
  <li>Claims arising from your use of the Actor</li>
  <li>Claims arising from your violation of these Terms</li>
  <li>Claims arising from your violation of any law (including privacy law)</li>
  <li>Claims arising from your violation of any Source Platform's Terms of Service</li>
  <li>Claims arising from your processing of personal data obtained through the Actor</li>
  <li>Reasonable attorneys' fees and costs of defending such claims</li>
</ul>

<h4>12.2 Defense</h4>
<p>The Publisher may assume defense at your expense. You will cooperate with the Publisher's defense.</p>

<h4>12.3 Scope</h4>
<p>The indemnification covers reasonable, foreseeable third-party claims arising from your use. It does not extend to:</p>
<ul>
  <li>Claims arising from the Publisher's gross negligence or willful misconduct</li>
  <li>Claims regarding the Actor's source code itself (those are the Publisher's responsibility)</li>
  <li>Claims regarding the Third-Party API Provider's data collection (those are their responsibility)</li>
</ul>

<h3>13. SUSPENSION AND TERMINATION</h3>

<h4>13.1 Termination by the Publisher</h4>
<p>The Publisher may terminate your access for material breach, illegal use, breach of warranty, or upon credible legal demand.</p>

<h4>13.2 Effects of Termination</h4>
<p>Your license ends, you must cease use, and applicable provisions survive.</p>

<h4>13.3 Termination by You</h4>
<p>You may stop using the Actor at any time on Apify.</p>

<h3>14. DISPUTE RESOLUTION</h3>

<h4>14.1 Informal Resolution First</h4>
<p>Send a detailed written description of the dispute via <a href="https://apify.com/UnseenUser">UnseenUser's Apify profile contact form</a> and wait 60 days for resolution attempt before any formal claim.</p>

<h4>14.2 Governing Law</h4>
<p>These Terms are governed by the substantive laws of the State of Israel, without regard to conflict of law principles.</p>

<h4>14.3 Exclusive Jurisdiction</h4>
<p>Any dispute shall be brought exclusively in the competent civil courts of Tel Aviv-Jaffa, Israel.</p>

<h4>14.4 No Class Actions</h4>
<p>You agree to bring claims only in your individual capacity.</p>

<h4>14.5 Attorneys' Fees</h4>
<p>The prevailing party recovers reasonable attorneys' fees.</p>

<h3>15. MISCELLANEOUS</h3>

<p><strong>15.1 Entire Agreement</strong> — These Terms (with Addendum and incorporated documents) are the entire agreement.</p>
<p><strong>15.2 Severability</strong> — Unenforceable provisions are reformed to the minimum extent or severed.</p>
<p><strong>15.3 Assignment</strong> — You may not assign without the Publisher's consent. The Publisher may assign to affiliates, successors, or acquirers.</p>
<p><strong>15.4 Force Majeure</strong> — Neither party is liable for failure due to events beyond reasonable control, including changes by Source Platforms or Third-Party API Providers, or actions by Apify.</p>
<p><strong>15.5 Third-Party Beneficiaries</strong> — Apify, HarvestAPI, and Scrape Creators are intended third-party beneficiaries of Sections 4 (Prohibited Uses), 5 (Source Platform Compliance), and 12 (Indemnification).</p>
<p><strong>15.6 Survival</strong> — Sections 0 (Acceptance), 4, 5, 6, 7, 10, 11, 12, 14, and 15 survive termination.</p>
<p><strong>15.7 Language</strong> — English controls. Translations are for convenience only.</p>
<p><strong>15.8 Publisher Identification for Legal Process</strong> — The Publisher operates on the Apify platform under the username UnseenUser (<a href="https://apify.com/UnseenUser">apify.com/UnseenUser</a>). The Publisher is a registered legal entity. Upon receipt of valid legal process (subpoena, court order, or equivalent) directed through Apify's official channels, the Publisher's full legal identity may be disclosed as required by law. This Section ensures that you have a valid path to legal recourse if needed.</p>

<h3>16. ACKNOWLEDGMENT</h3>

<p>By using any Actor, you acknowledge that:</p>
<ul>
  <li><strong>(a)</strong> You have read these Terms</li>
  <li><strong>(b)</strong> You understand the architecture: you are using software (the Actor) on Apify's platform that calls third-party APIs</li>
  <li><strong>(c)</strong> You accept responsibility for your use, including for compliance with Source Platform terms</li>
  <li><strong>(d)</strong> Your indemnification obligations cover third-party claims arising from your use</li>
  <li><strong>(e)</strong> Disputes are resolved in Israeli courts</li>
  <li><strong>(f)</strong> The Publisher's identity, while not publicly disclosed in this listing, can be obtained through valid legal process via Apify</li>
</ul>

<p>For questions, use <a href="https://apify.com/UnseenUser">UnseenUser's Apify profile contact form</a> before running the Actor.</p>

<p><em>These Terms reflect best practices for anonymous Apify actor publishing as of May 2026. Not a substitute for legal advice. Consult qualified Israeli commercial counsel before deploying.</em></p>

***

<h2>Actor-Specific Terms of Service Addendum — LinkedIn Profile Extractor</h2>

<p><em>This addendum supplements the Master Terms of Service V4.0. By running this Actor, you accept both the Master ToS and this addendum.</em></p>

<h3>A. Architectural Disclosure</h3>
<p>This Actor is a software wrapper. It accepts your input parameters, calls the HarvestAPI endpoints, and returns the response data to you on the Apify platform. UnseenUser does not store, log, or substantively process the data returned. The data flows from HarvestAPI through Apify's runtime directly to you.</p>

<h3>B. Nature of Data Returned</h3>
<p>This Actor returns: Full LinkedIn profile (name, headline, about, photo, location, current position), complete work experience and education history, skills, certifications, recommendations, languages, projects, publications.</p>
<p>Where the Actor's output includes individual people's names, photos, contact details, or content authored by them, that data constitutes personal data subject to GDPR, CCPA, Israeli Privacy Protection Law, and equivalent privacy laws in your downstream processing — but only in your hands as the data controller, not in UnseenUser's hands as the software vendor.</p>

<h3>C. Permitted Use Cases</h3>
<p>You may use this Actor for the following purposes (non-exhaustive list):</p>
<ul>
  <li><strong>B2B sales prospecting</strong> — enrich a leads list with full LinkedIn data</li>
  <li><strong>Recruiter sourcing</strong> — extract candidate profiles for evaluation</li>
  <li><strong>Account-based marketing</strong> — research key contacts before outreach</li>
  <li><strong>CRM enrichment</strong> — auto-populate Salesforce/HubSpot from LinkedIn URLs</li>
  <li><strong>Investor due diligence</strong> — research target company executives</li>
  <li><strong>Networking research</strong> — prepare before professional events</li>
</ul>

<h3>D. Specifically Prohibited Uses</h3>
<p>In addition to Master ToS Section 4 prohibitions, you may NOT:</p>
<ul>
  <li>Build mass cold-email tools that scrape and email at scale without compliant opt-in or anti-spam compliance</li>
  <li>Republish profile data as a substitute for LinkedIn's own platform</li>
  <li>Build 'people search' websites where individuals can be looked up by name without their consent</li>
  <li>Use profile data to discriminate based on protected characteristics (gender, ethnicity inferred from name/photo, age inferred from career start date, etc.)</li>
  <li>Aggregate profile data to identify and contact individuals expressing political, religious, or sensitive views</li>
</ul>

<h3>E. Platform Terms of Service Considerations</h3>
<p>LinkedIn has aggressively litigated against profile scrapers (LinkedIn v. Proxycurl, LinkedIn v. ProAPIs, hiQ Labs v. LinkedIn). LinkedIn's User Agreement explicitly prohibits automated profile extraction. This Actor accesses publicly visible LinkedIn profiles via HarvestAPI — HarvestAPI bears responsibility for the lawfulness of the data collection. Your downstream use must independently comply with LinkedIn's Terms of Service. If LinkedIn issues a cease-and-desist regarding data obtained via this Actor, notify UnseenUser within 48 hours via the <a href="https://apify.com/UnseenUser">Apify profile contact form</a>.</p>

<h3>F. Profile Subjects' Rights</h3>
<p>Individuals whose profiles you extract have rights under GDPR/CCPA/etc:</p>
<ul>
  <li><strong>Right to access</strong> — they can demand to know what you have</li>
  <li><strong>Right to deletion</strong> — they can demand removal from your databases</li>
  <li><strong>Right to object</strong> — they can object to processing for direct marketing (this is NOT optional under GDPR)</li>
  <li><strong>Right to portability</strong> — they can demand a copy in machine-readable format</li>
</ul>
<p>You must have processes to honor these rights. Build them into your CRM/database from day one.</p>

<h3>G. Sensitive Inferences from Profiles</h3>
<p>Profile data enables inference of sensitive attributes:</p>
<ul>
  <li>Religion (from school names, organization memberships)</li>
  <li>Political views (from past employers — campaigns, advocacy groups)</li>
  <li>Health (from medical leave gaps in employment)</li>
  <li>Sexual orientation (from involvement with LGBTQ+ organizations)</li>
  <li>Pregnancy/family status (from career gaps + posts)</li>
</ul>
<p>Using these inferences for commercial decisions is prohibited under GDPR Article 9 (special categories) and equivalent laws. Do not let your downstream systems make automated decisions based on such inferences.</p>

# Actor input Schema

## `countryFilter` (type: `array`):

Only keep profiles located in these countries. Select one or more countries. Leave empty to keep all profiles.

## `queries` (type: `array`):

List of LinkedIn profile URLs or Public Identifiers (last part in the URL) to scrape.

## `urls` (type: `array`):

List of LinkedIn profile URLs to scrape. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs

## `publicIdentifiers` (type: `array`):

List of LinkedIn Public Identifiers. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs

## `profileIds` (type: `array`):

List of LinkedIn profile IDs to scrape. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs

## Actor input object example

```json
{
  "countryFilter": [],
  "queries": [
    "https://www.linkedin.com/in/williamhgates",
    "https://www.linkedin.com/in/towhid-rahman"
  ]
}
```

# Actor output Schema

## `overview` (type: `string`):

Summary table with name, profile URL, headline, location, connections, and followers

## `detailed` (type: `string`):

Complete dataset with all profile fields including experience, education, skills, and certifications

## `raw` (type: `string`):

Unformatted JSON dataset for programmatic access

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "countryFilter": [],
    "queries": [
        "https://www.linkedin.com/in/williamhgates",
        "https://www.linkedin.com/in/towhid-rahman"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("unseenuser/linkedin-profile").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "countryFilter": [],
    "queries": [
        "https://www.linkedin.com/in/williamhgates",
        "https://www.linkedin.com/in/towhid-rahman",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("unseenuser/linkedin-profile").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "countryFilter": [],
  "queries": [
    "https://www.linkedin.com/in/williamhgates",
    "https://www.linkedin.com/in/towhid-rahman"
  ]
}' |
apify call unseenuser/linkedin-profile --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=unseenuser/linkedin-profile",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LinkedIn Profile Extractor & Enricher (No Login Required) ✅",
        "description": "Extract complete LinkedIn profile data - experience, education, skills, certifications, location, headline. No login, no cookies. Built for B2B sales and lead-gen teams.",
        "version": "0.0",
        "x-build-id": "kQ6OPHqBeuYUQPMfS"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/unseenuser~linkedin-profile/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-unseenuser-linkedin-profile",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/unseenuser~linkedin-profile/runs": {
            "post": {
                "operationId": "runs-sync-unseenuser-linkedin-profile",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/unseenuser~linkedin-profile/run-sync": {
            "post": {
                "operationId": "run-sync-unseenuser-linkedin-profile",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "countryFilter": {
                        "title": "Country Filter",
                        "type": "array",
                        "description": "Only keep profiles located in these countries. Select one or more countries. Leave empty to keep all profiles.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Afghanistan",
                                "Albania",
                                "Algeria",
                                "Andorra",
                                "Angola",
                                "Antigua and Barbuda",
                                "Argentina",
                                "Armenia",
                                "Australia",
                                "Austria",
                                "Azerbaijan",
                                "Bahamas",
                                "Bahrain",
                                "Bangladesh",
                                "Barbados",
                                "Belarus",
                                "Belgium",
                                "Belize",
                                "Benin",
                                "Bhutan",
                                "Bolivia",
                                "Bosnia and Herzegovina",
                                "Botswana",
                                "Brazil",
                                "Brunei",
                                "Bulgaria",
                                "Burkina Faso",
                                "Burundi",
                                "Cambodia",
                                "Cameroon",
                                "Canada",
                                "Cape Verde",
                                "Central African Republic",
                                "Chad",
                                "Chile",
                                "China",
                                "Colombia",
                                "Comoros",
                                "Congo",
                                "Costa Rica",
                                "Croatia",
                                "Cuba",
                                "Cyprus",
                                "Czech Republic",
                                "Czechia",
                                "Democratic Republic of the Congo",
                                "Denmark",
                                "Djibouti",
                                "Dominica",
                                "Dominican Republic",
                                "East Timor",
                                "Ecuador",
                                "Egypt",
                                "El Salvador",
                                "Equatorial Guinea",
                                "Eritrea",
                                "Estonia",
                                "Eswatini",
                                "Ethiopia",
                                "Fiji",
                                "Finland",
                                "France",
                                "Gabon",
                                "Gambia",
                                "Georgia",
                                "Germany",
                                "Ghana",
                                "Greece",
                                "Grenada",
                                "Guatemala",
                                "Guinea",
                                "Guinea-Bissau",
                                "Guyana",
                                "Haiti",
                                "Honduras",
                                "Hungary",
                                "Iceland",
                                "India",
                                "Indonesia",
                                "Iran",
                                "Iraq",
                                "Ireland",
                                "Israel",
                                "Italy",
                                "Ivory Coast",
                                "Jamaica",
                                "Japan",
                                "Jordan",
                                "Kazakhstan",
                                "Kenya",
                                "Kiribati",
                                "Kosovo",
                                "Kuwait",
                                "Kyrgyzstan",
                                "Laos",
                                "Latvia",
                                "Lebanon",
                                "Lesotho",
                                "Liberia",
                                "Libya",
                                "Liechtenstein",
                                "Lithuania",
                                "Luxembourg",
                                "Madagascar",
                                "Malawi",
                                "Malaysia",
                                "Maldives",
                                "Mali",
                                "Malta",
                                "Marshall Islands",
                                "Mauritania",
                                "Mauritius",
                                "Mexico",
                                "Micronesia",
                                "Moldova",
                                "Monaco",
                                "Mongolia",
                                "Montenegro",
                                "Morocco",
                                "Mozambique",
                                "Myanmar",
                                "Namibia",
                                "Nauru",
                                "Nepal",
                                "Netherlands",
                                "New Zealand",
                                "Nicaragua",
                                "Niger",
                                "Nigeria",
                                "North Korea",
                                "North Macedonia",
                                "Norway",
                                "Oman",
                                "Pakistan",
                                "Palau",
                                "Palestine",
                                "Panama",
                                "Papua New Guinea",
                                "Paraguay",
                                "Peru",
                                "Philippines",
                                "Poland",
                                "Portugal",
                                "Qatar",
                                "Romania",
                                "Russia",
                                "Rwanda",
                                "Saint Kitts and Nevis",
                                "Saint Lucia",
                                "Saint Vincent and the Grenadines",
                                "Samoa",
                                "San Marino",
                                "Sao Tome and Principe",
                                "Saudi Arabia",
                                "Senegal",
                                "Serbia",
                                "Seychelles",
                                "Sierra Leone",
                                "Singapore",
                                "Slovakia",
                                "Slovenia",
                                "Solomon Islands",
                                "Somalia",
                                "South Africa",
                                "South Korea",
                                "South Sudan",
                                "Spain",
                                "Sri Lanka",
                                "Sudan",
                                "Suriname",
                                "Sweden",
                                "Switzerland",
                                "Syria",
                                "Taiwan",
                                "Tajikistan",
                                "Tanzania",
                                "Thailand",
                                "Togo",
                                "Tonga",
                                "Trinidad and Tobago",
                                "Tunisia",
                                "Turkey",
                                "Turkmenistan",
                                "Tuvalu",
                                "Uganda",
                                "Ukraine",
                                "United Arab Emirates",
                                "United Kingdom",
                                "United States",
                                "Uruguay",
                                "Uzbekistan",
                                "Vanuatu",
                                "Vatican City",
                                "Venezuela",
                                "Vietnam",
                                "Yemen",
                                "Zambia",
                                "Zimbabwe"
                            ]
                        }
                    },
                    "queries": {
                        "title": "Target URLs",
                        "type": "array",
                        "description": "List of LinkedIn profile URLs or Public Identifiers (last part in the URL) to scrape.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "urls": {
                        "title": "Profile URLs",
                        "type": "array",
                        "description": "List of LinkedIn profile URLs to scrape. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs",
                        "items": {
                            "type": "string"
                        }
                    },
                    "publicIdentifiers": {
                        "title": "Public Identifiers (last part in the URL)",
                        "type": "array",
                        "description": "List of LinkedIn Public Identifiers. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs",
                        "items": {
                            "type": "string"
                        }
                    },
                    "profileIds": {
                        "title": "LinkedIn Profile IDs",
                        "type": "array",
                        "description": "List of LinkedIn profile IDs to scrape. Provide at least one of the 3 fields: URLs or Public Identifiers or Profile IDs",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
