Company Employees API
Retrieve public employee profiles associated with a company using a company name, company domain, or company social media URL. Results are returned asynchronously as a structured array of people.
Related Endpoints
Overview
API Endpoint
POST https://api.nyne.ai/company/employees
- Input: At least one of a company name, company domain, or company social media URL.
- Range: Request between 1 and 1,000 employee profiles per job.
- Delivery: Always asynchronous. Receive a
request_idimmediately, then poll or register a callback. - Output: A
resultsarray of person-shaped objects with names, headlines, locations, organizations, profile photos, and social profile links. - Caching: Raw source data is cached for 7 days and formatted results are stored for fast follow-up retrieval.
Authentication
Authenticate every request with your API key and secret:
X-API-Key: your_api_key_hereX-API-Secret: your_api_secret_here
Rate Limits
Company employee requests count against the following limits for your account:
- Per Minute: 60 requests
- Per Hour: 1000 requests
- Monthly: Varies by plan
Credit Usage
Credits are charged based on the number of profiles returned:
- Company Employees: 3 credits per person found
Credit Efficiency
If a request returns 27 people, the request consumes 27 credits. If it returns no profiles, no per-result credits are charged.
POST /company/employees
Queue a company employee lookup request.
POST /company/employees
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
company_name |
string | one of three | Company name. Use this when you want to search by the company’s public name. |
domain |
string | one of three | Company domain or website hostname. Protocols, paths, and www. are removed automatically. |
social_media_url |
string | one of three | Company social media URL. Query strings, fragments, and extra URL cruft are removed automatically before processing. |
max_employees |
integer | optional | Maximum number of people to return. Allowed range is 1–1000. Default is 10. |
callback_url |
string | optional | HTTP or HTTPS endpoint that receives the completed payload automatically. |
company_name, domain, or social_media_url.
Example Request
cURL Example
curl -X POST https://api.nyne.ai/company/employees \
-H "X-API-Key: your_api_key_here" \
-H "X-API-Secret: your_api_secret_here" \
-H "Content-Type: application/json" \
-d '{
"company_name": "Acme",
"domain": "acme.com",
"max_employees": 25
}'
Immediate Response
GET /company/employees?request_id=...
Poll for completion or retrieve cached results.
GET /company/employees
Query Parameters
request_id(string, required) – the value returned byPOST /company/employees.
cURL Example
curl -X GET "https://api.nyne.ai/company/employees?request_id=94f1bf8a0d1a1f065a9b4e7fbc3df6aabbb6d828ce64fe780a5496f43b61fc73" \ -H "X-API-Key: your_api_key_here" \ -H "X-API-Secret: your_api_secret_here"
Completed Response
Response Format
The completed payload returns a results array of person-shaped objects. Common fields include:
displayname // Full name
headline // Current headline or title line
bio // Headline fallback for profile summary
address.city // City if available
address.state // State or region if available
address.country // Country if available
organizations[0].name // Current organization name
organizations[0].is_current // Always true for the current organization entry
social_profiles // Social profile URLs and photo metadata when available
websites[] // Personal website URLs when available
Minimal Rows
If only a profile URL is available for a person, the record is still returned so you can decide whether to enrich it further.
Callbacks
If you provide a callback_url, the completed payload is sent to your endpoint automatically.
POST https://example.com/webhook/company-employees
Content-Type: application/json
{
"request_id": "94f1bf8a0d1a1f065a9b4e7fbc3df6aabbb6d828ce64fe780a5496f43b61fc73",
"status": "completed",
"completed": true,
"completed_on": "2026-04-20T21:15:19Z",
"timestamp": "2026-04-20T21:15:19Z",
"success": true,
"data": {
"company_name": "Acme",
"domain": "acme.com",
"max_employees": 25,
"page": 1,
"limit": 25,
"total_results": 1,
"results": [
{
"displayname": "Jane Doe",
"headline": "VP of Sales at Acme"
}
]
}
}
Error Codes
missing_parameters– None ofcompany_name,domain, orsocial_media_urlwas supplied.invalid_url– The supplied company social media URL could not be processed.invalid_domain– The supplied company domain could not be processed.invalid_limit–max_employeesmust be between 1 and 1000.invalid_callback_url–callback_urlis not a valid HTTP or HTTPS URL.subscription_required– This API is not enabled on the account.rate_limit_exceeded/monthly_limit_exceeded– Usage limits were exceeded.request_not_found– Therequest_iddoes not exist or does not belong to the authenticated API key.
Best Practices
- Use the strongest identifier you have: A clean company domain or social media URL tends to be more specific than a name by itself.
- Set a realistic limit: Start with a smaller
max_employeesfor interactive workflows, then increase it for batch jobs. - Prefer callbacks for larger requests: Polling works well for testing, but production integrations should supply a
callback_url. - Chain to person enrichment selectively: Use this endpoint to identify relevant profiles first, then enrich only the people you actually need.