Workday Jobs Scraper avatar

Workday Jobs Scraper

Pricing

from $1.20 / 1,000 job results

Go to Apify Store
Workday Jobs Scraper

Workday Jobs Scraper

Scrape open jobs from any company's Workday careers site, even past Workday's 2,000-job limit. Or get only new and closed jobs since your last run. Enter a careers link, a website or a company name.

Pricing

from $1.20 / 1,000 job results

Rating

0.0

(0)

Developer

Novasphere

Novasphere

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 hours ago

Last modified

Share

Get the open jobs from any company's Workday careers site in a clean format. Run it once for the full list, or on a schedule to get only the jobs that were posted or taken down since the last run.

It reads the same public job API that the careers site uses, so there's no login, no browser and no proxy.

Use it to

  • Watch hiring at big employers that use Workday: competitors, customers, prospects
  • Send new roles to Slack, email, a spreadsheet or your own job board
  • Give an AI agent a tool for "who is hiring for X at these companies"
  • Build hiring-signal data for sales or research

Input

Paste one careers site link per line. It's the address of the company's job search page:

CompanyLink
NVIDIAhttps://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite
Intelhttps://intel.wd1.myworkdayjobs.com/External
Salesforcehttps://salesforce.wd12.myworkdayjobs.com/External_Career_Site

A link to any single job on the site works too, and so do myworkdaysite.com links. Don't have the link? Enter the company's name (NVIDIA) or website (nvidia.com) and the Actor finds its Workday site. Some companies have several (Salesforce has nine, for Slack, Tableau, internships and more): the Actor picks the main one and the run summary lists the others, so you can add any you want.

Then pick what to output:

  • All open jobs: everything currently on each site that passes your filters.
  • Only changes since the last run: jobs that are new since the previous run, plus jobs that have been taken down. Runs with the same Feed name share their memory, so use one feed name per watchlist. The first run counts every job as new, unless you tick Skip existing jobs on the first run.

Optional filters: words in the job title (include or exclude), seniority, job function, location, remote / hybrid / on-site, and posted within the last N days.

{
"companies": ["https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite"],
"mode": "changes",
"feedName": "nvidia-engineering",
"titleKeywords": ["engineer"],
"locationKeywords": ["Santa Clara"]
}

Output

One item per job:

{
"change": "new",
"company": "Intel",
"title": "Senior Member of Technical Staff, Thin Films Engineer",
"location": "US, Oregon, Hillsboro",
"workplaceType": null,
"employmentType": "full-time",
"seniority": "senior",
"jobFunction": "engineering",
"department": null,
"team": null,
"salary": null,
"salaryText": null,
"postedAt": "2026-10-19T00:00:00Z",
"url": "https://intel.wd1.myworkdayjobs.com/External/job/US-Oregon-Hillsboro/Senior-Member-of-Technical-Staff--Thin-Films-Engineer_JR0284988",
"applyUrl": "https://intel.wd1.myworkdayjobs.com/External/job/US-Oregon-Hillsboro/Senior-Member-of-Technical-Staff--Thin-Films-Engineer_JR0284988",
"platform": "workday",
"board": "intel.wd1.myworkdayjobs.com/intel/External",
"jobId": "JR0284988",
"allLocations": ["US, Oregon, Hillsboro", "US, Arizona, Phoenix"],
"country": "US",
"updatedAt": null,
"firstSeenAt": "2026-10-22T08:00:12Z",
"closedAt": null,
"checkedAt": "2026-10-22T08:00:12Z"
}
FieldWhat it is
changenew or closed in changes mode; empty when listing all open jobs
companyMade from the site address (nvidia becomes Nvidia)
title, location, allLocationsAs the employer lists them
countryTwo-letter country code of the main location
workplaceTyperemote, hybrid or onsite when the site says (many Workday sites don't)
employmentTypefull-time or part-time, from Workday's time type
seniorityintern, entry, senior, lead, manager, director or executive, read from the job title. Empty when the title doesn't say
jobFunctionArea of work (engineering, sales, data, design, people, ...), read from the job title, then the department or team
salary, salaryTextPay range, when the employer states one in the description
postedAtWhen the job was posted (ISO 8601, UTC)
url, applyUrlThe job's page on the careers site
platform, board, jobIdWhere the job came from. board is the site address, jobId the requisition ID
firstSeenAt, closedAtChanges mode: when this feed first saw the job, and when it noticed it was gone
checkedAtWhen the site was read
descriptionPlain-text job description, only if you tick Include the job description

department and team are always empty: Workday's public job pages don't have them.

Each run also saves a summary to its key-value store under OUTPUT: sites checked, sites not found or unreadable (with the reason), and job counts.

Speed

Workday shows 20 jobs per page, and each job's locations, country, job type and description are on a separate page. The Actor reads those only for the jobs it outputs. A run that outputs a few dozen jobs takes seconds; a full list of a site with thousands of jobs takes a few minutes. The title filter and Max jobs per careers site keep runs short.

Running it as a change feed

  1. Set What to output to Only changes and give the feed a name.
  2. Add a schedule, for example daily.
  3. Connect an integration (webhook, Slack, email, Google Sheets, Zapier, Make) to receive each run's new and closed jobs.

Using it from an AI agent or code

Every input is plain JSON, so it works through the Apify API, the Python and JavaScript clients, and Apify's MCP server (https://mcp.apify.com) for Claude, ChatGPT and other agents. The input also accepts a comma-separated string for companies and the keyword fields.

Good to know

  • Not affiliated with or endorsed by Workday. The name only says which careers sites this reads.
  • Only public job data is read. There's no candidate or employee data.
  • Job descriptions are the employer's text. Respect each employer's terms if you republish them.
  • Workday shows at most 2,000 jobs per search. For bigger sites (NVIDIA has over 2,700) the Actor splits the search by job category or another filter the site offers, so every job is read. If a site can't be split, the run summary says so, and changes mode doesn't report the jobs it couldn't see as closed.
  • Each employer writes locations its own way, for example US, Oregon, Hillsboro (Intel) or Australia - Melbourne (Salesforce). Check a few results before setting a location filter.
  • In changes mode every job on a site is tracked, and filters only decide what's output, so changing a filter later won't resend old jobs.
  • In changes mode, if a run stops at your maximum charge, the changes it couldn't output are kept and come out on the next run.
  • The feed's memory is kept in your account in a key-value store named workday-jobs-feed-<feed name>. Delete it to start the feed fresh.
  • Sites that can't be found or read are listed in the run summary; the rest of the run carries on.
  • Tracking companies on other job boards too? The multi-platform version reads Greenhouse, Lever, Ashby, Workday, SmartRecruiters, Workable, Recruitee, Personio and BambooHR in one run. To search new jobs across thousands of companies at once, try Career Site Job Search.