Workday Jobs Scraper & API: Any Company Career Site
Pricing
from $0.72 / 1,000 jobs
Workday Jobs Scraper & API: Any Company Career Site
Get every open job from any company's Workday career site (myworkdayjobs.com) in one clean format, with full descriptions, locations, departments and pay ranges when published. Filter by keyword, location, remote and date, or get only new jobs since your last run.
Pricing
from $0.72 / 1,000 jobs
Rating
0.0
(0)
Developer
agentready
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 hours ago
Last modified
Categories
Share
Get every open job from any company's Workday career site (*.myworkdayjobs.com) in one clean, flat format. Just type the company name (e.g. NVIDIA) or paste its career-site URL. You get title, full description, locations, country, department, job type, posting date and pay range when the posting states one. Filter by keyword, location, remote and date, or turn on "only new jobs" to get just what was posted since your last run.
Thousands of large employers (NVIDIA, Salesforce, Adobe, Mastercard, Intel and many more) run their careers pages on Workday. This Actor reads the same public job data the career page shows in your browser. No login, no API key.
Why this one
- Type a company name, not a URL. The Actor finds the company on Workday and reads every public career site it lists (some have one for students, one per brand, and so on). If a name isn't found, the run report says so and you can paste the URL instead.
- Past Workday's 2,000-job limit. Workday stops each search at 2,000 jobs. For bigger employers this Actor reads category by category, so you get the whole site, and the run report tells you if anything could still be missing.
- Same format as our ATS Jobs Actor for Greenhouse, Lever and Ashby. Combine both outputs without mapping fields.
- Departments and pay ranges. Every job gets its site category (e.g. "Engineering"). Pay is extracted only when the posting writes an explicit range, never guessed.
- You pay only for jobs you get. Filters on title and date are applied before a job is opened, and "only new jobs" never re-charges for jobs you already received.
- Polite and rule-following. Each site's robots.txt is checked first; sites that disallow it are skipped and reported.
Quick start
All jobs from one company:
{"careerSites": ["NVIDIA"]}
A career-site URL works too: "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite".
Daily feed of new jobs across several employers
Schedule this every morning. The first run returns everything that matches; after that only new jobs appear, and you only pay for those.
{"careerSites": ["https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite","https://salesforce.wd12.myworkdayjobs.com/External_Career_Site"],"keywords": ["machine learning", "data engineer"],"locations": ["United States", "Remote"],"postedWithinDays": 3,"onlyNewJobs": true,"monitoringList": "ml-roles"}
Company not found by name? Paste its career-site URL instead: open the company's careers page, click through to its job search, and copy the address. It looks like https://<company>.wd<N>.myworkdayjobs.com/<SiteName>. A link to any single job on the site also works.
Step-by-step tutorial
Pull every job from any Workday career site: from company name to a daily feed of new jobs, with a real NVIDIA record and pay range.
Input
| Field | What it does |
|---|---|
careerSites | Company names (NVIDIA, Salesforce) or Workday career-site URLs, up to 200 sites per run. |
keywords / excludeKeywords | Whole-word match on the title ('AI' does not match 'maintain'). |
searchInDescription | Also match keywords in the full description. |
locations | Keep jobs whose location or country contains any of these. |
remoteOnly | Only jobs marked remote. |
departments | Only these job categories, e.g. Engineering. |
postedWithinDays | Only jobs posted in the last N days (much faster). |
onlyNewJobs / monitoringList | Output only jobs not returned in earlier runs under the same list name. |
descriptionFormat | text (default), html, both or none. |
maxJobsPerCompany / maxResults | Caps per site and in total. |
Output
One record per job, always with the same fields. Missing values are null.
{"id": "workday:nvidia/NVIDIAExternalCareerSite:Senior-Manager--Silicon-Speed-Productization---Silicon-Co-Design-Group_JR2026496","ats": "workday","companySlug": "nvidia/NVIDIAExternalCareerSite","companyName": "Nvidia","jobId": "JR2026496","title": "Senior Manager, Silicon Speed Productization — Silicon Co-Design Group","department": "Engineering","team": null,"locations": ["US, CA, Santa Clara"],"country": "United States of America","workplaceType": null,"isRemote": null,"employmentType": "Full time","salary": { "min": 232000, "max": 368000, "currency": "USD", "interval": null, "summary": "The base salary range is 232,000 USD - 368,000 USD." },"seniority": "senior","yearsExperienceMin": 12,"skills": [],"salaryYearlyMin": null,"salaryYearlyMax": null,"postedAt": "2026-09-29","updatedAt": null,"url": "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/...","applyUrl": "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/...","description": "NVIDIA's Silicon Co-Design Group (SCG) sees every silicon program...","descriptionHtml": null,"scrapedAt": "2026-09-29T12:00:00Z"}
postedAtis a date only; Workday doesn't publish a time.workplaceTypeis set only when the site says remote or hybrid in a location or remote field; text such as "#LI-Hybrid" in a description is not used.salary.intervalishouroryearonly when the posting says so.seniority,yearsExperienceMinandskillscome only from what the posting says: the level word in the title ("Senior", "Staff", "Director", "Intern", ...), a stated "N+ years of experience", and tools named from a fixed list (Python, SQL, AWS, Salesforce, Excel and about 50 more). Otherwisenullor an empty list.salaryYearlyMin/salaryYearlyMaxrestate the pay range per year (hourly x 2,080, monthly x 12, ...), only when the posting gives the pay interval.- When a posting gives one pay range per job level (e.g. Level 4 and Level 5),
salary.minandsalary.maxcover all the levels, andsalary.summarykeeps the posting's full sentence.
Each run also saves a RUN_SUMMARY record with the Workday company and career sites each name was matched to, each site's status (ok, not_found, blocked_by_robots, error), jobs listed, checked, matched and output, and mayBeIncomplete when a site was too big to read in full.
Using it from an AI agent (MCP)
Works as a tool in Claude, Cursor and other MCP clients through Apify's MCP server. For example: "Use Workday Jobs to list data-engineering jobs NVIDIA posted this week." Set postedWithinDays and a small maxResults for chat use.
Pricing
You pay per job returned, with no monthly fee. Set a maximum charge on any run and the Actor stops cleanly when it's reached.
Good to know
- Big employers list thousands of jobs, and each job is opened once to read its description, so a full read of a large site takes a few minutes. Date and title filters make runs much faster.
- The company name comes from the Workday address (e.g. "Nvidia"); Workday doesn't publish a display name.
- A company name reads all of the public career sites the company lists in its Workday robots.txt. To read just one, paste that site's URL. Names work when the company's Workday id matches its name (NVIDIA, Salesforce, Mastercard and most others); a few use abbreviations, and for those you paste the URL.
- Sites whose robots.txt disallows their career pages are skipped and reported, whether given by name or URL.
- This Actor is not affiliated with or endorsed by Workday, Inc. or any employer listed. Job postings belong to the employers that publish them.
Support
Found a problem or want a field added? Open an issue on the Actor's Issues tab.