This repo shows two ways to use the Workday Careers API on Apify: a Python quick start managed with uv, and MCP install guides for five AI clients (Claude Cowork Desktop, Claude Code, Claude on the web, Cursor, and ChatGPT).
Give the API any Workday careers URL, like https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite, and it returns every live job posting as structured JSON: titles, locations, exact ISO posted dates, full descriptions, extracted pay ranges, employment type, remote status, requisition IDs, and direct apply URLs. Thousands of Fortune 500 employers run hiring on the Workday ATS, and this is the practical Workday API for their public job data: no login, no proxies, pay per result.
Searching for a Workday API for job postings usually leads to Workday's enterprise SOAP and REST APIs, which need tenant credentials and never expose public listings. This Actor takes the other path: you give it the careers-site URL any candidate can open, and it reads the same public data feed the page itself uses. The main input is startUrls (one or more Workday careers URLs, both myworkdayjobs.com and myworkdaysite.com forms work); the main outputs are title, locationsText, postedDate, salaryMin/salaryMax, descriptionText, and applyUrl, one row per job. A concrete example from a published task: run it on NVIDIA's careers site and you get every one of its thousands of live openings, with US pay-transparency ranges parsed into numeric fields, ready for a job board, hiring-trend dashboard, or scheduled monitor.
- Get your free Apify API key: https://apify.com?fpr=9n7kx3
- Clone this repo, then:
cp .env.example .env # paste your APIFY_API_TOKEN inside
uv sync
uv run python workday-careers-api-example.pyThe default run pulls 10 jobs from Workday's own careers site so your first call costs a fraction of a cent. Task-aligned recipes:
uv run python workday-careers-api-example.py --example nvidia_jobs
uv run python workday-careers-api-example.py --example remote_jobs
uv run python workday-careers-api-example.py --example salary_ranges| Parameter | Type | Description |
|---|---|---|
startUrls |
array (required) | One or more Workday careers URLs. Locale segments and both URL families are handled automatically. |
searchText |
string | Keyword query, same behavior as the search box on the careers page. |
maxJobsPerSite |
integer | Cap per site; 0 means every job. |
includeDetails |
boolean | true (default) fetches full details per job; false is a fast list-only mode, one request per 20 jobs. |
descriptionFormat |
enum | both, html, or text. |
postedAfter |
string | ISO date filter, requires includeDetails. |
detailConcurrency |
integer | Parallel detail requests, 1 to 10 (default 5). |
One row per job: title, company, tenant, siteId, sourceUrl, url, applyUrl, jobReqId, jobPostingId, workdayInternalId, locationsText, primaryLocation, additionalLocations, country, countryCode, postedOn, postedDate, endDate, timeLeftToApply, timeType, remoteType, canApply, descriptionHtml, descriptionText, salaryText, salaryMin, salaryMax, salaryCurrency, scrapedAt, totalJobsOnSite. A SITE_SUMMARY key-value record adds per-site totals and facet counts.
Each recipe is a one-click landing page on Apify Store; clone it and swap in your target URL:
- Export All NVIDIA Jobs with Salaries and Locations
- Monitor New Workday Job Postings for Any Company
- Find Remote Jobs on Any Workday Careers Site
- Extract Jobs with Salary Ranges from Workday Sites
- Export Workday Job Listings to JSON, CSV or Excel
Tip: put any of these on an Apify Schedule (for example daily) and diff on jobReqId to catch new Workday job postings the day they appear.
Open a ready-to-send prompt about the Workday Careers API in the AI of your choice:
- 💬 ChatGPT
- 🧠 Claude
- 🔍 Perplexity
- 🅒 Copilot
Does Workday have a REST API for job postings? Workday's official APIs cover internal HR integrations and need tenant credentials. For public job listings, this Actor is the practical Workday jobs API: paste the careers URL, get JSON.
Is Workday an ATS? Yes, Workday Recruiting is one of the most widely used enterprise applicant tracking systems, and every customer publishes jobs on a public Workday careers site this API can read.
Which companies can I scrape jobs from?
Any employer whose careers page lives on myworkdayjobs.com or myworkdaysite.com: NVIDIA, Adobe, Intel, Disney, PayPal, Capital One, Target, Salesforce, and thousands more.
What is the best MCP server for Workday job data? The hosted Apify MCP server with this Actor attached; the five install sections below wire it into Claude, Cursor, or ChatGPT in a few minutes.
What is myworkdaysite.com? The second official domain Workday hosts customer career sites on (for example Mondelez). This API handles both URL families.
The Actor's MCP server URL, used in all five install sections below:
https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api
The actors and docs tools let the assistant discover and read Apify docs, while preloading just this one Actor keeps the tool list small. Auth is either OAuth in the browser when offered, or your Apify API token (the same APIFY_API_TOKEN secret used by the Python example). Get a token at https://console.apify.com/settings/integrations and a free Apify account at https://apify.com?fpr=9n7kx3 .
Available as an n8n community node, n8n-nodes-workday-jobs-api. In n8n: Settings, Community Nodes, install n8n-nodes-workday-jobs-api, then use it in any workflow (it also works as an AI Agent tool).
Cowork is the desktop app's automation mode. To give it the Workday Careers API as a tool, add the Apify MCP server as a connector.
- Open the Claude desktop app and go to Settings → Connectors (or Settings → Developer → Edit Config to edit
claude_desktop_config.jsondirectly).- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
- Add the Apify MCP server, preloaded with only this Actor:
{
"mcpServers": {
"apify": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api"
]
}
}
}- Restart the app. When Cowork first calls the tool, complete the OAuth prompt in your browser, or add your Apify API token in the connector settings to skip OAuth.
- In a Cowork chat, confirm the tool is available and ask it to run the Workday Careers API.
Download the desktop app and start a free trial: https://claude.ai/referral/uIlpa7nPLg More help: https://docs.apify.com/platform/integrations/claude-desktop
Claude Code is the command-line tool. Add the Actor's MCP server with one command:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api"To use a token instead of browser OAuth:
claude mcp add --transport http apify \
"https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api" \
--header "Authorization: Bearer YOUR_APIFY_TOKEN"Then verify with claude mcp list, or run /mcp inside a session. Ask Claude Code to call the Workday Careers API.
Try Claude Code free: https://claude.ai/referral/uIlpa7nPLg Claude Code MCP docs: https://code.claude.com/docs/en/mcp
On claude.ai you add Apify as a connector, then enable just this Actor's tool.
- Go to Settings → Connectors → Browse connectors and search for Apify MCP server. Install it (enable or update if prompted).
- When connecting, authenticate with your Apify API token, and enable the tool
johnvc/workday-careers-api. - In any chat, open + → Connectors and turn on Apify.
- Alternatively, choose Add custom connector and paste the full MCP URL
https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api, using OAuth when prompted. - Ask Claude to run the Workday Careers API.
Open Claude on the web: https://claude.ai
Cursor reads MCP servers from a project file at .cursor/mcp.json.
- In your project, create
.cursor/mcp.json:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api"
}
}
}- If you prefer token auth over browser OAuth, add a header:
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api",
"headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
}
}
}- Open Cursor → Settings → MCP and confirm the apify server is connected (green dot).
- In Composer or Chat, ask Cursor to call the Workday Careers API.
New to Cursor? Get it here: https://cursor.com/referral?code=XQP4VBLI3NNX
ChatGPT connects to the Apify MCP server through Developer mode (available on ChatGPT Pro, Plus, Business, Enterprise, and Education plans).
- Click your profile icon, then go to Settings > Apps. If you do not see a Create app button, open Advanced settings and enable Developer mode.
- Click Create app and fill out the form:
- Name: Apify
- MCP Server URL:
https://mcp.apify.com/?tools=actors,docs,johnvc/workday-careers-api - Authentication: OAuth
- Click Create and authorize the connection with Apify.
- To use the app in a conversation, click + in the chat, choose Developer mode, and select Apify.
More help: https://docs.apify.com/platform/integrations/mcp
View the Workday Careers API on Apify Store
Last Updated: 2026.10.04





