Workday errors in plain English.

Submit an Error
errors / soap-web-services / soap-change-other-ids-invalid-subelement-worker-reference

Change_Other_IDs Web Service Rejects Worker_Reference as Invalid Subelement

✓ Verified SOAP Web Services 4 lookups
The error <SOAP-ENV:Fault xmlns:wd="urn:com.workday/bsvc"><faultcode>SOAP-ENV:Client.validationError</faultcode><faultstring>Validation error occurred. Invalid Subelement Worker_Reference-urn:com.workday/bsvc for element Change_Other_IDs_Business_Process_Data (6$56999)</faultstring></SOAP-ENV:Fault>

What it means

When calling the Change_Other_IDs web service to delete or update a custom identifier, Workday rejects the request because the Worker_Reference element inside Change_Other_IDs_Data is not recognized as a valid subelement for that operation. This usually means the request body's element structure or ordering does not match what the operation expects for this kind of call.

Troubleshooting

  1. Confirm the WWS version referenced in the request (wd:version) actually supports the Change_Other_IDs_Data schema you are using, since the web service schema for custom ID operations has changed across versions.
  2. Compare your Change_Other_IDs_Data element order and nesting against the current WSDL for the exact WWS version in the faultstring's namespace, since SOAP requests are order-sensitive and an out-of-sequence element reads as "invalid subelement" even if the tag name is correct.
  3. Isolate the problem by removing the Custom_Identification_Data block and sending only the Worker_Reference to confirm the worker resolves correctly, then add the custom ID delete block back on its own.
  4. Check whether wd:Replace_All="false" is compatible with the delete flag on Custom_ID; some combinations of Replace_All and Delete require a different element structure.
⚡ Quick fix

Regenerate the request body directly from the current WWS WSDL for the exact wd:version in use, rather than reusing an older sample request, and resend.

✓ Permanent fix

Pin integrations to a specific WWS version and regenerate request templates whenever that version's WSDL changes, instead of hand-maintaining SOAP envelopes across version bumps.

Was this helpful?

Related errors