Import users and teams or integrate with different HRMS tools for centralized user management

In large organizations, it is typically seen that they use 3rd party systems such as AD, LDAP, HRIS, DaaS software for centralized user management. In the case of UpRaise, it becomes easy for organizations to have seamless integration with such tools to manage users and teams. This is where we brought HRMS sync feature.

As of now, this sync was only available via a pre-configured SFTP server connection, where these 3rd party systems would push updated files on the SFTP, and UpRaise can pull data at a set frequency from the SFTP and update it within UpRaise Company directory.

Now along with the above option, we bring more flexibility to this feature. Now you can import xls, xlsx, and JSON files to UpRaise and sync the user and team data. Let us see how these options work.

Sync via SFTP

If you wish to use the SFTP option follow the below steps.

Setting up SFTP connection

As UpRaise Admin/super admin, navigate to the Company directory >> click on Import or sync HRMS data >> Import data tab.

  • By default Auto sync toggle is turned off. Turn on this toggle and you will notice more options to set up the SFTP connection.

  • Import file option is always available. When Auto sync option is turned on, clicking on Import file will display options to import files as shown in the below images.

Once you turn on the Auto-sync option, below fields are displayed.

  • Auto-sync - On/off, dictates whether UpRaise will connect to the SFTP server daily night 11 o'clock to retrieve the JSON files.

  • SFTP Server - Hostname or IP address

  • Port - Usually SFTP is configured at 22

  • username & password - To connect with the SFTP server

  • Directory - Relative path to the directory where the JSON/excel files will be available

Add the above information & click on Save. On a successful connection, the configuration will be saved. Otherwise, a relevant error message will be displayed.

Do note that, the SFTP user must have read & write permissions in order for the entire process to work properly.

How does Auto Sync work?

Once the above setup is done UpRaise will reach out to this SFTP server daily night 11 o’clock & pick up the file/s generated that day. After processing, all UpRaise administrators will be notified via email and sync status will be updated under Logs tab.

Do note that name of the file to be picked up by the system should have the following pattern -

UsersData for user’s files and TeamsData for team’s file are mandatory as prefixes in the file names.

  • Syntax -

    • UsersDataYYYYDDMM.json

      • Eg. UsersData20230422.json

    • UsersDataYYYYDDMM.xls/xlsx

      • Eg. UsersData20230422.xls/xlsx

    • TeamsDataYYYYDDMM.json

      • Eg. TeamsData20230422.json

    • TeamsDataYYYYDDMM.xls/.xlsx

      • Eg. TeamsData20230422. xls/xlsx

The first time around, it may take a few trials & errors to get the JSON format right. For incremental updates, the process will be completed fairly quickly based on the updates.

You can download sample templates from the links provided on the Import or sync HRMS data tab as shown in the image below -

Once completed, UpRaise will generate a file with execution status in the same SFTP (for which it needs Write permissions on the SFTP).

Manual update via SFTP

Sometimes it is possible that you want to sync data immediately instead of waiting for the UpRaise job that runs every day. Or for the first-time sync, it may take some time to update files so you can also go for the manual update of the file.

  • Click on Import file

  • Select SFTP server (your SFTP server) here SFTP server (amoeboids10.files.com)

  • Update the File name

  • Click on Fetch

This will trigger the manual sync of the file from the SFTP server and the system will immediately retrieve the file on the SFTP server and start the sync.

You can check logs for the status from Logs tab.

Import files from your system

Apart from the auto sync, we have also introduced a file import function under this feature for the Cloud, Server (v8.7.0), and Data Center versions (v8.7.0) of UpRaise. You can import files in JSON, xls, and format. Regardless of whether the Auto sync is turned on/off, you can import files from your system and process the sync.

Let us see how you can import files to sync the data with HRMS tools.

Steps to import files

  • Navigate to Company Directory >> Import or sync HRMS data

  • Click on Import file option

  • Select Upload a file from the local computer

  • Click on Choose file button and upload the file from your computer

  • Click on Fetch

Once the is fetched it shows the number of records found and then records to verify input data. Once verify it and import. Once the file is triggered, it shows the success message. You can check the Logs tab for the status of the sync.

Do note that name of the file to be picked up by the system should have the following pattern.

UsersData for user’s files and TeamsData for team’s file are mandatory as prefixes in the file names.

  • Syntax -

    • UsersData<filename>.json

      • Examples -

        • UsersData20230422.json

        • UsersDataupdatedfile.json

    • UsersData<filename>.xls/xlsx

      • Examples -

        • UsersData20230422.xls/xlsx

        • UsersDatanewdatafile.xls/xlsx

    • TeamsData<filename>.json

      • Examples -

        • TeamsData20230422.json

        • TeamsDatanewteamsfile.json

    • TeamsData<filename>.xls/.xlsx

      • Examples -

        • TeamsData20230422. xls/xlsx

        • TeamsDatachecknewdata. xls/xlsx

If you are importing User data via Excel, and you want to add multiple teams for certain users, then you need to repeat the blocks/cells of below two columns (in the same order) that are equal to the number of teams you want the user to be associated with. Please check below screenshot of excel sheet.

In the above image, you can notice, columns H-M are repeated for Team ID and Team Name. This means the user John Doe belongs to three teams and these three teams will be updated for him.

Standard file formats and content structure

The standard format & content of the files should be as explained below

User data JSON structure

UpRaise expects to receive only the user records in which one or more of the following attributes have been updated - designation, manager, team, UpRaise role. If there are updates to other user attributes in the external system, UpRaise doesn't need to know.

User Data JSON Structure
{ "users":[ { "id":"11081", "jirausername":"Jane.Doe", "designation":{ "id":"94", "name":"Consultant, eLearning & Systems" }, "userrole":"USER", "manager":{ "id":"9195", "jirausername":"John.Doe" }, "teams":[ { "id":"10017", "name":"HR" } ] } ] }

 

 

Parameter details

Parameter

Type

Details

id

String

Id of the user in the external system. Should be unique for each user.

 

jirausername 

 

Jira username of the corresponding user. UpRaise assumes that the users in the file are already part of Jira. 

designation

complex type

UpRaise can store only one designation per user

id

String

Designation Id in the external system, Designation id is the unique identifier for the each designation. If at the time of processing, this id does not exist in UpRaise designations master, it will be created and assigned to the corresponding user. If it exists, the designation name would be updated if required.

name

String

e.g. Software Engineer, Project Manager etc

userrole

 

This parameter is mandatory in case user-based access is turned on. Possible options are 'USER' & 'NO_ACCESS'

This is a case senetive paratmeter. User roles should be provided in capital letters.

manager

 

complex type

UpRaise can store only one manager per user

Id

String

Manager id of the user in the external system. Should be unique for each user. UpRaise expects the manager to be a user himself in the external system.

jirausername 

String

Jira username of the corresponding user. UpRaise assumes that the users in the file are already part of Jira. 

teams

complex type

UpRaise can store multiple teams per

id

String

Id of the team in the external system. Team id is the unique identifier for the team. If at the time of processing, this id does not exist in UpRaise teams master, it will be created and assigned to the corresponding user. If it exists, team name would be updated if required.

name

String

Team name for e.g. Inside Sales, Software Development etc

Team data JSON structure

UpRaise expects to receive team records in which one or more of the following attributes have been updated - team name, team id, team lead id & name, parent team name & id, team type & description. If there are updates to other team attributes in the external system, UpRaise doesn't need to know.

Team Data JSON Structure
{ "teams": [ { "id": "741", "name": "Sales", "teamLead": { "id": "1", "jirausername": "John.Doe" }, "parentTeam": { "id": "249", "name": "Business Development" }, "teamType": { "name": "Department" }, "description": { "name": "Team responsible for bringing in Dollars." } } ] }
Parameter details

Parameter

Type

Details

Team

Complex type

One team can have multiple users in it.

id

String

Id of the team in the external system. Should be unique for each team.

name

String

Name of the team. If the team does not exist in UpRaise already, it will be created and then updated in the database. 

teamLead

Complex type

Team lead is not predefined. One of the existing users is defined as team lead

id

String

Id of the user in the external system. Team lead's user id in the system. It should be a unique id.

jirausername

String

jirausername of the team lead.

parentTeam

Complex type

One of the teams is assigned as parent of other multiple teams from the existing teams

id

String

Id of the parent team in the external system. Should be unique for each team

name

String

Name of the parent team.  If the team does not exist in UpRaise already, it will be created and then updated in the database. 

teamType

String

team type e.g. department, division, team etc

description

Complex type

This will be the free text defined to describe the team, its details, etc.

name

String

Description of the team. 

Sample file templates

Template/Format type

Upraise version

Sample template file

JSON

Cloud

User data file


Teams data file

 

Excel

Cloud

User data file


Teams data file

 

JSON

Server

User data file


Teams data file

 

Excel

Server

User data file


Teams data file