# LinkedIn Profile Scraper (`scrapers-hub/linkedin-scraper`) Actor

🔎 LinkedIn Profile Scraper extracts rich profile data (bio, roles, experience, skills & more) from LinkedIn pages. 🚀 Ideal for B2B lead gen, sales intelligence & recruitment workflows—fast, accurate & automation-friendly. 💼

- **URL**: https://apify.com/scrapers-hub/linkedin-scraper.md
- **Developed by:** [Scrapers Hub](https://apify.com/scrapers-hub) (community)
- **Categories:** Lead generation, Jobs, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.01 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

### Linkedin profile scraper: The Ultimate Tool for High-Quality Data Extraction 🚀

In the modern digital era, data is the new oil, and professional networking platforms are the richest wells available. If you are looking to scale your business, optimize recruitment, or supercharge your sales outreach, a highly efficient **Linkedin profile scraper** is no longer a luxury—it is a necessity. This comprehensive tool is designed to provide you with seamless access to professional data, allowing you to focus on strategy while we handle the data collection.

Whether you are a recruiter searching for top-tier talent, a sales professional building a high-conversion lead list, or a market researcher analyzing industry trends, the **Linkedin profile scraper** offers unparalleled depth and accuracy. In this guide, we will explore why this tool is the best-in-class solution for your professional data needs.


#### 🌟 Why Do You Need a Linkedin profile scraper?

Manual data collection is a thing of the past. It is slow, prone to errors, and impossible to scale. With a dedicated **Linkedin profile scraper**, you can automate the process of gathering critical information from public profiles with surgical precision.

#### 1. **High-Velocity Lead Generation**
Generating leads is the lifeblood of any B2B organization. By using a **Linkedin profile scraper**, you can quickly identify decision-makers across various industries. Instead of spending hours browsing profiles, you can export thousands of leads in minutes, complete with their current roles, company history, and professional achievements.

#### 2. **Efficient Talent Acquisition**
Recruiters often struggle with the volume of candidates they need to screen. A robust **Linkedin profile scraper** allows HR professionals to build large candidate pools by filtering profiles based on specific skills, years of experience, and educational background. This ensures that you only spend time on candidates who truly fit your requirements.

#### 3. **Indepth Market Analysis**
Stay ahead of your competitors by understanding their workforce. A **Linkedin profile scraper** can help you track employee movement between companies, identify emerging skill sets in your industry, and understand the organizational structure of market leaders.

---

#### 🚀 Key Features of the Linkedin profile scraper

Our tool is engineered for performance, reliability, and ease of use. It incorporates advanced algorithms to ensure that the data you receive is clean, structured, and ready for immediate use.

#### ✅ **Complete Profile Extraction**
The **Linkedin profile scraper** doesn't just scratch the surface. It goes deep into the profile architecture to extract:
- **Full Name and Headline**: Identify the professional identity and current value proposition.
- **Current Role and Summary**: Understand their current focus and career highlights.
- **Experience History**: Get a chronological view of their professional journey, including company names, durations, and descriptions.
- **Education**: Extract degree details, university names, and graduation years.
- **Skills and Endorsements**: Identify the core competencies of the individual.
- **Contact Information (Publicly Available)**: Gather public websites and social links.

#### ✅ **Advanced Proxy Management**
One of the biggest challenges in web scraping is avoiding detection. The **Linkedin profile scraper** utilizes state-of-the-art residential proxy rotations. This ensures that your requests appear like regular user traffic, significantly reducing the risk of being blocked and ensuring a 99% success rate for all your scraping tasks.

#### ✅ **Scalable Data Processing**
Whether you need to scrape 50 profiles or 50,000, the **Linkedin profile scraper** can handle the load. The backend architecture is built to process multiple URLs concurrently, making it one of the fastest scrapers on the market without compromising on data integrity.

#### ✅ **Export in Multiple Formats**
The raw data is transformed into structured formats that are easy to import into your CRM or spreadsheet tool. You can download your results in:
- **JSON**: Perfect for developers and automated workflows.
- **CSV**: Ideal for bulk imports into Salesforce, HubSpot, or Excel.
- **Excel (.xlsx)**: Great for manual review and reporting.

#### input
```json

input_data = {
  "startUrls": [
    {
      "url": "https://www.linkedin.com/in/williamhgates",
      "id": "1"
    },
    {
      "url": "https://fr.linkedin.com/company/tesla-motors",
      "id": "6"
    }
  ]
}

````

#### output

```json
[
  {
    "url": "https://www.linkedin.com/in/williamhgates",
    "profile_pic_url": "https://media.licdn.com/dms/image/v2/D5603AQF-RYZP55jmXA/profile-displayphoto-shrink_200_200/B56ZRi8g.aGsAY-/0/1736826818802?e=2147483647&v=beta&t=bKWfN6UwwtiCqFWsG7rBELbd48qJOAMLdxhBzzkJV0k",
    "background_cover_image_url": "https://media.licdn.com/dms/image/v2/D5616AQEjhPbTCeblYg/profile-displaybackgroundimage-shrink_200_800/B56ZcytR5SGsAc-/0/1748902420393?e=2147483647&v=beta&t=a-tBeZkxzWTHWYY6MAjxt0oTEuxlW33EUkK3gm5_te4",
    "id": "1",
    "full_name": "Bill Gates",
    "headline": "Co-chair",
    "summary": "Chair of the Gates Foundation. Founder of Breakthrough Energy. Co-founder of Microsoft. Voracious reader. Avid traveler. Active blogger.",
    "country": "US",
    "city": "Seattle, Washington, United States",
    "follower_count": 40151797,
    "open_to_work": false,
    "show_verification_badge": false,
    "skills": [],
    "certifications": [],
    "languages": [],
    "company_name": "Gates Foundation",
    "company_website": "N/A",
    "company_linkedin": "https://www.linkedin.com/company/gates-foundation?trk=public_profile_experience-item_profile-section-card_image-click",
    "company_size": "N/A",
    "education": [
      {
        "school": "Harvard University",
        "school_linkedin_profile_url": "https://www.linkedin.com/school/harvard-university/?trk=public_profile_school_profile-section-card_image-click",
        "starts_at": "1973",
        "ends_at": "1975"
      },
      {
        "school": "Lakeside School",
        "school_linkedin_profile_url": "https://www.linkedin.com/school/lakeside-school/?trk=public_profile_school_profile-section-card_image-click",
        "starts_at": null,
        "ends_at": null
      }
    ],
    "experiences": [
      {
        "title": "Co-chair",
        "company": "Gates Foundation",
        "company_linkedin_profile_url": "https://www.linkedin.com/company/gates-foundation?trk=public_profile_experience-item_profile-section-card_image-click",
        "starts_at": "2000"
      },
      {
        "title": "Founder",
        "company": "Breakthrough Energy",
        "company_linkedin_profile_url": "https://www.linkedin.com/company/breakthrough-energy?trk=public_profile_experience-item_profile-section-card_image-click",
        "starts_at": "2015"
      },
      {
        "title": "Co-founder",
        "company": "Microsoft",
        "company_linkedin_profile_url": "https://www.linkedin.com/company/microsoft?trk=public_profile_experience-item_profile-section-card_image-click",
        "starts_at": "1975"
      }
    ],
    "public_identifier": "williamhgates"
  },
  {
    "url": "https://fr.linkedin.com/company/tesla-motors",
    "profile_pic_url": "https://media.licdn.com/dms/image/v2/C4D0BAQHUcu98SZ2TVw/company-logo_200_200/company-logo_200_200/0/1630576446368/tesla_motors_logo?e=2147483647&v=beta&t=8wY3yx6Rp5BFtpVB2G4Z1HW-U78D745rF1L5kt6OHSY",
    "background_cover_image_url": "https://media.licdn.com/dms/image/v2/C561BAQFqQXNCkzg_Uw/company-background_10000/company-background_10000/0/1635791699664/tesla_motors_cover?e=2147483647&v=beta&t=fTCFIfsF-5kKJqfkaG7xvYvQnNtoxjZlFAHeQY593Oo",
    "id": "6",
    "name": "Tesla",
    "hq": {
      "city": "Austin",
      "country": "US",
      "is_hq": true,
      "line_1": "13101 Harold Green Rd",
      "postal_code": "78725",
      "state": "Texas"
    },
    "follower_count": null,
    "website": "https://www.linkedin.com/company/tesla-motors",
    "company_size": [
      10001,
      1
    ],
    "tagline": "Motor Vehicle Manufacturing",
    "description": "Tesla is accelerating the world’s transition to sustainable abundance. To achieve our mission, we're building a world powered by solar, enabled by battery storage and transported by electric vehicles.\n \nWe’re committed to hiring and developing top talent from around the world for any given discipline. Headquartered in Texas, we operate six huge, vertically integrated factories across three continents. With over 100,000 employees, our teams take a first-principles approach to designing, building, selling and servicing our products in-house.\n \nOur world-class teams operate with a non-conventional philosophy of inter-disciplinary collaboration. Each member of the team is expected to challenge and to be challenged, to create, and to innovate. We’re tackling the world’s most difficult and important problems—and we wouldn’t succeed without our shared passion for making the world a better place.",
    "founded_year": 2003,
    "linkedin_internal_id": "15564",
    "specialities": [
      "Innovation in electric cars and clean energy products"
    ]
  }
]
```

### 📊 How the Linkedin profile scraper Transforms Your Workflow

#### **Sales Teams: Building the Perfect Pipeline**

Sales professionals often find themselves "stuck" in the research phase. By integrating the **Linkedin profile scraper** into your workflow, you can move from "finding people" to "talking to people" almost instantly. By targeting specific keywords and company sizes, you can create a laser-focused list of prospects that are more likely to convert.

#### **Marketing Agencies: Data-Driven Campaigns**

If you are running account-based marketing (ABM) campaigns, you need highly specific data. The **Linkedin profile scraper** provides the granular details necessary to personalize your outreach. Knowing a prospect's previous roles and specific skills allows you to craft messages that resonate on a personal level.

#### **Startup Founders: Rapid Networking**

In the early stages of a startup, networking is everything. Use the **Linkedin profile scraper** to find potential mentors, investors, and early adopters. By automating the discovery phase, you can spend more time on building your product and closing deals.

***

#### 🛠️ How to Use the Linkedin profile scraper effectively

Using the tool is straightforward, but following these best practices will help you get the most out of your **Linkedin profile scraper** experience.

#### **Step 1: Define Your Target URLs**

Prepare a list of public URLs for the profiles or companies you wish to scrape. Ensure the URLs are in the correct format (e.g., `https://www.linkedin.com/in/username`).

#### **Step 2: Input and Configuration**

Provide the URLs to the **Linkedin profile scraper** interface. You can specify whether you want to extract additional sections like education or focus solely on professional experience to speed up the process.

#### **Step 3: Execution and Monitoring**

Start the scraping process. Our internal dashboard (if used) or logs will show the progress in real-time. The **Linkedin profile scraper** handles retries and proxy rotations automatically, so you don't have to worry about connection errors.

#### **Step 4: Download and Analyze**

Once the process is complete, export the data in your preferred format. Use our clean JSON structure to map fields directly to your existing database.

***

#### 🔍 Data Points Extracted by the Linkedin profile scraper

Below is a detailed look at the core data fields captured by our high-performance **Linkedin profile scraper**.

| Category | Data Field | Description |
| :--- | :--- | :--- |
| **Identity** | Name | The full name of the user. |
| **Personal** | Headline | The professional bio displayed at the top. |
| **Location** | Region | City, State, or Country of the user. |
| **Stats** | Followers | The total number of followers. |
| **Professional** | Experience | A list of all past and current professional roles. |
| **Academic** | Education | University name, Degree, and Field of study. |
| **Abilities** | Skills | Top skills listed on the profile. |
| **Identity** | Profile Image | URL to the public profile picture. |

***

### 🛡️ Privacy, Compliance, and Best Practices

When using a **Linkedin profile scraper**, it is essential to prioritize ethical data usage and compliance with local regulations.

#### **Focus on Public Data**

Our **Linkedin profile scraper** is designed to extract data that is publicly accessible on the web. We do not require login credentials from the user, ensuring that your own account is never at risk. This method prioritizes security and adheres to the principles of open web data.

#### **Responsible Scraping Frequency**

While the **Linkedin profile scraper** is capable of high-speed extraction, it is always recommended to use "polite" scraping intervals. Our built-in rate-limiting features ensure that you do not overwhelm the platform's servers, maintaining a sustainable ecosystem for all users.

#### **Data Privacy (GDPR/CCPA)**

Professional data should be handled with care. If you are scraping data for individuals in the EU or California, ensure that your use of the data complies with GDPR and CCPA. The **Linkedin profile scraper** provides the data, but it is the user's responsibility to use it within legal boundaries.

***

### 💡 Pro Tips for Ranking Your Data Projects

If you are a developer or a data scientist using this **Linkedin profile scraper** for larger projects, consider these tips to enhance your results:

1. **Regular Updates**: Professional profiles change often. Set up a schedule for your **Linkedin profile scraper** to refresh your database once a month.
2. **Data Cleaning**: While our tool provides structured data, always perform a final cleaning pass to remove any unconventional characters used by individuals in their names or headlines.
3. **Integration**: Connect the output of the **Linkedin profile scraper** to a data visualization tool like Tableau or PowerBI ---

### 🏗️ Technical Architecture of the Linkedin profile scraper

To understand why this is the premier **Linkedin profile scraper**, one must look under the hood. Our engineering team has built a resilient, distributed system that prioritizes data accuracy and stealth.

#### **1. Headless Browser Orchestration**

The **Linkedin profile scraper** utilizes advanced headless browser technology. Unlike simple HTTP request scrapers that can be easily identified by the lack of CSS and JS execution, our tool renders the page exactly as a human would. This allows it to capture dynamic content that is loaded asynchronously via AJAX calls.

#### **2. Intelligent User Agent Rotation**

To further blend in with regular traffic, the **Linkedin profile scraper** maintains a database of thousands of valid user-agent strings. These are rotated for every session, reflecting various devices (Desktop, Laptop, Mobile) and browsers (Chrome, Firefox, Safari, Edge). This makes the scraping activity virtually invisible to behavioral analysis algorithms.

#### **3. Automatic CAPTCHA Solving (Optional Integration)**

While our proxy rotation prevents most blocks, the **Linkedin profile scraper** is ready for contingencies. It includes hooks for automated CAPTCHA solving services, ensuring that even if a challenge is presented, your data extraction pipeline remains uninterrupted.

#### **4. Data Normalization Engine**

Raw HTML is messy. The **Linkedin profile scraper** passes extracted data through a normalization engine that cleans whitespace, standardizes date formats (e.g., converting "Jan 2020 - Present" into machine-readable ISO dates), and ensures that nested JSON objects are consistently structured across different profile types.

***

### 🏢 Industry-Specific Applications for the Linkedin profile scraper

Every industry has unique data needs. Here is how different sectors leverage the power of a **Linkedin profile scraper** to gain a competitive edge.

#### **Real Estate: Finding the Right Agents and Investors**

In the high-stakes world of real estate, knowing who the power players are is vital. Using a **Linkedin profile scraper**, real estate firms can:

- Identify top-performing agents in specific regions.
- Target commercial real estate investors based on their historical experience.
- Track the portfolio growth of investment firms by monitoring their key personnel.

#### **Finance and Fintech: Risk Assessment and Talent Mapping**

Financial institutions use the **Linkedin profile scraper** for:

- **Background Checks**: Verifying the professional history of prospective clients or employees.
- **Talent Migration Analysis**: Monitoring which banks are losing talent to emerging fintech startups.
- **Institutional Research**: Analyzing the leadership changes in Fortune 500 companies for investment signals.

#### **SaaS and Software Development: Developer Outreach**

For tech companies, finding skilled developers is a constant battle. A **Linkedin profile scraper** allows you to:

- Find developers with specific niche skills (e.g., Rust, Go, or specialized AI frameworks).
- Reach out to CTOs of mid-sized companies with cloud infrastructure solutions.
- Analyze the hiring trends of competitors to predict their product roadmap.

#### **Healthcare and Life Sciences: Specialized Recruitment**

The healthcare sector requires highly specialized credentials. With a **Linkedin profile scraper**, you can:

- Filter for doctors and researchers with specific fellowships or certifications.
- Build associations between medical professionals and their research institutions.
- Track the movement of pharmaceutical sales reps to measure market penetration.

***

### 📈 Leveraging the Linkedin profile scraper for Brand Growth

In addition to lead generation, a **Linkedin profile scraper** can help you build your own brand authority. By analyzing the headlines and summaries of "Top Voices" in your niche, you can identify the language and topics that resonate most with your target audience. Use this data to inform your content strategy and position yourself as a thought leader.

***

### ❓ Frequently Asked Questions (Expanded)

#### Does the Linkedin profile scraper support bulk URL processing?

Yes! You can upload a list of thousands of URLs to the **Linkedin profile scraper**, and it will process them in parallel based on your configured limits.

#### How does the tool handle "Open to Work" status?

The **Linkedin profile scraper** can identify flags like "Open to Work" if they are visible on the public version of the profile, making it an invaluable tool for recruiters focusing on active candidates.

#### Can I filter profiles by location using the Linkedin profile scraper?

The scraper extracts the location data from the profile. You can then use standard data tools (like Excel or a database query) to filter the results and focus only on the regions that matter to your business.

#### Is there a limit to how much data the Linkedin profile scraper can extract?

The only real limit is the number of valid URLs you provide. The **Linkedin profile scraper** is designed to scale horizontally, meaning we can handle massive datasets by distributing the workload across multiple scraping instances.

***

### 🏆 Why We Are the Best Choice for Linkedin Scraping

There are many tools on the market, but the **Linkedin profile scraper** stands out due to its unique combination of speed, reliability, and data richness. We have spent thousands of hours perfecting the extraction logic to handle even the most complex profile layouts.

- **Reliability**: We constantly update the **Linkedin profile scraper** to adapt to any changes in the source platform's structure.
- **Affordability**: Get premium-level data without the enterprise-level price tag.
- **Support**: Our tool is backed by a community of data enthusiasts who are always finding new ways to utilize a **Linkedin profile scraper**.

***

### 🚀 Conclusion: Start Your Data Journey Today!

The competitive landscape of business today requires fast decisions and even faster data. With the **Linkedin profile scraper**, you gain a powerful ally that works around the clock to bring you the insights you need. Don't let manual work hold you back—embrace automation and watch your business scale.

Whether you are looking for your next big hire, your next major client, or your next industry insight, the **Linkedin profile scraper** is the key to unlocking the professional world.

**Get started today and see the difference that high-quality, professional data can make for your growth!**

***

#### **Summary of Benefits of Using our Linkedin profile scraper:**

- **Automated Workflow**: Save hundreds of hours of manual entry.
- **Clean Data**: Structured JSON/CSV/Excel output.
- **High Success Rate**: Powered by residential proxies.
- **Versatile**: Profiles and Company pages supported.
- **Secure**: No credentials required.

*Optimize your workflow. Empower your sales. Revolutionize your recruitment. All with the **Linkedin profile scraper**.*
nt. All with the **Linkedin profile scraper**.\*

# Actor input Schema

## `startUrls` (type: `array`):

List of LinkedIn profile or company URLs to scrape.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.linkedin.com/in/williamhgates"
    }
  ]
}
```

# 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 = {
    "startUrls": [
        {
            "url": "https://www.linkedin.com/in/williamhgates"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapers-hub/linkedin-scraper").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 = { "startUrls": [{ "url": "https://www.linkedin.com/in/williamhgates" }] }

# Run the Actor and wait for it to finish
run = client.actor("scrapers-hub/linkedin-scraper").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 '{
  "startUrls": [
    {
      "url": "https://www.linkedin.com/in/williamhgates"
    }
  ]
}' |
apify call scrapers-hub/linkedin-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LinkedIn Profile Scraper",
        "description": "🔎 LinkedIn Profile Scraper extracts rich profile data (bio, roles, experience, skills & more) from LinkedIn pages. 🚀 Ideal for B2B lead gen, sales intelligence & recruitment workflows—fast, accurate & automation-friendly. 💼",
        "version": "1.0",
        "x-build-id": "5jblTUCkif2mkTDBD"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapers-hub~linkedin-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapers-hub-linkedin-scraper",
                "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/scrapers-hub~linkedin-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapers-hub-linkedin-scraper",
                "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/scrapers-hub~linkedin-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapers-hub-linkedin-scraper",
                "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",
                "required": [
                    "startUrls"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "List of LinkedIn profile or company URLs to scrape.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
