Workday Adapter Actions
Define a connection to Workday.
Property | Value | Description |
---|---|---|
hostname* | text, expression, variable | the hostname of the server hosting the Workday web service |
tenant* | text, expression, variable | the Workday tenant |
username* | text, expression, variable | the username for authentication to Workday web service |
password* | password, string, expression, variable | password for authentication to Workday web service |
options | expression, variable | A record or JavaScript object with a field for each additional option. Currently defined fields are connectTimeout and socketTime which require a numeric value from 1 to 2147483647 (0x7FFFFFFF) that represents the number of milliseconds for the timeout, and 0 representing no timeout. |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
Global.wdHost = "services1.myworkday.com" Global.wdTenant = "dummy" Global.wdUser = "jdoe" Global.wdPwd = <Password> Global.wdReport = "jdoe/test" sessionWD = defineWorkdayConnection(Global.wdHost, Global.wdTenant, Global.wdUser, <Password>)
Find Workday contingent workers matching optional criteria and return an array of worker ID records.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
matchEmail | text, expression, variable | email address to match (exactly) (default: none) |
excludeTerminated | boolean, expression, variable | exclude terminated contingent workers (default: false) |
asOf | expression, variable | match values that were in effect at or before this date/time (default: now) |
updatedFrom | expression, variable | include only contingent workers updated at or after this date/time (default: none) |
updatedThrough | expression, variable | include only contingent workers updated at or before this date/time (default: none) |
effectiveFrom | expression, variable | include only contingent workers with values that became effective at or after this date/time (default: none) |
effectiveThrough | expression, variable | include only contingent workers with values that became effective at or before this date/time (default: none) |
changedReportFields | text, expression, variable | comma separated list of report fields to compare to changes to updated/effective values (default: all) |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
See Record Layouts at the bottom of this page for record field names. The value of updatedThrough must be equal to or less than the current time on the Workday server (see getWorkdayServerTimestamp). The value of effectiveThrough can be in the future. Please don't panic if results seem slow to come back, we have found that it often takes 10 minutes or more for data to be returned from the Workday server. When using the effectiveFrom / effectiveThrough dates it is recommended to use overlapping time frames when running your job to ensure that you get all data.
Example
updatedEnd = getWorkdayServerTimestamp(sessionWD) updatedStart = adjustDate(updatedEnd, -24, "hour") effectiveStart = adjustDate(updatedEnd, -24, "hour") effectiveEnd = adjustDate(updatedEnd, +12, "hour") ids = findWorkdayContingentWorkerIDs(sessionWD, updatedStart, updatedEnd, effectiveStart, effectiveEnd)
matchLocation text, expression, variable location or array of locations to match (default: none) matchOrg text, expression, variable organization or array of organizations to match (default: none) excludeTerminated boolean, expression, variable exclude terminated employees (default: false) asOf expression, variable match values that were in effect at or before this date/time (default: now) updatedFrom expression, variable include only employees updated at or after this date/time (default: none) updatedThrough expression, variable include only employees updated at or before this date/time (default: none) effectiveFrom expression, variable include only employees with values that became effective at or after this date/time (default: none) effectiveThrough expression, variable include only employees with values that became effective at or before this date/time (default: none) changedReportFields text, expression, variable comma separated list of report fields to compare to changes to updated/effective values (default: all) returnVariable expression, variable name of the variable to be assigned to the return value
See Record Layouts at the bottom of this page for record field names. The value of updatedThrough must be equal to or less than the current time on the Workday server (see getWorkdayServerTimestamp). The value of effectiveThrough can be in the future. Please don't panic if results seem slow to come back, we have found that it often takes 10 minutes or more for data to be returned from the Workday server. When using the effectiveFrom / effectiveThrough dates it is recommended to use overlapping time frames when running your job to ensure that you get all data.
Example
updatedEnd = getWorkdayServerTimestamp(sessionWD) updatedStart = adjustDate(updatedEnd, -24, "hour") effectiveStart = adjustDate(updatedEnd, -24, "hour") effectiveEnd = adjustDate(updatedEnd, +12, "hour") ids = findWorkdayEmployeeIDs(sessionWD, updatedStart, updatedEnd, effectiveStart, effectiveEnd)
Find Workday workers (both employees and contingent workers) matching optional criteria and return an array of worker ID records.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
excludeTerminated | boolean, expression, variable | exclude terminated workers (default: false) |
updatedFrom | expression, variable | include only workers updated at or after this date/time (default: none) |
updatedThrough | expression, variable | include only workers updated at or before this date/time (default: none) |
effectiveFrom | expression, variable | include only workers with values that became effective at or after this date/time (default: none) |
effectiveThrough | expression, variable | include only workers with values that became effective at or before this date/time (default: none) |
changedReportFields | text, expression, variable | comma separated list of report fields to compare to changes to updated/effective values (default: all) |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
See Record Layouts at the bottom of this page for record field names. The value of updatedThrough must be equal to or less than the current time on the Workday server (see getWorkdayServerTimestamp). The value of effectiveThrough can be in the future. Please don't panic if results seem slow to come back, we have found that it often takes 10 minutes or more for data to be returned from the Workday server. When using the effectiveFrom / effectiveThrough dates it is recommended to use overlapping time frames when running your job to ensure that you get all data.
Example
updatedEnd = getWorkdayServerTimestamp(sessionWD) updatedStart = adjustDate(updatedEnd, -24, "hour") effectiveStart = adjustDate(updatedEnd, -24, "hour") effectiveEnd = adjustDate(updatedEnd, +12, "hour") ids = findWorkdayWorkerIDs(sessionWD, updatedStart, updatedEnd, effectiveStart, effectiveEnd)
Certain types of Workday operations will fail if we provide a timestamp that is ahead of the time on the Workday server, use this action to get the current time on the Workday server.
Get the current time on the Workday server as a Date object.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
endWindow = getWorkdayServerTimestamp(sessionWD)
Get a Workday worker (either employee or contingent worker) record.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
idRecord* | expression, variable | the record or object containing either Employee_ID or Contingent_Worker_ID |
asOf | expression, variable | include values that were in effect at or before this date/time (default: now) |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
emplid = "123456" searchRecord = createRecord() setRecordFieldValue(searchRecord, "Employee_ID", emplid) workerRecord = getWorkdayWorker(sessionWD, searchRecord)
Run a Workday report.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
reportName* | text, expression, variable | the name (owner/name for custom reports) of the report |
reportParams | expression, variable | an object or Record containing the report parameters |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
emplid = "123456" workerReport = runWorkDayReport(sessionWD, Global.wdReport, {"worker!Employee_ID": emplid})
Update a Workday worker (either employee or contingent worker) record.
Property | Value | Description |
---|---|---|
connection* | expression, variable | the Workday connection definition |
record* | expression, variable | the record containing information to update |
returnVariable | expression, variable | name of the variable to be assigned to the return value |
Example
updateRecord = createRecord() emplid = "123456" emailAddr = "john.doe@idauto.net" setRecordFieldValues(updateRecord, "Email_Addresses", emailAddr) setRecordFieldValue(updateRecord, "Employee_ID", emplid) updated = updateWorkdayWorker(sessionWD, updateRecord)
Worker ID Record (output from findWorkday*IDs(), input for getWorkdayWorker()
Descriptor: string (optional)
Employee_ID: string (optional)
Contingent_Worker_ID: string (optional)
WID: string (optional)
Either Employee_ID or Contingent_Worker_ID (but not both) is required when used as input to getWorkdayWorker()
Output Record for getWorkdayWorker()
As_Of_Date: date
As_Of_Moment: date
Employee_ID: string (optional)
Contingent_Worker_ID: string (optional)
Business_Title: string (optional)
Worker_Status: record (0 or more)
Active: boolean (optional)
Hire_Date: date (optional)
Original_Hire_Date: date (optional)
End_Employment_Date: date (optional)
Hire_Reason: string (optional)
Continuous_Service_Date: date (optional)
First_Day_of_Work: date (optional)
Expected_Retirement_Date: date (optional)
Retirement_Eligibility_Date: date (optional)
Retired: boolean (optional)
Retirement_Date: date (optional)
Seniority_Date: date (optional)
Severance_Date: date (optional)
Benefits_Service_Date: string (optional)
Company_Service_Date: date (optional)
Time_Off_Service_Date: date (optional)
Vesting_Date: date (optional)
Date_Entered_Workforce: date (optional)
Days_Unemployed: string (optional)
Months_Continuous_Prior_Employment: string (optional)
Leaves: record (0 or more)
On_Leave: boolean (optional)
Leave_Start_Date: date (optional)
Estimated_Leave_End_Date: date (optional)
Leave_End_Date: date (optional)
First_Day_Of_Work: date (optional)
Leave_Type_Name: string
Benefits_Effect: boolean (optional)
Payroll_Effect: boolean (optional)
Paid_Time_Off_Accrual_Effect: boolean (optional)
Continuous_Service_Accrual_Effect: boolean (optional)
Stock_Vesting_Effect: boolean (optional)
Terminations: record (0 or more)
Terminated: boolean (optional)
Termination_Date: date (optional)
Termination_Category: string (optional)
Termination_Reason: string (optional)
Involuntary_Termination: boolean (optional)
Not_Eligible_For_Hire: boolean (optional)
Probations: record (0 or more)
Probation_Start_Date: date (optional)
Probation_End_Date: date (optional)
Names: record (0 or more)
Effective_Date: date
Is_Legal: boolean
Is_Preferred: boolean
Last_Modified: date
Country: string
Additional_Name_Type: string (optional)
Prefixes: record (0 or more)
Type: string
Prefixes_Value: string
First_Name: string (optional)
Middle_Name: string (optional)
Last_Names: record (0 or more)
Type: string
Last_Names_Value: string
Local_Name: record (optional)
Local_Name: string
Local_Script: string
First_Name: string (optional)
Middle_Name: string (optional)
Last_Names: record (0 or more)
Type: string
Last_Names_Value: string
Suffixes: record (0 or more)
Type: string
Suffixes_Value: string
Email_Addresses: record (0 or more)
Email_Address: string
Email_Comment: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Phone_Numbers: record (0 or more)
Country: string (optional)
International_Phone_Code: string (optional)
Area_Code: string (optional)
Phone_Number: string
Phone_Extension: string (optional)
Phone_Device_Type: string
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Addresses: record (0 or more)
Effective_Date: date
Last_Modified: date
Country: string
Address_Line: record (0 or more)
Descriptor: string
Type: string
Address_Line_Value: string
Municipality: string (optional)
Submunicipality: string (0 or more)
Region: string (optional)
Subregion: record (0 or more)
Descriptor: string
Type: string
Subregion_Value: string
Postal_Code: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Web_Addresses: record (0 or more)
Web_Address: string
Web_Address_Comment: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Instant_Messenger_Addresses: record (0 or more)
Instant_Messenger_Address: string
Instant_Messenger_Comment: string (optional)
Instant_Messenger_Provider: string
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Date_Of_Birth: date (optional)
Gender: string
Positions: record (0 or more)
Effective_Date: date
Position: string (optional)
Position_ID: string (optional)
Position_Title: string (optional)
Business_Title: string (optional)
Employee_Type: string
Time_Type: string
Job_Exempt: boolean (optional)
Scheduled_Weekly_Hours: string (optional)
Default_Weekly_Hours: string (optional)
Full_Time_Equivalent_Percentage: string (optional)
Pay_Type: string (optional)
Job Classifications: record (0 or more)
Job_Classification_Group_Name: string (optional)
Job_Classification_Name: string (optional)
Company_Insider_Type: string
Job_Profiles: record (0 or more)
Job_Profile: string (optional)
Job_Exempt: boolean (optional)
Management_Level: string (optional)
Job_Category: string (optional)
Job_Family: string (0 or more)
Job_Profile_Name: string (optional)
Work_Shift_Required: boolean (optional)
Critical_Job: boolean (optional)
Difficulty_to_Fill: string (optional)
Organizations: record (0 or more)
Organization_ID: string (optional)
Organization_Name: string (optional)
Organization_Type: string
Organization_Subtype: string
Locations: record (0 or more)
Location_Name: string (optional)
Location_Type: string
Time_Profile: string
Work_Shift: string (optional)
Work_Hours_Profile: string (optional)
Supervisors: record (0 or more)
Receive_Email_Notifications: boolean (optional)
Input Record for updateWorkdayWorker
Names: record (0 or more)
Effective_Date: date
Is_Legal: boolean
Is_Preferred: boolean
Last_Modified: date
Country: string
Additional_Name_Type: string (optional)
Prefixes: record (0 or more)
Type: string
Prefixes_Value: string
First_Name: string (optional)
Middle_Name: string (optional)
Last_Names: record (0 or more)
Type: string
Last_Names_Value: string
Local_Name: record (optional)
Local_Name: string
Local_Script: string
First_Name: string (optional)
Middle_Name: string (optional)
Last_Names: record (0 or more)
Type: string
Last_Names_Value: string
Suffixes: record (0 or more)
Type: string
Suffixes_Value: string
Email_Addresses: record (0 or more)
Email_Address: string
Email_Comment: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Phone_Numbers: record (0 or more)
Country: string (optional)
International_Phone_Code: string (optional)
Area_Code: string (optional)
Phone_Number: string
Phone_Extension: string (optional)
Phone_Device_Type: string
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Addresses: record (0 or more)
Effective_Date: date
Last_Modified: date
Country: string
Address_Line: record (0 or more)
Descriptor: string
Type: string
Address_Line_Value: string
Municipality: string (optional)
Submunicipality: string (0 or more)
Region: string (optional)
Subregion: record (0 or more)
Descriptor: string
Type: string
Subregion_Value: string
Postal_Code: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Web_Addresses: record (0 or more)
Web_Address: string
Web_Address_Comment: string (optional)
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Instant_Messenger_Addresses: record (0 or more)
Instant_Messenger_Address: string
Instant_Messenger_Comment: string (optional)
Instant_Messenger_Provider: string
Usage_Data: record
Public: boolean
Usage_Type: record (1 or more)
Primary: boolean
Usage_Type_Value: string
Use_For: string (0 or more)
Comments: string (optional)
Receive_Email_Notifications: boolean (optional)
Documentation from Workday
Useful information on the Workday API.