Workday Jobs Scraper – Company Careers & Job Listings
Pricing
from $1.00 / 1,000 job results
Workday Jobs Scraper – Company Careers & Job Listings
Scrape job postings from any Workday-hosted careers site on Myworkdayjobs.com. Paste careers-page or job URLs and get structured job data, including title, full description, locations, time type, posting dates, employer, apply URL, country, and geo data.
Pricing
from $1.00 / 1,000 job results
Rating
0.0
(0)
Developer
AbotAPI
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
4
Monthly active users
5 days ago
Last modified
Categories
Share
Workday Jobs Scraper, Any Company
Scrape job postings from any company that hosts its careers site on Workday (the *.myworkdayjobs.com domains). Run a keyword search inside a company's careers site, or paste careers-page and direct job URLs to scrape as-is. Get clean, structured job data: title, full description, locations, time type, posting dates, employer, apply URL, and structured country and geo. Fast, reliable, and runs on any Apify plan.
Two modes
- Search by keyword — give one or more company careers sites plus a keyword and optional facets (job category, job type, time type, location). The actor runs the Workday search inside each site. (Workday has no global search — every employer hosts its own site, so a search is always scoped to the companies you choose.)
- Scrape URLs directly — paste any Workday careers-page or direct job URLs and the actor scrapes them exactly as given. Filters carried inline on the URL (e.g.
?q=engineer) are honored.
Why this scraper
- Returns clean, structured data that stays consistent across site redesigns.
- Runs on any Apify plan, including the free tier, with low running cost.
- Comprehensive field set: structured country with ISO code, job posting id, questionnaire id, employer details, apply type, and similar jobs, on top of the standard fields.
- Works with any Workday company and any regional cluster (wd1 through wd103) automatically.
- Keyword and facet filtering in search mode: job category, job type, time type, and location.
- Saves each job as it is collected, so partial runs keep their results.
Data you get
Sample shape, values are illustrative placeholders, not from a live listing.
| Field | Example |
|---|---|
title | Sample Software Engineer |
jobReqId | JR0000000 |
jobPostingId | 00000000-0000-0000-0000-000000000000 |
jobUrl | https://company.wd5.myworkdayjobs.com/en-US/SiteName/job/Location/Title_JR0000000 |
externalPath | /job/Location/Title_JR0000000 |
title description | Full job description text appears here when fetchDetails is on. |
locationText | US, CA, Sample City |
country | US |
timeType | Full time |
postedOn | Posted 5 Days Ago |
startDate | 2026-01-01 |
employerName | Sample Company |
applyUrl | https://company.wd5.myworkdayjobs.com/en-US/SiteName/job/Location/Title_JR0000000/apply |
applyType | workday |
salary | { "rawText": "$120,000 - $150,000", "min": 120000, "max": 150000, "currency": "USD", "period": "year" } |
scrapedAt | 2026-01-01T00:00:00.000Z |
The full record also includes jobPostingSiteId, questionnaireId, canApply, posted, includeResumeParsing, externalUrl, the structured location object (with requisitionLocation and its country code), the full employer and hiringOrganization objects, similarJobs, and a stripped descriptionText.
How to use
Search mode — keyword search inside a company careers site:
{"mode": "search","companyUrls": ["https://company.wd5.myworkdayjobs.com/en-US/SiteName"],"keyword": "engineer","timeType": "Full time","maxItems": 100,"fetchDetails": true}
Search across several companies at once (the scheme is optional):
{"mode": "search","companyUrls": ["company-a.wd1.myworkdayjobs.com/en-US/Careers","company-b.wd5.myworkdayjobs.com/en-US/External"],"jobCategory": "Engineering","maxItems": 200,"fetchDetails": false}
URL mode — scrape any Workday URLs exactly as given:
{"mode": "url","urls": ["https://company.wd5.myworkdayjobs.com/en-US/SiteName?q=engineer","https://company.wd5.myworkdayjobs.com/en-US/SiteName/job/Location/Title_JR0000000"]}
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
mode | string | search | search = keyword/facet search inside the company sites in companyUrls. url = scrape the URLs in urls as-is. |
companyUrls | array | — | Search mode. Company careers-site URLs or hosts to search within (scheme optional). |
keyword | string | (none) | Search mode. Keyword applied as the Workday search query. |
jobCategory | string | (none) | Search mode. Job category (job family group) filter. |
jobType | string | (none) | Search mode. Job type (worker sub type) filter. |
timeType | string | (none) | Search mode. Time type filter, for example Full time. |
location | string | (none) | Search mode. Location filter. |
urls | array | — | URL mode. Workday careers-page and/or direct job URLs, scraped as-is. Mix freely. |
fetchDetails | boolean | true | Fetch each job's detail page for the full field set. |
maxItems | integer | 20 | Maximum jobs per company site / careers URL. 0 means unlimited. This is the only result cap. |
proxy | object | Apify datacenter | Proxy configuration. Datacenter is recommended and cheapest. |
residentialCountries | array | major regions | Countries rotated through if the run falls back to residential. |
residentialBudgetGb | string | (none) | Cap on residential bandwidth. 0 forbids residential entirely. |
Send results into your apps (MCP connectors)
Optionally pipe the scraped results into the apps you already use, via Model Context Protocol (MCP) connectors. This is an extra delivery step after the scrape — the Apify dataset is never changed.
What gets written to the connector: a condensed, human-readable summary of each record — not the full JSON. Each item becomes one entry with a title and its key fields flattened to plain text. The complete record always stays in the Apify dataset.
- Authorize a connector once under Apify → Settings → Integrations (Notion, Linear, Airtable, or Apify).
- Select it in the "Pipe results into your apps" input field. (If the picker is empty, you haven't authorized a connector yet.)
- For Notion, also set
notionParentPageUrlto the page where items should be created.
The connection is mediated by Apify's MCP proxy, so this actor never sees your third-party credentials. Leave the field empty to skip.
Output example
Sample shape, values are illustrative placeholders, not from a live listing.
{"rowType": "job","title": "Sample Software Engineer","jobReqId": "JR0000000","jobPostingId": "00000000-0000-0000-0000-000000000000","jobUrl": "https://company.wd5.myworkdayjobs.com/en-US/SiteName/job/Location/Title_JR0000000","externalPath": "/job/Location/Title_JR0000000","timeType": "Full time","postedOn": "Posted 5 Days Ago","startDate": "2026-01-01","locationText": "US, CA, Sample City","country": "US","employerName": "Sample Company","applyUrl": "https://company.wd5.myworkdayjobs.com/en-US/SiteName/job/Location/Title_JR0000000/apply","applyType": "workday","salary": { "rawText": null, "min": null, "max": null, "currency": null, "period": null },"employer": { "name": "Sample Company", "tenantSlug": "company", "careersUrl": "https://company.wd5.myworkdayjobs.com/en-US/SiteName", "url": "https://company.wd5.myworkdayjobs.com/en-US/SiteName" },"scrapedAt": "2026-01-01T00:00:00.000Z"}
Plan requirement
This scraper runs on any Apify plan, including the free tier. Residential proxies are only useful for the rare company that geo-restricts its careers content; if you enable them, you can cap residential bandwidth with residentialBudgetGb.