Back to LinkedIn
Apify·LinkedIn
List LinkedIn Company Employees
/harvestapi/linkedin-company-employeesasync$0.018 / resultExtract all LinkedIn Company employees with filters and detailed profile information, including complete work experience, and more. No cookies or account required. This actor can try to find contact emails. Runs as an Apify actor (20–120 s); results are dataset rows.
Charged per returned row plus the flat fee.
Input
| Field | Type | Required | Description |
|---|---|---|---|
| profileScraperMode | string (Short ($4 per 1k), Full ($8 per 1k), Full + email search ($12 per 1k)) | — | Choose the mode for scraping LinkedIn profiles. The Short mode provides basic information, while the Full mode includes full detailed profile data. (default "Full ($8 per 1k)") |
| maxItems | integer | — | Maximum number of profiles to scrape. The actor will stop scraping when this limit is reached. |
| companies | array | — | Search employees of these companies. Provide full LinkedIn URLs. Example: `https://www.linkedin.com/company/google` |
| locations | array | — | Filter employees by these LinkedIn locations. Example: `San Francisco`. LinkedIn does not always understand your text queries. For example for "UK" query it will apply "Ukraine" location, so you should use "United Kingdom" in this case. Try this out first in the location filter input of LinkedIn sea |
| searchQuery | string | — | Query to search LinkedIn profiles. |
| jobTitles | array | — | Filter Profiles by these LinkedIn job titles. Example: `Software Engineer`. |
| pastJobTitles | array | — | Filter Profiles by these LinkedIn past job titles. Example: `Software Engineer`. |
| schools | array | — | Filter Profiles by these LinkedIn schools. Example: `Stanford University`. |
| industryIds | array | — | Filter Profiles by these LinkedIn industry IDs. Example: `4` for 'Software Development'. Full list: `https://github.com/HarvestAPI/linkedin-industry-codes-v2/blob/main/linkedin_industry_code_v2_all_eng_with_header.csv` |
| yearsAtCurrentCompanyIds | array | — | Filter Profiles by these LinkedIn years at current company IDs. Example: `3` for '3 to 5 years'. Full list: { "1": "Less than 1 year", "2": "1 to 2 years", "3": "3 to 5 years", "4": "6 to 10 years", "5": "More than 10 years" } |
| yearsOfExperienceIds | array | — | Filter Profiles by these LinkedIn years of experience IDs. Example: `3` for '3 to 5 years'. Full list: { "1": "Less than 1 year", "2": "1 to 2 years", "3": "3 to 5 years", "4": "6 to 10 years", "5": "More than 10 years" } |
| seniorityLevelIds | array | — | Filter Profiles by these LinkedIn seniority level IDs. Example: `120` for 'Senior'. Full list: { "100": "In Training", "110": "Entry Level", "120": "Senior", "130": "Strategic", "200": "Entry Level Manager", "210": "Experienced Manager", "220": "Director", "300": "Vice President", "310": "CXO", "320 |
| functionIds | array | — | Filter Profiles by these LinkedIn function IDs. Example: `8` for 'Engineering'. Full list: { "1": "Accounting", "2": "Administrative", "3": "Arts and Design", "4": "Business Development", "5": "Community and Social Services", "6": "Consulting", "7": "Education", "8": "Engineering", "9": "Entrepreneu |
| companyHeadcount | array | — | Filter Profiles by their current company's headcount. |
| recentlyChangedJobs | boolean | — | If enabled, only Profiles of people who have recently changed jobs will be returned. |
| companyBatchMode | string (all_at_once, one_by_one) | — | Choose how to process the companies. 'All at once' will search employees from all companies in one query, while 'One by one' will process each make a query for each company separately. The start fee will apply for each query. (default "all_at_once") |
| maxItemsPerCompany | integer | — | Maximum number of profiles to scrape. The actor will stop scraping when this limit is reached. |
| startPage | integer | — | The page number to start scraping from. Starts from 1. |
| takePages | integer | — | The number of search pages to scrape. Each page contains 25 profiles. |
| excludeLocations | array | — | Exclude Profiles by these LinkedIn locations. Example: `San Francisco`. LinkedIn does not always understand your text queries. For example for "UK" query it will apply "Ukraine" location, so you should use "United Kingdom" in this case. Try this out first in the location filter input of LinkedIn sea |
| excludePastCompanies | array | — | Exclude Profiles by these LinkedIn past companies. Provide full LinkedIn URLs |
| excludeSchools | array | — | Exclude Profiles by these LinkedIn schools. Example: `Stanford University`. |
| excludeCurrentJobTitles | array | — | Exclude Profiles by these LinkedIn current job titles. Example: `Software Engineer`. |
| excludePastJobTitles | array | — | Exclude Profiles by these LinkedIn past job titles. Example: `Software Engineer`. |
| excludeIndustryIds | array | — | Exclude Profiles by these LinkedIn industry IDs. Example: `4` for 'Software Development'. Full list: `https://github.com/HarvestAPI/linkedin-industry-codes-v2/blob/main/linkedin_industry_code_v2_all_eng_with_header.csv` |
| excludeSeniorityLevelIds | array | — | Filter Profiles by these LinkedIn seniority level IDs. Example: `120` for 'Senior'. |
| excludeFunctionIds | array | — | Filter Profiles by these LinkedIn function IDs. Example: `8` for 'Engineering'. |
Run it
curl -s https://www.sooma.dev/v1/run \
-H "Authorization: Bearer $SOOMA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"provider":"apify","endpoint":"/harvestapi/linkedin-company-employees","input":{}}'
Or ask your agent: it will call inspect for this schema and run it over MCP.