Install
openclaw skills install @upkuajing/linkedin-company-employeePull LinkedIn employee lists and job titles by company ID. Analyze internal hierarchies for talent mapping and qualified sales‑lead development. Trigger:LinkedIn employee lookup, corporate hierarchy research, team‑structure analysis, B2B lead qualification, talent mapping via LinkedIn
openclaw skills install @upkuajing/linkedin-company-employeeQuery employee data from LinkedIn using the UpKuaJing Open Platform API.
This skill provides access to employee information from UpKuaJing's LinkedIn data. Given a company ID (pid), it returns the list of employees with their person IDs and job titles.
Prerequisite: The company ID (pid) is required as input. If the user does not already have a company ID, use the linkedin-company-search skill first to search for the target company and obtain its pid, then proceed with this skill.
python --versionpip install -r requirements.txtScript directory: scripts/*.py
Run example: python scripts/*.py
Important: Always use direct script invocation like python scripts/linkedin_company_employee_list.py. Do NOT use shell compound commands like cd scripts && python linkedin_company_employee_list.py
linkedin_company_employee_list.py)This skill requires an API key. The API key is stored in the ~/.upkuajing/.env file:
cat ~/.upkuajing/.env
Example file content:
UPKUAJING_API_KEY=your_api_key_here
First check if the ~/.upkuajing/.env file has UPKUAJING_API_KEY;
If UPKUAJING_API_KEY is not set, prompt the user to choose:
auth.py --new_key), the new key will be automatically saved to ~/.upkuajing/.env
Wait for user selection;When API response indicates insufficient balance, explain and guide user to top up:
auth.py --new_rec_order)Use this script to get account information for UPKUAJING_API_KEY: auth.py --account_info
When an API call fails or returns abnormal data (server error, timeout, malformed response, etc.), explain the anomaly to the user in natural language and ask whether to report it to the platform for troubleshooting. Only run the report after user confirmation:
python scripts/error_report.py --params '{"requestPath":"/agent/search/linkedin/company/employee/list","requestId":"f47ac10b58cc4372a5670e02b2c3d479","context":"LinkedIn company employee list query failed with a server error"}'
All API calls incur fees, different interfaces have different billing methods.
Latest pricing: Users can visit Detailed Price Description
Or use: python scripts/auth.py --price_info (returns complete pricing for all interfaces)
Billed by number of calls, each call returns one page of employee records:
--cursor to get additional pages (each page is a separate call)Any operation that incurs fees must first inform and wait for explicit user confirmation. Do not execute in the same message as the notification.
| User Intent | Use API |
|---|---|
| "List employees of company US_12345" | Employee List Query |
| User has a company name but no pid | linkedin-company-search (find the company and get its pid, then use this skill) |
User request: "List employees of company US_12345"
python scripts/linkedin_company_employee_list.py --pid US_12345
Get next page (use cursor returned from previous response):
python scripts/linkedin_company_employee_list.py --pid US_12345 --cursor 'cursor_string_from_previous_response'
UPKUAJING_API_KEY in ~/.upkuajing/.env filepython scripts/error_report.py (see Report Skill Call Errors)Check API documentation:
Query parameters:
Pagination:
cursor, more data is availablecursor value to get the next pagecursor means there is no more datahid as the person unique identifier; pid is the company identifiertitleNames is a list of job title strings for each employeepython scripts/auth.py --price_info to get accurate pricing informationOther UpKuaJing skills you might find useful: