Start inputs
Workday worker change access update
Passed by the calling system
HR & People package
A Workday job change, org move or termination maps old and new jobs to access bundles, logs the request, and the manager approves or rejects it.
Connects to Workday
About this package
Workday worker change → access update keeps access in step with the job. When a Job Change, organization move or Termination completes in Workday, the event is posted to the workflow with the worker id and event id.
The workflow reads the worker and their staffing history from the Workday Staffing REST API, so it knows the job profile and supervisory organization before and after the change. The Access bundle mapping decision table turns each into a bundle code (terminations map to no access), and the Access bundles table says which applications and groups each bundle grants.
When the bundle changes, an access change request is logged and the manager gets a task form with the bundles to remove and add, a bundle lookup to correct it, a remove-by date and Approve / Reject buttons. The decision is written to the Access change requests table and posted as a comment on the Workday business process event. Provisioning in your identity system can then pick up the approved rows.
Starts when Workday posts a worker change (worker id, event type, event id) to the workflow start API or inbound webhook from a business process notification or integration.
Another system starts it over REST or an inbound webhook. No UI is needed; people only appear where a decision needs a human.
The flow
Worker change
Workday posts the worker id, event type (job_change, org_move, termination) and the event id.
Before and after
Get worker and Get worker job history give the current and previous job profile and organization.
Map to bundles
The Access bundle mapping decision table picks the old and new bundle; Access bundles lists what each grants.
Log the request
If the bundle changes, an access change request row is created; if not, the run ends.
Manager decision
The manager reviews the removals and additions on a task form and approves or rejects.
Back to Workday
The decision updates the request row and is posted as a comment on the Workday event.
Forms
The inputs a caller passes when it starts a run, and the forms people complete when the process needs a decision.
Start inputs
Passed by the calling system
User Task
Approve access change for {{worker_name}}: {{from_bundle}} → {{to_bundle}} · 2-column grid · own header and theme
Headless
Every workflow can be started over REST, MCP or the CLI, whatever its trigger, with the sample input below. Runs start straight away on the published version; replace <workflow id> with the id the install created.
REST
curl -X POST "$USERTASKS_URL/api/v1/workflows/start" \
-H "Authorization: Bearer $USERTASKS_API_KEY" \
-H "Content-Type: application/json" \
-d '{"workflow_id":"<workflow id>","variables":{"worker_id":"8d2f6e1a4b7c4e0f9a3d5c7b1e2f4a6c","event_type":"job_change","event_id":"e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6"}}'CLI
usertasks workflows inputs <workflow id> # the start form: keys, types, required
usertasks workflows run <workflow id> --input worker_id=8d2f6e1a4b7c4e0f9a3d5c7b1e2f4a6c --input event_type=job_change --input event_id=e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6 --waitInbound webhook
usertasks webhooks create <workflow id> # prints the hook slug and secret once
curl -X POST "$USERTASKS_URL/api/webhooks/inbound?hook=<slug>" \
-H "Authorization: Bearer <webhook secret>" -H "Content-Type: application/json" \
-d '{"worker_id":"8d2f6e1a4b7c4e0f9a3d5c7b1e2f4a6c","event_type":"job_change","event_id":"e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6"}'What's included
| Type | Name | Details |
|---|---|---|
| Data table | Access bundles | Role-based access bundles: which applications and groups each bundle grants, its risk and who owns it. The decision table picks a bundle code; this table says what it contains. |
| Data table | Access change requests | Every access change raised from a Workday worker change: bundles added and removed, the manager decision and when it was posted back to Workday. |
| Integration | Workday | |
| API reference | Add business process comment | POST /api/businessProcess/v1/acme/events/{{event_id}}/comments — Workday Business Process REST: add a comment to the worker change event so the access decision is visible on the business process in Workday. |
| API reference | Get worker | GET /api/staffing/v6/acme/workers/{{worker_id}} — Workday Staffing REST: the worker as they are now (after the change): job profile, family, supervisory organization, manager and status. |
| API reference | Get worker job history | GET /api/staffing/v6/acme/workers/{{worker_id}}/history — Workday Staffing REST: the worker's staffing events, newest first. data[0] is the change that just happened, data[1] the job before it. |
| Decision table | Access bundle mapping | 7 rules — Which access bundle a job profile and organization should have. Run once for the new job and once for the previous one. First matching rule wins. |
| Workflow | Workday worker change access update | 24 steps — A Workday job change, org move or termination maps the old and new job to access bundles, logs the change request and has the manager approve it; the decision is posted back to the Workday event. |
Access bundles · 7 sample rows
Bundle codeNameApplicationsDirectory groupsRiskOwner team
Access change requests · 1 sample rows
Change referenceWorkday worker idWorkerEventEffectiveRemove bundleAdd bundleRemove byDecisionDecided by (user id)StatusNotes
Requirements
Credentials never travel in a package. The install wizard asks for what your environment must provide, or installs it incomplete until you finish setup.
Integration “Workday”Required
Workflow “Workday worker change access update” assigneesRequired
Install
Works on UserTasks cloud and on any self-hosted instance. Installing creates the assets above; nothing runs until you complete setup and start it.
curl -fLO https://usertasks.com/gallery/workday-worker-change-access-1.0.0.utpkg
usertasks packages inspect workday-worker-change-access-1.0.0.utpkg # offline: checksum, hashes, signature
usertasks packages install workday-worker-change-access-1.0.0.utpkg --dry-run
usertasks packages install workday-worker-change-access-1.0.0.utpkg # prompts for each requirement
usertasks packages install workday-worker-change-access-1.0.0.utpkg --keep-incomplete --yes # in CI; finish with:
usertasks packages complete workday-worker-change-access -f values.yamlVerify the download
shasum -a 256 workday-worker-change-access-1.0.0.utpkg should print the file SHA-256. How gallery packages are signed.
Versions
Installing a newer version upgrades in place: local credentials and requirement values are kept, and changes you made are flagged first. How packages work
More packages
HR & People Official
A Workday Hire event reads the worker, applies the job family checklist and onboarding plan, starts IT provisioning and has the hiring manager prepare day one.
Needs:REST APIAssigneesInbound webhook
HR & People Official
A manager submits a leaver; access is revoked on the right day, equipment recovered, final pay scheduled, the exit interview held and the termination recorded.
Needs:REST APIAssigneesEmail
HR & People Official
HR enters a new hire; the HR record, laptop, accounts, buddy and first-week plan are all arranged before day one, with a 30-day check-in.
Needs:REST APIAssigneesEmail