Workday Career Sites API
Find the companies using Workday and every career site each one runs, as structured JSON — tenant, datacenter, site slug, public careers URL, direct jobs API URL and a live count of open roles. Resolve a named list of companies in seconds, or enumerate Workday career sites in bulk to build a customer list.
RECORDS1
MEDIAN LAGon demand
PARAMETERS6
TOTAL USERS2
MONTHLY ACTIVE1
TOTAL RUNS21
SUCCESS (30D)100.0%
RATINGno ratings yet
LAST MODIFIED2026-07-31
PUBLISHED2026-07
Input parameters
| PARAMETER | TYPE | REQ | DEFAULT | DESCRIPTION |
|---|---|---|---|---|
| companies | string[] | no | — | Company names or website domains to resolve, e.g. 'nvidia', 'kla' or 'cadence.com'. Each is looked up independently and every career site it runs is returned, so one company can produce several rows. |
| discoverAll | boolean | no | false | Enumerate Workday career sites in bulk from a public web index instead of resolving a named list. This is the mode that builds a customer list. |
| maxResults | integer | no | 100 | Upper bound on companies processed in Discover All mode. One company can host several sites, so rows returned is usually higher. Ignored with a company list. — drives your bill |
| verifyLive | boolean | no | true | Checks each career site against its jobs endpoint and records the current open-job count. Off is faster, but the open-job count comes back empty and dead sites are not filtered out. |
| includeInactive | boolean | no | false | Also return sites that failed verification, marked dead or no_slug. Useful for auditing coverage; off by default so you are billed only for confirmed live sites. |
| crawlDepth | integer | no | 2 | How many historical snapshots of the public web index to combine in Discover All mode. Higher finds more companies, including ones since gone quiet, at the cost of a longer run. Most runs need 1 or 2. |
Worked examples
{
"companies": ["nvidia", "kla"],
"verifyLive": true
}
{
"companies": ["cadence.com"]
}
{
"discoverAll": true,
"maxResults": 500,
"crawlDepth": 2
}
{
"companies": ["intel"],
"includeInactive": true
}
POWER-USER TIP
One company is usually several career sites — Large employers run separate boards for regions, subsidiaries and university hiring — one semiconductor company returned 7 in testing, a design-software company 8. Rows come back per site, not per company, so key your joins on tenant plus siteSlug and size a Discover All run expecting more rows than maxResults.
Coverage
12
fields per career site — tenant datacenter siteSlug careersUrl apiUrl totalJobs status +
2
resolution modes — named lookup · discover all
2
host families — myworkdayjobs · myworkdaysite
Tasks
Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.
Code
curl
curl -X POST "https://api.apify.com/v2/acts/johnvc~workday-career-sites-api/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"companies":["nvidia","kla"],"verifyLive":true}'
Python
from apify_client import ApifyClient
client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/workday-career-sites-api").call(
run_input={"companies": ["nvidia", "kla"], "verifyLive": True}
)
for site in client.dataset(run.default_dataset_id).iterate_items():
print(site.get("tenant"), site.get("siteSlug"), site.get("totalJobs"), site.get("apiUrl"))
What people use it for
- Building a list of companies using Workday
- Sales prospecting on live open-role counts
- Company-to-career-site mapping for a sourcing tool
- Choosing which employers a job board should ingest
- Watching where a competitor opens regional boards
- CRM enrichment with tenant and careers URLs