Skip to content

fix(workday): correct SOAP service routing and reference types#4485

Merged
waleedlatif1 merged 2 commits intostagingfrom
waleedlatif1/validate-workday
May 7, 2026
Merged

fix(workday): correct SOAP service routing and reference types#4485
waleedlatif1 merged 2 commits intostagingfrom
waleedlatif1/validate-workday

Conversation

@waleedlatif1
Copy link
Copy Markdown
Collaborator

Summary

  • Route Put_Applicant to Recruiting service (was Staffing, where the op does not exist — every Create Pre-Hire call would 500)
  • Use WID for assign-onboarding Action_Event_Reference (was Background_Check_ID, wrong ID domain for hire events)
  • Rewrite Update Worker block labels + wand prompt to match Change_Personal_Information's demographic-only scope (prior prompt asked the LLM to emit businessTitle/primaryWorkEmail, which this SOAP op rejects)
  • Enrich opaque JSON output descriptions on worker/workers/organizations/compensationPlans so downstream blocks can reference inner fields

Type of Change

  • Bug fix

Testing

Validated each route against Workday Web Services v45 docs (Recruiting/Put_Applicant, HR/Put_Onboarding_Plan_Assignment, HR/Change_Personal_Information, Staffing/Hire_Employee, Staffing/Terminate_Employee). TypeScript compiles clean; lint passes.

Checklist

  • Code follows project style guidelines
  • Self-reviewed my changes
  • Tests added/updated and passing
  • No new warnings introduced
  • I confirm that I have read and agree to the terms outlined in the Contributor License Agreement (CLA)

- create-prehire: route Put_Applicant to Recruiting service (was Staffing, where the operation does not exist)
- assign-onboarding: use WID for Action_Event_Reference (was Background_Check_ID, wrong identifier domain for hire events)
- update-worker block: rewrite labels and wand prompt to match Change_Personal_Information demographic-only scope (prior prompt instructed LLM to emit businessTitle/primaryWorkEmail which the SOAP op rejects)
- enrich opaque JSON output descriptions on worker, workers, organizations, compensationPlans
@vercel
Copy link
Copy Markdown

vercel Bot commented May 7, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
docs Skipped Skipped May 7, 2026 3:54am

Request Review

@cursor
Copy link
Copy Markdown

cursor Bot commented May 7, 2026

PR Summary

Medium Risk
Medium risk because it changes Workday SOAP service selection and reference ID domains, which can affect production integrations and may surface as runtime 500s if mismatched with tenant configuration.

Overview
Fixes Workday SOAP calls by routing create-prehire (Put_Applicant) to the recruiting service and correcting assign-onboarding to send Action_Event_Reference as a WID instead of Background_Check_ID.

Updates the Workday block UI/LLM guidance for update_worker to reflect demographics-only Change_Personal_Information payloads (renamed labels, new JSON example, and stricter prompt), and clarifies output JSON field shapes for worker, workers, organizations, and compensationPlans so downstream blocks can reference inner fields.

Reviewed by Cursor Bugbot for commit 27a9f53. Configure here.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented May 7, 2026

Greptile Summary

This PR corrects three concrete SOAP integration bugs in the Workday integration: wrong service endpoint for Put_Applicant, wrong ID-domain type for Action_Event_Reference, and a misleading wand prompt that instructed the LLM to emit fields (businessTitle, primaryWorkEmail) that Change_Personal_Information explicitly rejects.

  • create-prehire/route.ts: Routes Put_Applicant to the recruiting service; it does not exist on staffing, so every Create Pre-Hire call previously returned a 500.
  • assign-onboarding/route.ts: Switches Action_Event_Reference from Background_Check_ID to WID, the correct universal ID domain for hire events in Workday.
  • workday.ts: Rewrites the "Update Worker" wand prompt and placeholder to reflect Change_Personal_Information's demographic-only scope, renames the dropdown label to "Update Personal Information" (the operation id is unchanged so existing workflows are unaffected), and adds field-level descriptions to opaque JSON output types.

Confidence Score: 5/5

Safe to merge — all three changes are targeted corrections to wrong SOAP service names and ID types, with no new logic paths introduced.

Each fix addresses a concrete, previously broken call: Put_Applicant routed to the wrong service (guaranteed 500), Action_Event_Reference using a mismatched ID domain (guaranteed SOAP fault), and a wand prompt producing fields the target operation rejects. The corrections are minimal and well-scoped, the operation IDs and surrounding logic are unchanged, and there are no new code paths or state changes that could introduce regressions.

No files require special attention.

Important Files Changed

Filename Overview
apps/sim/app/api/tools/workday/assign-onboarding/route.ts Fixes Action_Event_Reference ID type from Background_Check_ID to WID — correct universal ID domain for hire events passed to Put_Onboarding_Plan_Assignment.
apps/sim/app/api/tools/workday/create-prehire/route.ts Routes Put_Applicant to the Recruiting SOAP service (was Staffing, where the operation does not exist, causing 500s on every call).
apps/sim/blocks/blocks/workday.ts Renames dropdown label to 'Update Personal Information', rewrites the wand prompt and placeholder to match Change_Personal_Information's demographic-only scope, and enriches output descriptions for worker/workers/organizations/compensationPlans.

Reviews (2): Last reviewed commit: "fix(workday): correct Date_of_Birth casi..." | Re-trigger Greptile

Comment thread apps/sim/blocks/blocks/workday.ts Outdated
@waleedlatif1
Copy link
Copy Markdown
Collaborator Author

@greptile

@waleedlatif1
Copy link
Copy Markdown
Collaborator Author

@cursor review

Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Bugbot reviewed your changes and found no new issues!

Comment @cursor review or bugbot run to trigger another review on this PR

Reviewed by Cursor Bugbot for commit 27a9f53. Configure here.

@waleedlatif1 waleedlatif1 merged commit 76d602f into staging May 7, 2026
10 checks passed
@waleedlatif1 waleedlatif1 deleted the waleedlatif1/validate-workday branch May 7, 2026 04:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant