LinkedIn Company Employees Scraper & Email Finder - No Login
Pricing
Pay per event
LinkedIn Company Employees Scraper & Email Finder - No Login
Scrape LinkedIn company employees with emails, job titles, and profiles. No login or cookies required. Export to CSV, JSON, or Excel.
Pricing
Pay per event
Rating
0.0
(0)
Developer
George Kioko
Actor stats
2
Bookmarked
110
Total users
59
Monthly active users
2 days ago
Last modified
Categories
Share
LinkedIn Company Employees Scraper API
The fastest way to get structured employee data from any company on LinkedIn — no login, no cookies, no ban risk.
How It Works
graph LRA[Company URL or Name] --> B[Google SERP Discovery]B --> C[Profile Extraction]C --> D[Data Normalization]D --> E[Structured JSON Output]E --> F[Your CRM / Pipeline]style A fill:#e1f5festyle E fill:#c8e6c9style F fill:#fff9c4
You provide a company LinkedIn URL. The scraper discovers employees through Google search (not LinkedIn's API), extracts profile data, normalizes it, and returns clean JSON ready for your pipeline.
Architecture
flowchart TDINPUT["Input: Company URLs + Filters"] --> QUEUE["Request Queue"]QUEUE --> SERP["Google SERP Crawler"]SERP --> PARSE["Profile Parser"]PARSE --> DEDUP["Deduplication Engine"]DEDUP --> OUTPUT["Dataset: JSON / CSV / Excel"]SERP -.-> PROXY["Apify GOOGLE_SERP Proxy"]SERP -.-> RETRY["Auto-Retry + Backoff"]style INPUT fill:#e3f2fdstyle OUTPUT fill:#e8f5e9style PROXY fill:#fff3e0style RETRY fill:#fff3e0
For AI Agents & Developers
This API is designed to be called programmatically by AI agents, automation workflows, and developer pipelines.
Quick Integration (JavaScript)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_TOKEN' });const run = await client.actor('george.the.developer/linkedin-company-employees-scraper').call({companies: ['https://www.linkedin.com/company/openai'],searchQuery: 'engineer',maxEmployees: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();// items = [{ fullName, headline, profileUrl, location, ... }]
Quick Integration (Python)
from apify_client import ApifyClientclient = ApifyClient('YOUR_TOKEN')run = client.actor('george.the.developer/linkedin-company-employees-scraper').call(run_input={'companies': ['https://www.linkedin.com/company/openai'],'searchQuery': 'engineer','maxEmployees': 50,})for item in client.dataset(run['defaultDatasetId']).iterate_items():print(f"{item['fullName']} - {item['headline']}")
API Endpoint (Direct HTTP)
curl -X POST "https://api.apify.com/v2/acts/george.the.developer~linkedin-company-employees-scraper/runs?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"companies": ["https://www.linkedin.com/company/openai"], "maxEmployees": 50}'
Input / Output Schema
Input
graph TDsubgraph RequiredA["companies: string[]<br/>LinkedIn URLs or company names"]endsubgraph Optional FiltersB["searchQuery: string<br/>Job title filter"]C["location: string<br/>Geographic filter"]D["seniorityFilter: string[]<br/>senior, director, vp, cxo..."]E["maxEmployees: number<br/>Limit per company (1-1000)"]endstyle A fill:#e8f5e9style B fill:#f3e5f5style C fill:#f3e5f5style D fill:#f3e5f5style E fill:#f3e5f5
{"companies": ["https://www.linkedin.com/company/openai"],"searchQuery": "engineer","location": "San Francisco","seniorityFilter": ["senior", "manager", "director"],"maxEmployees": 100,"maxConcurrency": 3}
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
companies | Array | Yes | — | LinkedIn company URLs or plain company names |
searchQuery | String | No | "" | Job title or keyword filter |
location | String | No | "" | Location filter |
maxEmployees | Integer | No | 100 | Max employees per company (1–1000) |
seniorityFilter | Array | No | [] | Filter: owner, partner, cxo, vp, director, manager, senior, entry |
maxConcurrency | Integer | No | 3 | Concurrent requests (1–10) |
Output
{"publicIdentifier": "thegdb","profileUrl": "https://www.linkedin.com/in/thegdb/","fullName": "Greg Brockman","headline": "OpenAI","location": "San Francisco","company": "openai","scrapedAt": "2026-03-22T09:45:09.102Z"}
| Field | Type | Description |
|---|---|---|
publicIdentifier | string | LinkedIn profile slug |
profileUrl | string | Full LinkedIn profile URL |
fullName | string | Employee full name |
headline | string | Current role / company |
location | string | Geographic location |
company | string | Normalized company identifier |
scrapedAt | string | ISO 8601 timestamp |
Use Cases
mindmaproot((LinkedIn<br/>Employee<br/>Scraper))SalesLead lists by titleDecision-maker discoveryCRM enrichmentRecruitingTalent mappingCompetitor hiringCandidate sourcingResearchOrg chart analysisHeadcount trackingIndustry compositionAutomationAI agent data layern8n / Make workflowsScheduled monitoring
- Sales teams — Find decision-makers at target accounts filtered by title and seniority
- Recruiters — Map talent at competitors by role, location, and level
- Investors — Quick team assessment for due diligence
- AI agents — Reliable structured data source for autonomous prospecting workflows
Pricing
graph LRSTART["Actor Start<br/>$0.005"] --> EXTRACT["Per Employee<br/>$0.004"]EXTRACT --> TOTAL["~$4 per 1,000<br/>employees"]style START fill:#fff9c4style EXTRACT fill:#c8e6c9style TOTAL fill:#e1f5fe
| Event | Cost |
|---|---|
| Actor start | $0.005 per run |
| Employee extracted | $0.004 per employee |
~$4 per 1,000 employees. Pay only for successfully extracted records.
Integrations
graph TDSCRAPER[LinkedIn Scraper] --> API[Apify API]SCRAPER --> WEBHOOK[Webhooks]SCRAPER --> ZAPIER[Zapier]SCRAPER --> MAKE[Make.com]SCRAPER --> SHEETS[Google Sheets]SCRAPER --> SLACK[Slack]SCRAPER --> AGENTS[AI Agents<br/>Claude / GPT / Cursor]style SCRAPER fill:#e3f2fdstyle AGENTS fill:#f3e5f5
- Apify API — Trigger runs and fetch results programmatically
- Webhooks — Get notified when a run completes
- Zapier / Make — Automate data pipelines to your CRM
- Google Sheets — Export directly to spreadsheets
- AI Agents — Call via tool_use / function_calling from any LLM framework
Why This Scraper
| Feature | This Scraper | DIY Script |
|---|---|---|
| Login required | No | Yes |
| Ban risk | Zero | High |
| Proxy management | Automatic | Manual |
| Anti-bot handling | Built-in | DIY |
| Resume on failure | Yes | No |
| Success rate | 97.8% | Variable |
| Maintenance | Managed | You |
FAQ
Do I need a LinkedIn account? No. Uses Google search, not LinkedIn's API. Zero ban risk.
Can I scrape multiple companies? Yes. Pass an array of URLs or names.
What if a run is interrupted? Built-in state tracking skips already-processed profiles on rerun.
Can AI agents use this? Yes. Designed for programmatic use — structured JSON output, clear schema, API-first.
Support
Questions? Find me on X/Twitter @ai_in_it or open an issue on GitHub.