Skip to main content
POST

Company Jobs

Search for job postings from a specific company by providing its LinkedIn URL. The API enriches the company profile from a 52M+ company database and returns matching jobs with full metadata.

Authentication

This endpoint requires a Bearer token. Enter your API key in the authorization field above — the Bearer prefix is added automatically. New jobs cost one credit each; previously paid jobs and empty results are available at zero or negative balance.

Request Headers

string
Optional stable retry key for idempotent requests. Format: use_v1_ followed by 1–121 ASCII letters, digits, underscores, or hyphens. Invalid keys return 400.Reuse the same key and unchanged request body when retrying this endpoint. Generate a new key for a new search or page of results (search_after). Reusing a key with changed request intent or an expired billing period returns 409. See idempotency best practices.

Request Body

Company Identification

string
required
LinkedIn company profile URL. Must start with https://www.linkedin.com/company/ and include the company identifier.
string
Company name. Used alongside the LinkedIn URL for broader job matching. If enrichment returns additional name variants, they are combined automatically.
string
Company website domain. Currently used for enrichment context.
When true, uses fuzzy matching on the company name instead of exact match. Useful when the company name in job postings varies from the official name.

Location Filters

array
Filter jobs by location. Each item supports country, state, and city. Multiple locations use OR logic.
array
Exclude jobs from specific locations. Same structure as jobs_locations.
boolean
default:"null"
Filter by remote status. true returns only remote jobs, false returns only non-remote jobs, null includes both.
boolean
default:"null"
When true, only returns jobs that have country information available.

Date Filters

string
default:"six months ago plus one day"
Start date in YYYY-MM-DD format, within the latest six months. Defaults to midnight at six calendar months before today plus one day.
string
default:"today"
End date in YYYY-MM-DD format. Defaults to midnight today and must be later than published_after.

Job Filters

array
Filter by department. Values are case-sensitive.
array
Filter by employment type.Possible values: Full Time, Part Time, Contract, Internship, Volunteer
array
Filter by seniority level. ML-generated, available for English-language jobs.Possible values: Entry Level, Mid Level, Executive Level
Industry filtering is only supported by Jobs Search. Company Jobs ignores industry.
boolean
Set true to return only jobs that include salary data. false, omitted or null: no salary filter — all jobs are returned.

Keyword Filters

object
Keywords to search for in job titles and descriptions.
object
Keywords to exclude from results. Same structure as job_keywords.
array
Bracketed keyword logic, for queries job_keywords cannot express: requiring two separate words in the same job title, or matching several role profiles in one call.Each item is a group. A group combines its title block, its description block and any nested groups using its own mode. Every group in the top-level array must match, so the array itself behaves as an AND.Require both words in the title, and either technology in the description:
Match either of two role profiles in a single call:
array
The same structure, applied as an exclusion. Jobs matching a group are removed from the results.
A group describes a set of jobs to remove, so its mode applies before the removal. With "mode": "and" the group removes only jobs matching every condition in it: {"mode": "and", "title": {"mode": "and", "terms": ["Intern", "Junior"]}} removes titles containing both words and keeps “Junior Engineer”. To drop jobs matching any of the terms, use "mode": "or" as in the example above.

Job Board Filters

boolean
default:"null"
true includes only jobs from job boards. false returns only company career page postings. null includes both.
array
Only include results from specific job boards. Values are case-insensitive.
array
Exclude results from specific job boards. Values are case-insensitive.

Pagination & Limits

integer
default:"100"
Maximum number of jobs to return. Maximum: 100. We recommend 10–100 per page. Use search_after to request the next page.
array
Pagination cursor from a previous response. Pass the search_after value from the last response to fetch the next page.
boolean
default:"true"
Remove duplicate job listings from results.

Response

boolean
true if the search completed successfully.
object
The search response payload. A failed search can still include a data object with empty results. Check success and error before using the results.
string
A string message or null. An empty successful search may include an explanatory message; use success to determine whether the search failed.

Pagination

If the response contains a non-null search_after array, pass it in your next request to fetch more results:
When search_after is null in the response, you have reached the last page.
For the service_unavailable case, the search or service is temporarily unavailable and nothing was charged. Retry with the same Idempotency-Key. A 429 response means no jobs were delivered or charged. It includes Retry-After (seconds to wait), Idempotency-Key (the effective operation key), and X-Request-ID (a UUID for this HTTP attempt). Retry after the indicated delay with the same request body and idempotency key. Reuse a caller-supplied key to recover a lost response within the billing period.

Rate Limits

This endpoint is rate-limited to 200 requests per minute per API key.