JumpCloud allows importing users from Workday. In the Admin Portal, navigate to Directory Integrations > HR Directories and click Configure under the Workday tile.
Considerations:
- Unique users may only be imported once.
- Data import is one way, Workday to JumpCloud. The process is manual – there is no ongoing data synchronization after the import is complete.
- Changes to users in JumpCloud will not be reflected back to Workday.
- Workday imports only JSON data.
Creating a Workday Integration System User
Use good security practices for this user. It should only be used for the Workday <> JumpCloud integration and leverage a strong password.
To create a user
- In Workday, search “create integration system user” and select the resulting task.
- Specify a User Name and a strong password.
- Set the session timeout to a value as low as possible.
- Select Do Not Allow UI Sessions.
- Select OK, then Done.
To create a security group
- In Workday, search “create security group” and select the resulting task.
- For Type of Tenanted Security Group, select Integration System Security Group (Unconstrained).
- Specify a name for the group, select OK.
- For Integration System Users, add the user created in the prior step, select OK, then Done.
To assign the group to domain Security Configuration
In Workday, perform steps 1-4 for each Domain/Permission pair in the table that follows:
Domain | Permission |
Workday Accounts | Get |
Worker Data Public Worker Reports | Get |
Person Data Work Contact Information | Get |
Worker Data Current Staffing Information | Get |
Worker Data All Positions | Get |
Worker Data Business Title on Worker Profile | Get |
- Search “domain security configuration” and select the result.
- In the Domain field, search the Domain from the table, select the result, select OK.
- Select the (…) next to the Domain name; under Actions, select Domain > Edit Security Policy Permissions.
- Under Integrated Permissions, add the Security Group created in the above steps and select the Permission.
- Select OK, then Done. If an alert to Activate Pending Security Policy Changes is displayed, do this after all domains have been updated for the security changes to take effect immediately.
Authorizing Workday
- In the JumpCloud Admin Portal, click Authorize Workday. Provide JumpCloud with the credentials for the Integration System User created in the steps above.
- Click authorize.
Creating a Custom Report
Minimize risk by creating a report specifically for importing users to JumpCloud including only the attributes that can be utilized by JumpCloud.
- Search “create custom report” and select the result.
- Specify:
- Report Name
- For Report Type, choose Advanced.
- Data Source: This will depend on the manner Workday is organized. All Active Employees is used here, but your data source may vary.
- Check Enable As Web Service and select OK.
- Edit Custom Report : (* indicates data required for import) Attributes must be mapped in the Columns tab of the custom report, see also the example JSON data below. The Business Object ‘Worker’ is used for the following fields:
Field (Your field source may vary) | Column Heading Override XML Alias |
Workday ID* | id |
Employee ID | employee_id |
Email – Primary Work* | |
User Name* | username |
First Name | first_name |
Last Name | last_name |
Hire Date | hire_date |
User Name** | WorkdayID |
** (Optional, for use with Workday SAML) The Workday Value mapped to the JumpCloud key WorkdayID will be sent as the SAML Subject NameID in the SAML response.
- Share the report with the integration system user.
- Select the Share tab, then Share with all authorized groups and users.
- Select the Share tab, then Share with all authorized groups and users.
- Get the report URL after completing the new report by selecting the (…) next to the report name; under Actions, select Web Service > View URLs.
- Copy the provided JSON URL and paste into the JumpCloud Workday setting WORKDAY CUSTOM REPORT URL.
Importing Workday Users
Considerations
- Field validation for required data (asterisk indicates the input must be globally unique):
- username* – Usernames must only contain letters, numbers or _ and cannot start with a number
- email* – Must be a valid email address
- Importing large numbers of records may take several minutes to complete. Any import more than 500 records will not return results to the console. A workday import notification will be sent when complete and allow for CSV download of import results.
To import users
- Select Import Workday Users.
- The Workday Import Creation window will present, allowing the selection of users to import and modification to the name, email, and username attributes prior to import. Select the vertical ellipsis to expand and view additional Preview Attributes.
- Select Import when ready. Import results will be displayed on the subsequent screen.
- Users will be imported into an inactive state and can be found on the Imported Users tab. They can now be managed in the same manner as any other JumpCloud user.
- To notify the user of activation, either in the Imported Users tab or the Users Object, the users can be selected, then select the send/resend activation email button.
- Once the user is activated in JumpCloud, they will no longer display on the Imported Users tab.
The WorkdayID and employee_id (both optional) will be added as a Custom User Attribute to the JumpCloud user as "WorkdayID" and "EmployeeID" respectively, additional "Preview Attributes" listed here are not currently imported into JumpCloud.
Valid JSON example from the Workday custom report:
{
"Report_Entry": [{
"first_name": "Abby",
"last_name": "Brennan",
"location": "Chicago",
"Cost_Center_-_Organization_Top": "33100 Global Support - North America; US - Central; Global Modern Services, Inc. (USA); Other Services",
"username": "abrennan",
"hire_date": "2018-01-03T16:54:35Z",
"id": "6dcb8106e8b74b5aabb1fc3ab8ef2b92",
"email": "[email protected]"
},
{
"first_name": "Adam",
"last_name": "Carlton",
"location": "Boston",
"cost_center_-_organization_top": "41200 Payroll; US - Northeast; Global Modern Services, Inc. (USA)",
"username": "acarlton",
"id": "1da8b422311b4929bfa4520f7f0b4e83",
"email": "[email protected]"
}]
}