5 credits per employee returned
When to Use
Use this endpoint to retrieve employees for ONE specific company from LinkedIn/Coresignal data. The company constraint is automatically applied based on the identifier you provide. This endpoint is for:- Getting LinkedIn-enriched employee profiles from a company
- Filtering employees by department, seniority, location, skills, etc.
- Finding current employees vs. all employees (past and present)
- Scraping employee info from a company website (use
getEmployeesFromWebsiteinstead)
Method
Input
Company Identifiers (at least one required)
Optional Parameters
The FilterSpec API
FilterSpec provides a simple, declarative way to filter employees. The system automatically handles nested Elasticsearch paths.Filter Types
Critical: Filtering for Current Employees
The most common use case is filtering for current employees only. In Coresignal data, an employee is current if theirexperience.date_to field is null/missing (no end date).
Location Filtering
⚠️ Important: Use location_country, NOT location_regions
The location_regions field is unreliable and should NOT be used. Instead:
- For US employees (most common): Use
location_countrywith exact value"United States" - For specific cities/states: Use
textAnyonlocation_raw_address
Recommended Pattern: Get LinkedIn URL First
When you only have a company website, ALWAYS create a separate column to get the LinkedIn company URL first, then use that URL for employee lookups.Multi-Column Pattern
Column A: Company Website (input)Column B: LinkedIn Company URL (resolve first)
Column C: Employees (use LinkedIn URL from Column B)
When Company ID is Available (Most Efficient)
If you have the Coresignal company ID, use it for fastest lookups:FilterSpec Examples
Example 1: Current Employees Only
Example 2: Current Employees in Engineering
Example 3: Current Senior Leadership
Example 4: Current Sales Team in the United States
Example 5: Employees with Specific Skills
Theskills field is a text array — use textAny for partial matching:
Example 6: Decision Makers with High Connections in US
connections_count is capped at 500 in Coresignal. Values above 500 won’t
filter correctly.Example 7: C-Suite & Founders Only
Valid Enum Values
Departments
Management Levels
Location Countries (common values for location_country)
Filterable Fields Reference
Top-Level Fields (keyword/exact match with termsAny)
Top-Level Fields (text search with textAny/textAll)
Top-Level Fields (numeric range with range)
Nested Experience Fields (use experience. prefix)
Output Schema (CleanCoresignalEmployee)
Each employee returned has the following structure. Here’s a condensed real example:Core Identity
Current Position
Location
Network & Skills
Experience History
Performance Tips
- Use
given_company_idwhen available — it’s the fastest identifier (skips resolution step) - Use
linkedinCompanyUrlif you have it — faster than resolving from website - Resolve LinkedIn URL first when only website is available — use
services.company.linkedin.findUrlin a separate column - Use
notExists: [{ field: "experience.date_to" }]to filter out former employees - Use
location_countryfor country filtering (notlocation_regions) - Combine filters to reduce result set size
Error Handling
- Returns empty array if no employees match filters
- Invalid FilterSpec values throw validation errors
- Throws
NonRetriableErrorif LinkedIn URL or company ID doesn’t exist in Coresignal