Urgent.News

What's breaking now, across thousands of outlets.

Tech

How to scrape Workday job postings (and the 2,000-job trap)

Thousands of large employers (Nvidia, Salesforce, Adobe and much of the Fortune 500) publish their jobs on Workday. Unlike Greenhouse or Lever, Workday has no documented public API and no global directory, so most job scrapers skip it. But every Workday careers site loads its jobs from a small JSON endpoint that anyone can call. Here is how it works, the two traps that silently break most…

Many major companies—such as Nvidia, Salesforce, and Adobe—post their job openings on the Workday platform. Unlike other job boards like Greenhouse or Lever, Workday does not provide a public API or a comprehensive directory, making it challenging to scrape. However, the careers page of a Workday site loads job data from a small JSON endpoint that can be accessed by anyone.

This endpoint is structured with three key components: the tenant (the company name), the data center, and the site name. To locate these components, you can search for "myworkdayjobs.com/company" using a search engine.

To extract job information, a POST request is made to the careers page's endpoint, specifying parameters like the number of jobs to display (limit), the starting point (offset), and the search terms. The response includes details like the total number of jobs, the job postings themselves, and additional metadata. For a complete view of each job, a GET request is sent to the detail endpoint, which provides further information such as the full job description, exact posting date, and all associated locations.

There are two significant issues to be aware of when scraping Workday job postings. The first issue is the "2,000-job wall." The total number of jobs listed never exceeds 2,000, even though this value is only reported on the initial page. Additionally, if you continue to paginate beyond the 2,000 threshold, Workday does not return an error; instead, it restarts from the first page, leading to duplicate entries.

To avoid this, you should keep track of unique job IDs (externalPath) and stop when you encounter a new page with no additional jobs. For companies with over 2,000 openings, it's best to split the search using search terms or location filters.

The second issue involves interpreting relative dates. The job list only provides vague terms like "Posted Today," "Posted Yesterday," or "Posted 30+ Days Ago." To get accurate posting dates, you should rely on the startDate data available in the detail endpoint. Moreover, a 422 status code indicates that the tenant (company) does not exist, while a 404 status code means the site name is incorrect.

A 401 or 403 status code signifies that the site does not allow anonymous access, and you should respect these restrictions. When making requests, it's advisable to limit the number of simultaneous connections and include a delay if you encounter a 429 Too Many Requests response.

If maintaining a scraper for Workday and other job boards is too cumbersome, there is an alternative solution. The ATS Jobs Scraper on Apify can handle multiple platforms—including Workday, Greenhouse, Lever, Ashby, Workable, Recruitee, and SmartRecruiters—providing a unified format for job data. This tool automatically manages the 2,000-job limitation, delivers precise posting dates, and includes full job descriptions.

The service costs $1 for every 1,000 jobs retrieved. Any companies not found or blocked sites are free to use.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Tech

How to clean a supplier product CSV before importing to Shopify

By Zijian Xiao A supplier spreadsheet can look perfectly readable and still need work before you import it. Product names sit under unfamiliar headers, a price uses a decimal comma, and an SKU has…

  • Make a copy of original CSV to avoid data loss
  • Identify relevant columns for title, SKU, price, barcode
  • Export corrected CSV in UTF-8 format for Shopify import

Auditing the Gaps Around Recurly's Own Dunning

Recurly ships a serious dunning system. Automated retries, account updater integrations, and configurable campaigns handle the mechanical core of failed-payment recovery competently, and teams…

More from Sunday 8 November →