Company Career Page Jobs from a List of Websites avatar

Company Career Page Jobs from a List of Websites

Pricing

$3.00 / 1,000 result rows

Go to Apify Store
Company Career Page Jobs from a List of Websites

Company Career Page Jobs from a List of Websites

Paste a list of company websites. The tool finds each careers page, works out which hiring system it runs on (Greenhouse, Lever, Ashby, Workable, Recruitee, Personio) and returns every open job from that system's public job list. One honest row for any company it cannot read. Pay per row.

Pricing

$3.00 / 1,000 result rows

Rating

0.0

(0)

Developer

US Tech Automations

US Tech Automations

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

This is a career site jobs tool, a company careers scraper, and an ATS jobs API for Greenhouse, Lever, Ashby, Workable, Recruitee and Personio jobs: paste company websites and get one row per open job from that company's public hiring-system job list.

It opens the page you give it. When that address is a homepage, it also opens at most three careers or jobs links found on that page. It names the hiring system from links in the HTML, then reads only that system's official public job list. A company it cannot read comes back as one error row. When the page names no hiring system, it tries the company's own name as a Greenhouse board and keeps that result only when the board's jobs link back to the same company site.

Input

FieldWhat you put in
Company websitesRequired. Company homepages or careers-page addresses. At most 500.
Title keywordsOptional. Keep a job only when its title contains one of these words or phrases. Case does not matter. Leave empty for every job.
Maximum jobs per companyDefault 200. The run stops adding jobs from that company at this number.
Maximum rowsDefault 1,000. Hard cap 20,000. This is also the spend cap.
Ids already seenOptional. Job ids or dedupe keys from an earlier run. A match is marked not new.
Proxy configurationOptional Apify proxy. Off by default, including on a local run.

Pricing

Pay per result. $0.003 per row. No start fee.

Every dataset row bills from row one, including an error row for a company that could not be read. A run that returns no rows costs nothing. Maximum rows is the spend cap.

Output (one row per job)

One example row from a real local run on 21 September 2026. The input was https://www.palantir.com. The run returned 5 rows. This is the first:

{
"company_input": "https://www.palantir.com",
"careers_page": "https://www.palantir.com/careers/",
"hiring_system": "lever",
"board_id": "palantir",
"job_id": "ac978161-6f46-4f6b-ad9e-a258e642751c",
"title": "Administrative Business Partner",
"department": "Administrative",
"location": "London, United Kingdom",
"remote": false,
"employment_type": "Full-time",
"posted_at": "2024-03-25T21:50:16Z",
"updated_at": null,
"job_url": "https://jobs.lever.co/palantir/ac978161-6f46-4f6b-ad9e-a258e642751c",
"apply_url": "https://jobs.lever.co/palantir/ac978161-6f46-4f6b-ad9e-a258e642751c/apply",
"dedupe_key": "lever:palantir:ac978161-6f46-4f6b-ad9e-a258e642751c",
"is_new": true,
"fetched_at": "2026-09-21T18:03:02Z",
"error": null
}
FieldWhat it holds
company_inputThe address you pasted
careers_pageThe page where the hiring system was named
hiring_systemgreenhouse, lever, ashby, workable, recruitee, personio, smartrecruiters (named, but its job list is never read — see below), or a named unsupported system such as workday
board_idThe board id written on the page. Empty when it was not written there
job_idThe id from the official job list
titleJob title
departmentDepartment, when the job list has one
locationLocation string from the job list
remotetrue or false when the job list says so. Empty when it does not
employment_typeEmployment type from the job list. Empty when it has none
posted_at / updated_atDates from the job list. Empty when that list has no such date
job_url / apply_urlPublic job and apply links from the job list
dedupe_keysystem:board id:job id
is_newfalse when that id or dedupe key was in Ids already seen. Otherwise true on a job row
errorEmpty on a job row. A plain-English reason on a failed company
fetched_atWhen this run read the list, in UTC

What this does not do

  • It does not log in, use cookies, solve a CAPTCHA, or read applicants.
  • Stripe's public homepage and /careers page, fetched on 21 September 2026, did not contain a Greenhouse board id. /careers/search contains Greenhouse job ids and still does not contain the board id, so those jobs are not returned.
  • It does not read SmartRecruiters. api.smartrecruiters.com/robots.txt says Disallow: / for a normal browser.
  • It does not read Workday, iCIMS, Phenom, or other systems it can name. Those companies return one error row.
  • It does not turn Ramp's homepage into a careers page. On this machine that homepage came back as a short markdown "Machine Version" with no careers link. https://ramp.com/careers did contain Ashby links for board ramp.
  • It does not return recruiter names, emails, or phone numbers.
  • It does not grant a licence to republish a company's jobs. See SOURCE_TERMS.md.
  • It does not promise speed or uptime. One local Palantir run returned 5 rows in 21.48 seconds. That is one measurement, not a rate.

Limits

  • At most 500 company addresses.
  • At most 6 requests for each company (its robots file, the page, up to three careers links, one possible Greenhouse board guess, and the job list).
  • One second between requests to the same host.
  • Official lists used, and only when that host's robots file allows the path: Greenhouse https://boards-api.greenhouse.io/v1/boards/{id}/jobs?content=false, Lever https://api.lever.co/v0/postings/{id}?mode=json, Ashby https://api.ashbyhq.com/posting-api/job-board/{id}, Workable https://apply.workable.com/api/v1/widget/accounts/{id}, Recruitee https://{id}.recruitee.com/api/offers/, Personio https://{id}.jobs.personio.de/xml.
  • Workable's robots file allows that path and also contains Content-Signal: search=yes, ai-input=yes, ai-train=no. That line is not a path block. This tool does not train a model.
  • api.ashbyhq.com/robots.txt returned HTTP 401 on this machine. That is not a Disallow line. The Ramp job list itself returned HTTP 200 during the probe.
  • A blocked or missing company is one error row. Other companies in the same run still run.

When the careers page hides its hiring system

If no hiring system is named on the page, the tool tries the company's own name as a Greenhouse board and keeps the result only when that board's job links point back to the same company website. If they do not match, the guess is thrown away and you get one plain row that says the company's own name was tried as a board and rejected. An unverified guess is never returned as a match.