Saviynt unveils its cutting-edge Intelligence Suite products to revolutionize Identity Security!
Click HERE to see how Saviynt Intelligence is transforming the industry.
Saviynt Copilot Icon

Workday - UPDATE_USER_PAYLOAD - Username writeback

ag420
Regular Contributor
Regular Contributor

Hello Experts

I am trying to update username from Saviynt to Workday using the SOAP connector.

The API is working but is apparently giving me error in Saviynt- Validation error occurred. Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/

I have tried several variations, but nothing seems to be working-

        <wd:Workday_Account_for_Worker_Update xmlns:wd="urn:com.workday/bsvc" wd:version="${API_VERSION}">
            <bsvc:Worker_Reference>
                <bsvc:Employee_Reference>
                    <bsvc:Integration_ID_Reference>
                        <bsvc:ID bsvc:System_ID="WD-EMPLID">${user.employeeid}</bsvc:ID>
                    </bsvc:Integration_ID_Reference>
                </bsvc:Employee_Reference>
            </bsvc:Worker_Reference>
            <wd:Workday_Account_for_Worker_Data>
                <wd:User_Name>${user.systemusername}</wd:User_Name>
                <wd:Exempt_from_Delegated_Authentication>true</wd:Exempt_from_Delegated_Authentication>
            </wd:Workday_Account_for_Worker_Data>
        </wd:Workday_Account_for_Worker_Update>
 
Postman - ag420_0-1726239607180.png

I have also tried - <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bsvc="urn:com.workday/bsvc">
<soapenv:Body>
<bsvc:Workday_Account_for_Worker_Update bsvc:version="v42.1">
<bsvc:Worker_Reference>
<bsvc:Employee_Reference>
<bsvc:Integration_ID_Reference>
<bsvc:ID bsvc:System_ID="WD-EMPLID">S207668</bsvc:ID>
</bsvc:Integration_ID_Reference>
</bsvc:Employee_Reference>
</bsvc:Worker_Reference>
<bsvc:Workday_Account_for_Worker_Data>
<bsvc:User_Name>sav.tester34</bsvc:User_Name>
<bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication>
</bsvc:Workday_Account_for_Worker_Data>
</bsvc:Workday_Account_for_Worker_Update>
</soapenv:Body>
</soapenv:Envelope>

 

Can anybody please guide me as to what i am missing. I am creating user update tasks for this as i have used above payloads in UPDATE_USER_PAYLOAD

 

Thanks in advanced

9 REPLIES 9

rushikeshvartak
All-Star
All-Star
  • can you share logs in text file ?
  • Did you tried with hardcoded value?

Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

ag420
Regular Contributor
Regular Contributor

Hey @rushikeshvartak 

Yes.

Payload used - 

<soapenv:Body><bsvc:Workday_Account_for_Worker_Update xmlns:bsvc="urn:com.workday/bsvc" bsvc:version="v42.1"><bsvc:Worker_Reference><bsvc:Employee_Reference><bsvc:Integration_ID_Reference><bsvc:ID bsvc:System_ID="WD-EMPLID">S207668</bsvc:ID></bsvc:Integration_ID_Reference></bsvc:Employee_Reference></bsvc:Worker_Reference><bsvc:Workday_Account_for_Worker_Data><bsvc:User_Name>sav.tester34</bsvc:User_Name><bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication></bsvc:Workday_Account_for_Worker_Data></bsvc:Workday_Account_for_Worker_Update></soapenv:Body>
 
Logs attached - 

stalluri
Valued Contributor II
Valued Contributor II

@ag420 

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bsvc="urn:com.workday/bsvc">
   <soapenv:Header/>
   <soapenv:Body>
      <bsvc:Workday_Account_for_Worker_Update bsvc:version="v42.1">
         <bsvc:Worker_Reference>
            <bsvc:Employee_Reference>
               <bsvc:Integration_ID_Reference>
                  <bsvc:ID bsvc:System_ID="WD-EMPLID">S207668</bsvc:ID>
               </bsvc:Integration_ID_Reference>
            </bsvc:Employee_Reference>
         </bsvc:Worker_Reference>
         <bsvc:Workday_Account_for_Worker_Data>
            <bsvc:User_Name>sav.tester34</bsvc:User_Name>
            <bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication>
         </bsvc:Workday_Account_for_Worker_Data>
      </bsvc:Workday_Account_for_Worker_Update>
   </soapenv:Body>
</soapenv:Envelope>

Best Regards,
Sam Talluri
If you find this a helpful response, kindly consider selecting Accept As Solution and clicking on the kudos button.

ag420
Regular Contributor
Regular Contributor

i tried this again - 

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:bsvc="urn:com.workday/bsvc"><soapenv:Header/><soapenv:Body><bsvc:Workday_Account_for_Worker_Update bsvc:version="v42.1"><bsvc:Worker_Reference><bsvc:Employee_Reference><bsvc:Integration_ID_Reference><bsvc:ID bsvc:System_ID="WD-EMPLID">S207668</bsvc:ID></bsvc:Integration_ID_Reference></bsvc:Employee_Reference></bsvc:Worker_Reference><bsvc:Workday_Account_for_Worker_Data><bsvc:User_Name>sav.tester34</bsvc:User_Name><bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication></bsvc:Workday_Account_for_Worker_Data></bsvc:Workday_Account_for_Worker_Update></soapenv:Body></soapenv:Envelope
 
Getting same error - 2024-09-15T15:08:42+05:30-ecm-worker-workday.WorkdayProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-Entered WorkdayProvisioningService : updateUserDetails
2024-09-15T15:08:42+05:30-ecm-worker-workday.WorkdayProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-Binding Soap body
2024-09-15T15:08:42+05:30-ecm-worker-services.HttpClientUtilityService-quartzScheduler_Worker-3-2pr29-DEBUG-calling executeRequestWithTimeoutConfig for api...
2024-09-15T15:08:42+05:30-ecm-worker-services.HttpClientUtilityService-quartzScheduler_Worker-3-2pr29-DEBUG-calling api...
2024-09-15T15:08:42+05:30-ecm-worker-rest.RestUtilService-quartzScheduler_Worker-3-2pr29-DEBUG-Got showLogs = true
2024-09-15T15:08:42+05:30-ecm-worker-provisoning.SoapProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-Calling SOAP Webservice:: https://wd3-impl-services1.workday<REMOVED>
2024-09-15T15:08:42+05:30-ecm-worker-provisoning.SoapProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-SOAPACTION
2024-09-15T15:08:42+05:30-ecm-worker-provisoning.SoapProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-SOAP Envelope Request:
2024-09-15T15:08:42+05:30-ecm-worker-provisoning.SoapProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-setting timeout to 300 seconds
2024-09-15T15:08:42+05:30-ecm-worker-provisoning.SoapProvisioningService-quartzScheduler_Worker-3-2pr29-ERROR-Error while calling webservice https://wd3-impl-services1.workday<REMOVED>:
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--AxisFault
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Client.validationError
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultSubcode:
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultString: Validation error occurred. Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultActor:
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultNode:
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--faultDetail:
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--{urn:com.workday/bsvc}Validation_Fault:<ns1:Validation_Error><ns1:Message>Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/</ns1:Message><ns1:Detail_Message/><ns1:Xpath/></ns1:Validation_Error>
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--Validation error occurred. Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.message.SOAPFaultBuilder.createFault(SOAPFaultBuilder.java:222)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.message.SOAPFaultBuilder.endElement(SOAPFaultBuilder.java:129)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.encoding.DeserializationContext.endElement(DeserializationContext.java:1087)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.encoding.DeserializationContext.parse(DeserializationContext.java:227)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.SOAPPart.getAsSOAPEnvelope(SOAPPart.java:696)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.Message.getSOAPEnvelope(Message.java:435)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.handlers.soap.MustUnderstandChecker.invoke(MustUnderstandChecker.java:62)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.client.AxisClient.invoke(AxisClient.java:206)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.client.Call.invoke(Call.java:2767)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.apache.axis.client.Call.invoke(Call.java:1910)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.provisoning.SoapProvisioningService.callSOAPWebService(SoapProvisioningService.groovy:557)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.HttpClientUtilityService.executeRequestWithTimeoutConfig(HttpClientUtilityService.groovy:620)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.provisoning.SoapProvisioningService.callSOAPWebService(SoapProvisioningService.groovy:645)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.provisoning.workday.WorkdayProvisioningService.updateUserDetails(WorkdayProvisioningService.groovy:566)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.provisoning.workday.WorkdayProvisioningService$_updateUserWorkday_closure4.doCall(WorkdayProvisioningService.groovy:486)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.provisoning.workday.WorkdayProvisioningService.updateUserWorkday(WorkdayProvisioningService.groovy:461)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.ArsTaskService.updateUserTarget(ArsTaskService.groovy:11564)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.ArsTaskHelperService$_whenTaskTypeIsNineUpdateUser_closure48.doCall(ArsTaskHelperService.groovy:2977)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.ArsTaskHelperService.whenTaskTypeIsNineUpdateUser(ArsTaskHelperService.groovy:2972)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.ArsTaskHelperService$_completeAutoProvTasksUpgraded_closure1.doCall(ArsTaskHelperService.groovy:195)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at com.saviynt.ecm.services.ArsTaskHelperService.completeAutoProvTasksUpgraded(ArsTaskHelperService.groovy:160)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at MultipleProvisioningJob.execute(MultipleProvisioningJob.groovy:222)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.quartz.core.JobRunShell.run(JobRunShell.java:199)
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:546)
2024-09-15T15:08:42+05:30-ecm-worker-services.HttpClientUtilityService-quartzScheduler_Worker-3-2pr29-DEBUG-Exception in executeRequestWithTimeoutConfig::
2024-09-15T15:08:43+05:30-ecm-worker--null-2pr29--java.lang.Exception: Error while calling webservice https://wd3-impl-services1.workday<REMOVED> : Validation error occurred. Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/ at com.saviynt.provisoning.SoapProvisioningService.callSOAPWebService(SoapProvisioningService.groovy:601) at com.saviynt.ecm.services.HttpClientUtilityService.executeRequestWithTimeoutConfig(HttpClientUtilityService.groovy:620) at com.saviynt.provisoning.SoapProvisioningService.callSOAPWebService(SoapProvisioningService.groovy:645) at com.saviynt.provisoning.workday.WorkdayProvisioningService.updateUserDetails(WorkdayProvisioningService.groovy:566) at com.saviynt.provisoning.workday.WorkdayProvisioningService$_updateUserWorkday_closure4.doCall(WorkdayProvisioningService.groovy:486) at com.saviynt.provisoning.workday.WorkdayProvisioningService.updateUserWorkday(WorkdayProvisioningService.groovy:461) at com.saviynt.ecm.services.ArsTaskService.updateUserTarget(ArsTaskService.groovy:11564) at com.saviynt.ecm.services.ArsTaskHelperService$_whenTaskTypeIsNineUpdateUser_closure48.doCall(ArsTaskHelperService.groovy:2977) at com.saviynt.ecm.services.ArsTaskHelperService.whenTaskTypeIsNineUpdateUser(ArsTaskHelperService.groovy:2972) at com.saviynt.ecm.services.ArsTaskHelperService$_completeAutoProvTasksUpgraded_closure1.doCall(ArsTaskHelperService.groovy:195) at com.saviynt.ecm.services.ArsTaskHelperService.completeAutoProvTasksUpgraded(ArsTaskHelperService.groovy:160) at MultipleProvisioningJob.execute(MultipleProvisioningJob.groovy:222) at org.quartz.core.JobRunShell.run(JobRunShell.java:199) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:546)
2024-09-15T15:08:42+05:30-ecm-worker-services.HttpClientUtilityService-quartzScheduler_Worker-3-2pr29-DEBUG-got response for api...
2024-09-15T15:08:42+05:30-ecm-worker-rest.RestUtilService-quartzScheduler_Worker-3-2pr29-DEBUG-Got showLogs = true
2024-09-15T15:08:42+05:30-ecm-worker-workday.WorkdayProvisioningService-quartzScheduler_Worker-3-2pr29-DEBUG-Exception in updateUserDetails :

stalluri
Valued Contributor II
Valued Contributor II

@ag420 

  • Ensure that the SOAPAction header corresponds to the Workday_Account_for_Worker_Update operation.
  • Ensure that the bsvc:version="v42.1" is the correct version for your environment. If your Workday instance uses a different version, it might cause compatibility issues.
  • In your request, the bsvc:System_ID is set to "WD-EMPLID". Verify that this is the correct system identifier for the employee reference. Sometimes, using incorrect system IDs can result in validation failures.

 

<soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope" xmlns:bsvc="urn:com.workday/bsvc">
    <soapenv:Header/>
    <soapenv:Body>
        <bsvc:Workday_Account_for_Worker_Update bsvc:version="v42.1">
            <bsvc:Worker_Reference>
                <bsvc:Employee_Reference>
                    <bsvc:Integration_ID_Reference>
                        <bsvc:ID bsvc:System_ID="WD-EMPLID">S207668</bsvc:ID>
                    </bsvc:Integration_ID_Reference>
                </bsvc:Employee_Reference>
            </bsvc:Worker_Reference>
            <bsvc:Workday_Account_for_Worker_Data>
                <bsvc:User_Name>sav.tester34</bsvc:User_Name>
                <bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication>
            </bsvc:Workday_Account_for_Worker_Data>
        </bsvc:Workday_Account_for_Worker_Update>
    </soapenv:Body>
</soapenv:Envelope>

 


Best Regards,
Sam Talluri
If you find this a helpful response, kindly consider selecting Accept As Solution and clicking on the kudos button.

ag420
Regular Contributor
Regular Contributor

i tried this payload again after referring to WSDL file -

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<wd:Workday_Account_for_Worker_Update xmlns:wd="urn:com.workday/bsvc" wd:version="v42.1">
<wd:Worker_Reference>
<wd:Employee_Reference>
<wd:Integration_ID_Reference wd:Descriptor="WD-EMPLID">
<wd:ID bsvc:System_ID="WD-EMPLID">S207668</wd:ID>
</wd:Integration_ID_Reference>
</wd:Employee_Reference>
</wd:Worker_Reference>
<wd:Workday_Account_for_Worker_Data>
<wd:User_Name>string.sav</wd:User_Name>
</wd:Workday_Account_for_Worker_Data>
</wd:Workday_Account_for_Worker_Update>
</soap:Body>
</soap:Envelope>

 

still getting the error -

Validation error occurred. Element not found=Envelope-http://schemas.xmlsoap.org/soap/envelope/

 

@stalluri 

  • Ensure that the bsvc:version="v42.1" is the correct version for your environment. If your Workday instance uses a different version, it might cause compatibility issues. - Yes, this is correct. We are also email writeback and that is working
  • <wd:Integration_ID_Reference wd:Descriptor="WD-EMPLID">
    <wd:ID bsvc:System_ID="WD-EMPLID">S207668</wd:ID> - this is also correct as the account update service is working from postman.

 

ag420
Regular Contributor
Regular Contributor

@rushikeshvartak @stalluri So i built my payload again to - 

<bsvc:Workday_Account_for_Worker_Update xmlns:bsvc="urn:com.workday/bsvc" bsvc:version="${API_VERSION}">
    <bsvc:Worker_Reference>
        <bsvc:Employee_Reference>
            <bsvc:Integration_ID_Reference bsvc:Descriptor="WD-EMPLID">
                <bsvc:ID bsvc:System_ID="WD-EMPLID">${user.employeeid}</bsvc:ID>
            </bsvc:Integration_ID_Reference>
        </bsvc:Employee_Reference>
        <bsvc:Contingent_Worker_Reference>
            <bsvc:Integration_ID_Reference bsvc:Descriptor="WD-EMPLID">
                <bsvc:ID bsvc:System_ID="WD-EMPLID">${user.employeeid}</bsvc:ID>
            </bsvc:Integration_ID_Reference>
        </bsvc:Contingent_Worker_Reference>
    </bsvc:Worker_Reference>
    <bsvc:Workday_Account_for_Worker_Data>
        <bsvc:User_Name>${user.systemusername}</bsvc:User_Name>
        <bsvc:Exempt_from_Delegated_Authentication>true</bsvc:Exempt_from_Delegated_Authentication>
    </bsvc:Workday_Account_for_Worker_Data>
</bsvc:Workday_Account_for_Worker_Update>
 
This Time error is different - Error in updateUserDetails - callResponse: Error while calling webservice https://wd3-impl-services1.workday.com/<REMOVED> : Invalid request service version
 
Any help here would be great and appreciated.

Can you validate ${API_VERSION} in connector configs


Regards,
Rushikesh Vartak
If this helped you move forward, click 'Kudos'. If it solved your query, select 'Accept As Solution'.

stalluri
Valued Contributor II
Valued Contributor II

@ag420 

The error you're seeing, "Invalid request service version," suggests that the API_VERSION placeholder is incorrect in your request. The Workday API requires that you specify the correct API version when making calls.

 


Best Regards,
Sam Talluri
If you find this a helpful response, kindly consider selecting Accept As Solution and clicking on the kudos button.