# Company Employees Finder — by LinkedIn URL ✅ No Cookies (`neuralverge/neuralverge-company-employees`) Actor

List the employees of any company by its LinkedIn URL, filtered by seniority, department and country. Name, title, seniority, location, LinkedIn URL, skills and education per person. No cookies or account required.

- **URL**: https://apify.com/neuralverge/neuralverge-company-employees.md
- **Developed by:** [NeuralVerge](https://apify.com/neuralverge) (community)
- **Categories:** Automation, Lead generation, Social media
- **Stats:** 2 total users, 1 monthly users, 66.7% runs succeeded, 0 bookmarks
- **User rating**: 5.00 out of 5 stars

## Pricing

$2.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/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### Company Employees Finder — by LinkedIn URL ✅ No Cookies

List the **employees of any company** from its LinkedIn URL, filtered by **seniority**,
**department** and **country**. Get name, headline, job title, seniority, department,
location, LinkedIn URL, skills and education per person. Powered by the Neuralverge API.
**No cookies or account required.**

Ideal for account-based selling, mapping a buying committee, recruiting and org research.

### ✨ Why this Actor

- 🎯 **Org-chart filters** — `Director` + `Sales & Business Development` + `United States`
  gives you exactly the people you need at the account.
- 🎓 **Rich rows** — headline, title, seniority, department, full location, skills,
  certifications and education per employee.
- 🏢 **Several companies per run** — pass a list of company URLs; each is searched with the
  same filters and every row says which company it came from.
- 🍪 **No cookies, login or account** — never share LinkedIn credentials or risk account
  restrictions. Everything runs on the Neuralverge backend.
- 📄 **Paging for large companies** — walk thousands of employees page by page without
  paying twice for the same people.
- 💳 **Simple pricing** — **$2 per 1,000 results** ($0.002 each, one result = one employee). A company that matches nobody
  returns a single `no result` row and costs **$0.002**. A run that *fails* is never charged.

### 🔧 How it works

1. **Provide one or more companies** — LinkedIn company URLs, e.g.
   `https://www.linkedin.com/company/stripe`.
2. **Add filters (optional)** — seniority levels, departments, countries — and how many
   people per company (`maxResults`, up to 100).
3. **Run the Actor.** You get **one dataset row per employee** — or a single `no result` row
   for a company whose filters matched nobody. The run log shows how many employees match in
   total and how many pages there are. Export to CSV, JSON or Excel, or pull it over the Apify API.

### Input

| Field | Type | Notes |
|---|---|---|
| `companyLinkedinUrls` | array | LinkedIn company URL(s). **Required.** |
| `seniorityLevels` | array (dropdown) | `C-Level`, `VP`, `Director`, `Manager`, `Staff`, `Other`. |
| `departments` | array (dropdown) | 22 departments, e.g. `Sales & Business Development`, `Engineering`, `Finance & Accounting`. |
| `countries` | array | Where the employee is located, e.g. `United States`, `Germany`. |
| `maxResults` | integer | Employees per company, 1–100. Default `25`. |
| `page` | integer | Page of each company's employee list. Page 2 with 25 per page = employees 26–50. Default `1`. |

```json
{
  "companyLinkedinUrls": ["https://www.linkedin.com/company/stripe"],
  "seniorityLevels": ["Director"],
  "maxResults": 25,
  "page": 1
}
```

### What you'll receive

**One dataset row per employee:**

- **Company searched** — `company`
- **Identity** — `fullName`, `firstName`, `lastName`, `headline`, `about`, `linkedinUrl`
- **Role** — `jobTitle`, `seniorityLevel`, `department`, `jobIsCurrent`
- **Location** — `location`, `city`, `stateCode`, `country`, `countryCode`, `continent`
- **Background** — `skills`, `certifications`, `education` (degree, school,
  school LinkedIn URL)

> **Nulls are normal.** Only fields present on the profile are filled — e.g. `about` or
> `skills` can be `null`.

#### Example output (real run)

One employee row from a search of `https://www.linkedin.com/company/stripe` with
`seniorityLevels: ["Director"]`:

```json
{
  "company": "https://www.linkedin.com/company/stripe",
  "fullName": "Leanna Zillner",
  "firstName": "Leanna",
  "lastName": "Zillner",
  "headline": "Financial Services GTM Lead @ Stripe | Private Equity | Investment Banking",
  "about": null,
  "jobTitle": "Financial Services & Insurance Gtm Lead, North America",
  "seniorityLevel": "Director",
  "department": "Sales & Business Development",
  "jobIsCurrent": true,
  "linkedinUrl": "https://www.linkedin.com/in/leannaz",
  "location": "New York, NY, United States",
  "city": "New York",
  "stateCode": "NY",
  "country": "United States",
  "countryCode": "US",
  "continent": "North America",
  "skills": null,
  "certifications": null,
  "education": [
    {
      "degree": "BS",
      "linkedin_url": "https://www.linkedin.com/school/georgia-institute-of-technology",
      "organization": "Georgia Institute of Technology"
    }
  ]
}
```

> Genuine output from a live run — one of 314 Stripe directors matching this search.

#### When nothing is found

A company whose filters match nobody still returns a row, so a batch never silently loses
an input:

| Column | Value |
|---|---|
| `company` | the company URL you submitted |
| `page` | the page you asked for |
| `found` | `false` |
| `message` | why nothing was returned |

Filter these out with `found != false`. This row is billed as one result — see Pricing.

### Pricing — pay per event

This Actor uses Apify **Pay-Per-Event**:

| Event | Price | Charged |
|---|---|---|
| Actor start | **free** | never |
| Result (one employee = one dataset row) | **$2 per 1,000 results** ($0.002 each) | every employee, including the `no result` row |

A run that returns 25 employees costs **25 × $0.002 = $0.05**; 1,000 employees cost **$2.00**.

**A completed search is billed even when it matches nobody** — it writes one explicit
`no result` row (the company plus `found: false` and a `message`), so it costs **$0.002**. A run
that *fails* (missing input, bad key, upstream error) writes no row for that company; only the
platform's start fee applies.

#### Rate limit

There is a ceiling on how fast one Apify account can pull from the Neuralverge backend: **5
requests per second** across the Neuralverge Actors. One company is one request, so this is about
how many runs you start at once, not about the size of a single run.

Above the ceiling the backend answers **HTTP 429**. The Actor waits out the `Retry-After` it asks
for and retries a few times before giving up; a run that does give up is **not charged** for the
company it could not search.

If you need a higher rate for a bulk job, get in touch.

#### Free plan limits

Users on any **paid Apify plan** are not affected by anything in this section.

On the **Apify Free plan** this Actor may be started **3 times per calendar month per user**. A run
that finds nothing still counts, because the search is performed either way. Every Neuralverge Actor
carries its own allowance — running one never uses up another's.

In addition, on the Free plan a run returns at most **25 employees** in total.

When a limit is reached the Actor stops gracefully with a status message naming it; everything resets
on the 1st of every month, and **any paid Apify plan removes all of it**.

Pricing is on top of your Apify platform usage.

### Integrations & API

Results are stored in a standard Apify dataset — export as CSV, JSON, XML or Excel,
or fetch on demand through the [Apify API](https://docs.apify.com/api). The Actor
also plugs into Apify's integrations (Make, Zapier, n8n, webhooks) and can be called
from any [MCP](https://mcp.apify.com/) client.

### FAQ

**Do I need a LinkedIn account or cookies?** No. Everything runs on the Neuralverge
backend — you never provide credentials or a session.

**Can I search several companies at once?** Yes — pass multiple company URLs in
`companyLinkedinUrls`. `maxResults` and `page` apply to each company.

**Can I pass a company name instead of a URL?** No — use the company's LinkedIn URL. Find it
with the LinkedIn Company Search actor.

**How do I get emails?** Feed a returned `linkedinUrl` into the LinkedIn Email actor.

### 🔗 Other Neuralverge Actors

- [Leads Finder](https://apify.com/neuralverge/neuralverge-leads-finder) — search people across all companies with title, industry, tech-stack and funding filters.
- [LinkedIn Company Employees Scraper](https://apify.com/neuralverge/neuralverge-linkedin-company-employee) — employees with LinkedIn's own filters (title, tenure, years of experience).
- [LinkedIn Profile Scraper](https://apify.com/neuralverge/neuralverge-linkedin-person) — the full profile behind any employee's URL.
- [LinkedIn Email Scraper](https://apify.com/neuralverge/neuralverge-linkedin-email) — the same profile plus a work email.
- [LinkedIn Company Search](https://apify.com/neuralverge/neuralverge-linkedin-company-search) — find the company pages to feed this Actor.
- **More Neuralverge Actors** — the full catalogue (LinkedIn, contact data, company registers, reviews): [apify.com/neuralverge](https://apify.com/neuralverge).

***

**Disclaimer:** This Actor is an independent tool and is not affiliated with, endorsed
by, or sponsored by LinkedIn Corporation. LinkedIn® is a registered trademark of
LinkedIn Corporation. All trademarks are property of their respective owners.

# Actor input Schema

## `companyLinkedinUrls` (type: `array`):

One or more LinkedIn company URLs, e.g. https://www.linkedin.com/company/stripe. Each company is searched separately with the same filters. Apify Free plan: this Actor can be started 3 times per calendar month per user (a run that finds nothing counts too; every Neuralverge Actor has its own allowance), and each run returns at most 25 rows. Any paid Apify plan removes all of these.

## `seniorityLevels` (type: `array`):

Filter employees by seniority level.

## `departments` (type: `array`):

Filter employees by department (job function).

## `countries` (type: `array`):

Filter employees by country, e.g. "United States", "Germany".

## `maxResults` (type: `integer`):

How many employees to return per company: 1–100. Each employee is one dataset row.

## `page` (type: `integer`):

Which page of the employee list to return. Page 2 with 25 people per page = employees 26–50. Use it to walk a large company across several runs without paying twice for the same people.

## Actor input object example

```json
{
  "companyLinkedinUrls": [
    "https://www.linkedin.com/company/stripe"
  ],
  "seniorityLevels": [
    "Director"
  ],
  "maxResults": 25,
  "page": 1
}
```

# Actor output Schema

## `results` (type: `string`):

Structured employee rows (name, title, seniority, department, location, LinkedIn URL, education), one row per person.

# 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 = {
    "companyLinkedinUrls": [
        "https://www.linkedin.com/company/stripe"
    ],
    "seniorityLevels": [
        "Director"
    ],
    "maxResults": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("neuralverge/neuralverge-company-employees").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 = {
    "companyLinkedinUrls": ["https://www.linkedin.com/company/stripe"],
    "seniorityLevels": ["Director"],
    "maxResults": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("neuralverge/neuralverge-company-employees").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "companyLinkedinUrls": [
    "https://www.linkedin.com/company/stripe"
  ],
  "seniorityLevels": [
    "Director"
  ],
  "maxResults": 25
}' |
apify call neuralverge/neuralverge-company-employees --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,neuralverge/neuralverge-company-employees"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/zmdhm2bqvivpxm2JE/builds/6KhdSkgpVDZSTUU1c/openapi.json
