Workday Jobs & Careers Scraper
Pricing
from $6.15 / 1,000 results
Workday Jobs & Careers Scraper
Scrape Workday career site job listings from any company career URL. Extract job title, location, requisition ID, posting date, remote flag, apply URL, pay range and full job description. Filter by keyword. Export JSON, CSV or Excel. No login or API key.
Pricing
from $6.15 / 1,000 results
Rating
0.0
(0)
Developer
Scrapers Lat
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
21 hours ago
Last modified
Categories
Share
Workday Jobs & Careers Scraper
Here is one real result (the descriptionHtml is omitted and descriptionText truncated to keep the example short; both hold the full real value on a live run):
{"title": "Manager, Deep Learning Algorithms","company": "Nvidia","location": "Poland, Warsaw","locations": ["Poland, Warsaw", "Poland, Remote"],"remoteType": null,"timeType": "Full time","requisitionId": "JR1990716","jobPostingId": "Manager--Deep-Learning-Algorithms_JR1990716-1","url": "https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite/job/Poland-Warsaw/Manager--Deep-Learning-Algorithms_JR1990716-1","applyUrl": "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite/job/Poland-Warsaw/Manager--Deep-Learning-Algorithms_JR1990716-1","postedOn": "Posted Today","startDate": "2026-08-10","applicationDeadline": null,"country": "Poland","hiringOrganization": "PL01 Nvidia Poland sp. z o.o.","jobReqId": "JR1990716","payRange": null,"descriptionHtml": "<full HTML job description, present on a live run>","descriptionText": "NVIDIA is seeking an engineering manager to lead engineering activities related to productizing Deep Learning models. Academic and commercial groups around the world are using GPUs","tenant": "nvidia","site": "NVIDIAExternalCareerSite","observedAt": "2026-08-10T14:19:25.177Z","error": null}
The most complete Workday jobs scraper available. Point it at any company's Workday career site and it returns every field the posting exposes, from title, requisition ID, all locations and work type to the full job description, apply URL, start date, application deadline, hiring organization, and any disclosed pay range, with an optional paid add-on to find a public business contact email and name for each job.
📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples
Table of contents
- What it does
- Quickstart
- Input reference
- Output reference
- Example output record
- Run via API and CLI
- Fetch results
- Billing and limits
- FAQ and troubleshooting
What it does
Thousands of large employers host their careers page on Workday. Give this actor one or more Workday career site URLs and it paginates through every open job, returning one normalized record per posting. When detail enrichment is on, it opens each job to add the full description (HTML and plain text), all locations, remote flag, work type, start date, application deadline, hiring organization, and any pay range disclosed in the description text (useful under US pay-transparency laws). You can filter by keyword, remote-only, employment type, and location. Missing source values are returned as null.
An optional paid contact-enrichment add-on can find a public business contact email and a contact person for each job.
Quickstart
Open the actor, paste this into the input, and press Run. It scrapes two company career sites with full job details.
{"maxJobs": 10,"withDetails": true,"careerSiteUrls": ["https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite","https://salesforce.wd12.myworkdayjobs.com/External_Career_Site"]}
Copy each URL from a company's careers page in your browser. Set withDetails to false for faster listing-only rows.
Input reference
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
careerSiteUrls | string[] | yes | (two sample sites) | Full Workday career site URLs to scrape, for example https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite. Add one URL per career site. |
maxJobs | integer | no | 10 | Maximum number of job listings to collect across all career sites. |
withDetails | boolean | no | true | When enabled, each job includes the full description, pay range when disclosed, remote flag, work type, and every location. When off, only lightweight listing fields are collected. |
searchText | string | no | (empty) | Keyword sent to each career site's own search, for example engineer, remote, marketing. Leave empty to return every open job. |
remoteOnly | boolean | no | false | Keep only jobs flagged as remote or whose location mentions remote. |
employmentType | string | no | (empty) | Keep only jobs whose work type contains this text, for example full, part. Most effective with details on. |
location | string | no | (empty) | Keep only jobs whose location or country contains this text. |
enrichContacts | boolean | no | false | Paid add-on. For each result without an email, attempt to find a public business contact email and name. Billed per attempt, plus an extra charge only when an email is found. |
enrichContactsMax | integer | no | 50 | Cap how many results the add-on tries to enrich. Free Apify accounts are capped at 3. |
careerSiteUrls is required.
Output reference
One dataset item per job. Types: string, string[], number, or null when the source value is absent.
| Field | Type | Description |
|---|---|---|
title | string | Job title. |
company | string | Company name derived from the Workday tenant. |
location | string | Primary job location. |
locations | string[] | All locations for the job. |
remoteType | string | Remote work flag when set, or null. |
timeType | string | Work type, for example Full time (detail), or null. |
requisitionId | string | Requisition ID shown on the listing. |
jobPostingId | string | Workday job posting ID (detail), or null. |
url | string | Public job posting URL. |
applyUrl | string | Direct apply URL. |
postedOn | string | Posting recency text, for example Posted Today. |
startDate | string | Job start or posting start date (detail), or null. |
applicationDeadline | string | Application deadline (detail), or null. |
country | string | Country (detail), or null. |
hiringOrganization | string | Legal hiring entity name (detail), or null. |
jobReqId | string | Job requisition ID from the detail record, or null. |
payRange | string | Pay range parsed from the description when disclosed (detail), or null. |
descriptionHtml | string | Full job description as HTML (detail), or null. |
descriptionText | string | Full job description as plain text (detail), or null. |
tenant | string | Workday tenant slug. |
site | string | Workday career site slug. |
observedAt | string | ISO 8601 timestamp of when the record was collected. |
error | string | null on success. On a failed detail fetch, the job is written with a populated error field. |
enrichedEmail | string | Public business contact email (only when enrichContacts is enabled), or null. |
enrichedEmailStatus | string | Email lookup status, for example found or not_found (only with enrichContacts). |
enrichedContactName | string | Contact person name (only with enrichContacts), or null. |
enrichedJobTitle | string | Contact person job title (only with enrichContacts), or null. |
enrichedConfidence | string | Confidence of the enrichment (only with enrichContacts), or null. |
enrichedSource | string | Source of the enriched contact (only with enrichContacts), or null. |
The enriched* fields are present only when the enrichContacts add-on is enabled.
Example output record
See the hero example at the top of this page. It is a real record from a live run with input {"maxJobs": 10, "withDetails": true, "careerSiteUrls": ["https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite", "https://salesforce.wd12.myworkdayjobs.com/External_Career_Site"]}, with descriptionHtml omitted and descriptionText truncated for readability. A live run returns the full HTML and text descriptions.
Run via API and CLI
Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.
Run synchronously and get dataset items in one call:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~workday-jobs-scraper/run-sync-get-dataset-items?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"careerSiteUrls":["https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite"],"searchText":"engineer","maxJobs":25,"withDetails":true}'
Start a run asynchronously:
curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~workday-jobs-scraper/runs?token=<TOKEN>" \-H "Content-Type: application/json" \-d '{"careerSiteUrls":["https://salesforce.wd12.myworkdayjobs.com/External_Career_Site"],"remoteOnly":true,"maxJobs":100}'
Apify CLI:
apify call scrapers_lat/workday-jobs-scraper \--input '{"careerSiteUrls":["https://nvidia.wd5.myworkdayjobs.com/en-US/NVIDIAExternalCareerSite"],"withDetails":false}'
Fetch results
Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:
# JSONcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"# CSVcurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"# Paginate large datasetscurl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"
<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.
Billing and limits
- Pay per result. You are charged per job record returned (
resultevent). WhenwithDetailsis enabled, a separatedetailsevent is charged for each job successfully enriched from its detail page. See the pricing tab for current prices. - Contact enrichment add-on. When
enrichContactsis on, each enrichment attempt is billed, plus an extra charge only when an email is found. Free Apify accounts cap enrichment at 3 results. - No charge on failure. If a career site or detail fetch fails, the actor writes an item with a populated
errorfield and does not charge thedetailsadd-on for it. Empty runs cost nothing. - Spend cap respected. Set
maxTotalChargeUsdon the run; once reached, the actor stops emitting and charging further billable results, including the add-ons. - Free Apify plans are capped at 10 jobs per run. Upgrade for higher
maxJobs.
FAQ and troubleshooting
Where do I get the career site URL?
Open a company's careers page (hosted on *.myworkdayjobs.com) and copy the address from your browser. Add one URL per career site in careerSiteUrls.
What does withDetails add?
The full job description (HTML and text), all locations, remote flag, work type, start date, application deadline, hiring organization, and any disclosed pay range. Turn it off for faster listing-only rows.
Can it find a pay range?
Yes, when the employer discloses one in the job description text, it is parsed into payRange. Otherwise payRange is null.
What is the contact enrichment add-on? An optional paid feature that tries to find a public business contact email and person for each job. It is off by default and billed separately.
A career site returned an error. Why?
The URL was not a recognizable Workday career site, or the site was unavailable. The actor writes an item with a populated error field and continues with the other sites. Error items are not charged.
Is this an official Workday tool? No. This actor is independent and has no affiliation with Workday or the employers scraped. It reads only data that is publicly available on each career site. Use it in accordance with the source terms of service.
Related scrapers
- Greenhouse Jobs Scraper: Jobs from Greenhouse-powered career sites.
- Ashby Jobs Scraper: Jobs from Ashby-powered career sites.
- BambooHR Jobs Scraper: Jobs from BambooHR career sites.
- Breezy HR Jobs Scraper: Jobs from Breezy HR career sites.
- Company Hiring Signal Scraper: Open-role counts and hiring signals for a company.
More scrapers at scrapers.lat
Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.
Independent tool, not affiliated with Workday or the employers scraped. Accesses only publicly available data. Use in accordance with the source terms of service.
