Workday Jobs Scraper API | $1/1k, New Jobs Daily, No Login avatar

Workday Jobs Scraper API | $1/1k, New Jobs Daily, No Login

Pricing

from $0.70 / 1,000 job listeds

Go to Apify Store
Workday Jobs Scraper API | $1/1k, New Jobs Daily, No Login

Workday Jobs Scraper API | $1/1k, New Jobs Daily, No Login

Scrape job postings from any Workday career site (myworkdayjobs.com): title, location, posted date, req ID and optional full description. Only-new mode for scheduled daily hiring feeds. No login, no browser.

Pricing

from $0.70 / 1,000 job listeds

Rating

0.0

(0)

Developer

ProgrammX

ProgrammX

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Share

Scrape job postings from any Workday career site (*.myworkdayjobs.com): title, requisition ID, location, posted date, job URL and, if you want it, the full description, every location, country, time type and remote type. Turn on only-new mode and schedule it daily to get a feed of new and changed openings per employer. You don't need a login, a browser or a Workday account.

Keywords: Workday jobs scraper, myworkdayjobs scraper, Workday careers API, Workday job postings API, ATS jobs scraper, company career site scraper, new job postings feed, hiring signals, job monitoring, recruiter leads, job aggregator feed, Workday job board export, NVIDIA jobs, Adobe jobs, Salesforce jobs.

What it does

Thousands of large employers host their careers page on Workday (for example https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite). Each of those pages loads its jobs from a public JSON endpoint. This actor reads that same endpoint directly, so:

  • It's fast and cheap. One request returns 20 jobs, and a 50-job run takes about 5 seconds.
  • It's reliable. It reads structured JSON instead of parsing HTML, so page redesigns don't break it.
  • It isn't limited to 2000 results. Workday stops at 2000 results per query. When a site has more than that, the actor splits the query by job family (or another facet) and removes duplicates, so you get all of them.
  • It works for any tenant. Paste any Workday career-site URL. Locale paths (/en-US/), job-page URLs, myworkdaysite.com/recruiting/... URLs and URLs with filters applied (?locations=...&jobFamilyGroup=...) all work.

Who uses it

  • Recruiters and staffing agencies. See the day a target account opens a role and get to the hiring manager first.
  • Sales and lead-gen teams. Use new openings (for example "Head of Data", "SOC 2", "Salesforce admin") as buying signals.
  • Job boards and aggregators. Pull a daily feed of every opening at a list of employers.
  • Market and talent analysts. Track hiring velocity by company, team and location.

Input

FieldTypeDefaultDescription
careerSiteUrlsstring listNVIDIA exampleWorkday career-site URLs, one per employer. Filter params in the URL are applied.
searchTextstringemptyKeyword search, the same as the search box on the career site.
includeDetailsbooleanfalseFetch each job's detail page: description (HTML + text), all locations, country, start date, time type, remote type.
postedWithinDaysinteger 0-30emptyKeep only jobs posted within N days, based on Workday's "Posted N Days Ago" label.
onlyNewbooleanfalseMonitoring mode. Return only jobs that are new or changed since earlier runs.
maxItemsPerSiteinteger100Stop each career site after this many jobs.
maxItemsinteger50Hard cap on jobs per run, across all sites. Raise it for real feeds.
proxyConfigurationproxyoffOptional. Workday sites normally work without a proxy.

Example:

{
"careerSiteUrls": [
"https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite",
"https://adobe.wd5.myworkdayjobs.com/external_experienced"
],
"searchText": "engineer",
"includeDetails": true,
"postedWithinDays": 7,
"maxItemsPerSite": 500,
"maxItems": 1000
}

Output

One dataset row per job. This is a real list-only record from a test run on 2026-10-03:

{
"jobReqId": "JR1997186",
"title": "Senior Software Engineer, NCCL",
"company": "nvidia",
"url": "https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite/job/US-CA-Santa-Clara/Senior-Software-Engineer--GPU-Communications-and-Networking_JR1997186",
"locationsText": "US, CA, Santa Clara",
"postedOn": "Posted Yesterday",
"postedDaysAgo": 1,
"postedDateEstimate": "2026-10-02",
"tenant": "nvidia",
"site": "NVIDIAExternalCareerSite",
"wd": "wd5",
"hasDetails": false,
"scrapedAt": "2026-10-03T15:16:09.498Z"
}

With includeDetails: true (real Adobe record from the same day, description truncated):

{
"jobReqId": "R166886",
"title": "Research Engineer",
"company": "ADUS-Adobe Inc.",
"location": "Seattle",
"country": "United States of America",
"countryCode": "US",
"startDate": "2026-09-18",
"timeType": "Full time",
"descriptionText": "The Opportunity\n\nThe Research Engineering & Design Lab within Adobe Research is looking for a Research Engineer ...",
"canApply": true,
"changeType": "new"
}

The full field list (additionalLocations, remoteType, endDate, descriptionHtml, workdayId, externalPath, careerSiteUrl and more) is in the dataset schema. Runs also write a RUN_STATS record to the default key-value store with requests, retries, items, proxy mode and duration.

Pricing (pay per event)

EventWhen it is chargedFREEBRONZESILVERGOLD
job-listedPer job returned without details$0.0010$0.0009$0.0008$0.0007
job-detailPer job returned with full details$0.0020$0.0018$0.0015$0.0012

On the FREE tier, 1,000 jobs cost $1 list-only or $2 with full descriptions. In only-new mode you pay only for new or changed jobs. The run stops cleanly when it reaches your max-charge limit. (Proposed prices. Not live yet.)

How to schedule a daily feed

  1. Put your target employers' career-site URLs in careerSiteUrls, set onlyNew: true, and set maxItemsPerSite high enough for one day's openings (for example 500).
  2. Save the input as a Task.
  3. Open Schedules, create a schedule (for example 0 7 * * * for 07:00 every day) and attach the task.
  4. Connect the output through an integration (webhook, Slack, Google Sheets, Zapier, Make) or read the dataset through the API.

The first run returns a baseline of up to maxItemsPerSite newest jobs per site. Later runs return only new or changed jobs, marked with changeType: "new" or "changed". Workday lists jobs newest first, so the actor stops a site after 3 pages in a row with nothing new. State is kept in the named key-value store workday-jobs-feed-state; delete it to start over.

Use it from the API, n8n, Make, Zapier or an AI agent

  • API: start a run and get the results in one call:
    curl -X POST "https://api.apify.com/v2/acts/programmx~workday-jobs-feed/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{"careerSiteUrls": ["https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite"], "maxItemsPerSite": 50}'
    The response is the dataset as JSON; add &format=csv for CSV. This endpoint waits up to 5 minutes; for longer runs, start the run asynchronously and read the dataset when it finishes.
  • n8n, Make and Zapier: use the Apify node or app, choose Run Actor, pick this actor and paste the input JSON.
  • Google Sheets, Slack, email and webhooks: add an integration on the actor or task in Apify Console.
  • AI agents: add this actor to Apify's MCP server (https://mcp.apify.com) and call it from any MCP client.

FAQ

How do I find a company's Workday URL?

Open the company's careers page and click through to the job search. If the address contains myworkdayjobs.com, copy it. Site names are case-sensitive.

Why does company say nvidia but ADUS-Adobe Inc. in detail mode?

Without details the actor only knows the Workday tenant name. Detail mode adds the hiring entity that Workday reports, which is often a legal-entity name.

Can it get more than 2000 jobs from one site?

Yes. When a site reports 2000 (Workday's cap) and you ask for more, the actor splits the query by facet and removes duplicates. In a test it returned 2,001 unique NVIDIA jobs.

Do I need a proxy?

Usually not. Workday sits behind Cloudflare, but no challenge appeared in testing. If you run very large volumes, enable a proxy.

Is the posted date exact?

Workday's list shows relative labels ("Posted 3 Days Ago", "30+ Days Ago"). postedDateEstimate is derived from that label. startDate (detail mode) is the date Workday reports.

How much does a daily jobs feed cost?

Example on the Free plan: 10 career sites with about 15 new jobs each per day is 150 jobs, so $0.15 a day list-only (about $4.50 a month) or $0.30 a day with full descriptions.

Which companies use Workday?

Many large employers host their careers site on myworkdayjobs.com. NVIDIA, Adobe, Salesforce, Intel, Workday and Mastercard were tested.

Can I export Workday jobs to CSV, Excel or Google Sheets?

Yes. Each run's dataset downloads as CSV, Excel or JSON, and the Google Sheets integration can append every new job to a sheet.

Can an AI agent use this actor?

Yes. Apify's MCP server (https://mcp.apify.com) can expose this actor as a tool to Claude, Cursor, VS Code and other MCP clients, so an agent can fetch fresh jobs on request.

Limitations

  • You supply the career-site URLs. The actor doesn't discover every Workday tenant on its own.
  • Removed (closed) jobs are not reported as removals yet.
  • If one facet value alone has more than 2000 jobs, that slice is still capped at 2000.
  • postedWithinDays can only be as precise as Workday's labels, and anything over 30 days is "30+".
  • It reads only public career-site data. It doesn't log in, apply to jobs or access candidate data.