Announcing the SAVIYNT KNOWLEDGE EXCHANGE unifying the Saviynt forums, documentation, training, and more in a single search tool across platforms. Click HERE to read the Announcement.

Workday SOAP Incremental Import

Neeharika
New Contributor
New Contributor

Hi Team,

I've been trying to get incremental imports working for Saviynt via a SOAP connection using the User import via a connection(UserImportJob). We are using the Get Workers Request API to fetch these users and this API is bringing all the updated users even the compensation changes. We want to avoid these type compensation changed users in the Get Workers response. Do we have any idea which workday request we can use to avoid these type of users.

@sahajranajee, @rushikeshvartak could you help us on this.

We are getting 2k incremental users and saviynt taking 2hours to complete the job. And these users having the compensation changed users , so we should not get these workers in the get worker response

3 REPLIES 3

rushikeshvartak
All-Star
All-Star

Can you share current URL you are using


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.

Neeharika
New Contributor
New Contributor

Hi,

Please find the below get worker request:

<bsvc:Get_Workers_Request bsvc:version="${API_VERSION}">
           
            <bsvc:Request_Criteria>
                    <bsvc:Field_And_Parameter_Criteria_Data>
                    <bsvc:Provider_Reference>
                        <bsvc:ID bsvc:type="Integration_System_ID">****</bsvc:ID>
                    </bsvc:Provider_Reference>
                </bsvc:Field_And_Parameter_Criteria_Data>
                <bsvc:Eligibility_Criteria_Data>
                    <bsvc:Field_Reference>
                        <bsvc:ID bsvc:type="Integration_Document_Field_Name"
                            bsvc:parent_id="FOS-Saviynt-Worker"
                            bsvc:parent_type="Integration_Document_Name">*****</bsvc:ID>
                    </bsvc:Field_Reference>
                </bsvc:Eligibility_Criteria_Data>
				 <bsvc:Transaction_Log_Criteria_Data>
  <bsvc:Transaction_Date_Range_Data>
 <bsvc:Updated_From>2022-11-28T06:20:00</bsvc:Updated_From> 
    <bsvc:Updated_Through>2022-11-28T06:30:00</bsvc:Updated_Through> 
  </bsvc:Transaction_Date_Range_Data>
</bsvc:Transaction_Log_Criteria_Data> 
                
            </bsvc:Request_Criteria>

             <bsvc:Response_Filter><bsvc:Page>${PAGE_NUMBER}</bsvc:Page><bsvc:Count>${PAGE_SIZE}</bsvc:Count></bsvc:Response_Filter>

               <bsvc:Response_Group>
                <bsvc:Include_Reference>true</bsvc:Include_Reference>
                <bsvc:Include_Personal_Information>true</bsvc:Include_Personal_Information>
                <bsvc:Show_All_Personal_Information>true</bsvc:Show_All_Personal_Information>
               
                <bsvc:Include_Employment_Information>true</bsvc:Include_Employment_Information>

               <bsvc:Exclude_Location_Hierarchies>true</bsvc:Exclude_Location_Hierarchies>
               
                <bsvc:Exclude_Supervisory_Organizations>false</bsvc:Exclude_Supervisory_Organizations>
                <bsvc:Exclude_Custom_Organizations>false</bsvc:Exclude_Custom_Organizations>
               
                <bsvc:Include_Transaction_Log_Data>true</bsvc:Include_Transaction_Log_Data>
               
            </bsvc:Response_Group>
        </bsvc:Get_Workers_Request>

In the default payload, ${INCREMENTAL_IMPORT_CRITERIA} is replaced by the below XML when making a SOAP request.

<bsvc:Transaction_Log_Criteria_Data>
  <bsvc:Transaction_Date_Range_Data>
   <bsvc:Updated_From>${ACCOUNTS_LAST_IMPORT_TIME}</bsvc:Updated_From> 
    <!--Incremental import **start date from which changes should be tracked** :-->
    <bsvc:Updated_Through>${CURRENT_IMPORT_TIMESTAMP}</bsvc:Updated_Through>
    <!--Incremental import **end date till when changes should be tracked** :-->  
  </bsvc:Transaction_Date_Range_Data>
</bsvc:Transaction_Log_Criteria_Data>   

In this XML, ACCOUNTS_LAST_IMPORT_TIME represents the timestamp of the last successful import and CURRENT_IMPORT_TIMESTAMP represents the current timestamp. The time stored in them is the Workday server's time and not the local time.

https://saviynt.freshdesk.com/support/solutions/articles/43000618934-workday-connector-guide-2-0


Regards,
Rushikesh Vartak
If you find the response useful, kindly consider selecting Accept As Solution and clicking on the kudos button.