← all adapters

workday-style

simulates Workday REST API v40.0

restadapter v0.1.08 routes

verification

VMVM tier — no SDK suite yet· surface 8 · not implemented 4 · differs 3

use it

# add to stunt.yaml
services:
  workday:
    adapter: embedded:workday-style

# then
$ stunt up

The embedded: source extracts this adapter from the binary — no git clone, fully offline.

how to mock the Workday REST API locally

Install stunt, paste the service block above into stunt.yaml, run stunt up — then point your client at localhost instead of Workday REST API. It works offline, keeps state across requests and restarts, and every response is synthetic: the route shapes, status codes, pagination, and webhook delivery follow the real Workday REST API v40.0 surface — the data is fake, the behavior is real.

backing stores

workerspositionsaccountspayComponents

api surface (8)

generated from the adapter manifest — exactly what boots, nothing more

8 routes
GET/wbs/v40.0/staffing/workers
GET/wbs/v40.0/staffing/workers/{id}
GET/wbs/v40.0/compensation/workers/{id}/compensation
GET/wbs/v40.0/payroll/pay_components
GET/wbs/v40.0/human_resources/positions
GET/wbs/v40.0/financials/accounts
GET/ccx/v1/{tenant}/RaaS/Custom_Report
POST/ccx/v1/{tenant}/staffing/Create_Worker

VM-verified behaviors (9)

  • requests without a Bearer or Basic scheme are 401 at the gate
  • both Bearer and Basic credentials clear the gate
  • Create_Worker mints an id that reads back through staffing
  • the RaaS custom report wraps rows in Report_Entry
  • search narrows the worker list before paging
  • limit/offset pages tile the list without repeats
  • compensation serves the seed shelf and empty for created workers
  • payroll, positions, and financials share the list envelope
  • an unknown worker is a 404 with the Workday error envelope

Not implemented (4)

  • SOAP interface not implemented (REST-equivalent endpoints only)
  • No worker update, delete, or other writes; only Create_Worker exists
  • RaaS serves only the seeded Custom_Report, not arbitrary named reports
  • No absence, talent, recruiting, or benefits service domains

Differs from the real API (3)

  • Auth validates only Authorization header presence; any bearer/basic value passes
  • Compensation is a static shelf keyed to seeded worker ids — runtime workers read empty, unknown ids 200
  • RaaS custom reports return static rows that never reflect created workers
want more of the Workday REST API surface? adapters are YAML + Starlark — the authoring guide covers adding routes, fixtures, and state machines. Open an issue for anything big first, or just file a PR — merged routes ship in the next release.