Who can use this feature?
|
With the HRIS connector, you can upload a CSV file with your HRIS user fields to a dedicated FTP server to synchronize users from your HRIS to 360Learning.
The HRIS connector admin panel allows you to:
- View the daily synchronization results, with information on the date of the last synchronization and the number of users synchronized.
- Download the synchronization logs in JSON and CSV format. The logs include actionable information about errors occurring during the connector initialization or the processing of the user provisioning CSV file.
For more information on the user synchronization performed by the HRIS connector, see Synchronize users from your HRIS.
View the daily synchronization results
- In the left sidebar, click on the platform group (with the golden crown at the bottom right of its icon).
- At the top right, click Settings.
- In the left sidebar, click Integrations.
- Select the HRIS connector.
The connector admin panel displays the following information:
- Last connector sync: The date of the last synchronization.
- Created users: The number of users created on the 360Learning platform during the last synchronization.
- Updated users: The number of users updated on the 360Learning platform during the last synchronization.
- Duplicated users: The number of users duplicated during the last synchronization. Duplicated users are not created or updated on the 360Learning platform.
- Ignored users: The number of users ignored during the last synchronization. Ignored users are not created on the 360Learning platform.
- Archived users: The number of users archived on the 360Learning platform during the last synchronization.
- Users matching no group rules (Only with the Advanced Group Synchronization feature): The number of users that have not been assigned to a 360Learning group during the last synchronization.Â
Download the synchronization logs
- In the left sidebar, click on the platform group (with the golden crown at the bottom right of its icon).
- At the top right, click Settings.
- In the left sidebar, click Integrations.
- Select the HRIS connector.
The HRIS connector admin panel opens. - Click See all syncs.
The All synchronizations dialog box opens with the list of synchronization logs. Each line corresponds to the synchronization of one CSV file. - (Optional) At the top right, click Filter to filter by synchronization statuses:
- Successful: The synchronization was executed without errors.
- Successful with error(s): The synchronization was executed with some errors.
- Failed: The synchronization failed to execute.
- Running: The synchronization is still running.
- Select the check box on the left of the synchronization(s) log(s) you want to download.
- Click EXPORT.
The downloaded ZIP file contains one synchronization log per CSV file processed, in the following formats:
To ensure the synchronization log is completely downloaded, do not close your browser while the file is being downloaded.
When an error occurs during the connector initialization and prevents the processing of the CSV file, the downloaded file only contains a JSON log. For more information about this log, see Errors and warnings during the synchronization.
JSON log
Each JSON log displays the detailed synchronization results for a single processed CSV file, with the following properties in JSON format:
Property | Type | Required | Description |
Date |
String | Yes | Date and time of the start of the synchronization, expressed in ISO 8601 format — example: 2022-05-16T22:00:00.000Z . |
endDate |
String | Yes |
Date and time of the end of the synchronization, expressed in ISO 8601 format — example: |
status |
String | Yes |
Status of the synchronization:
|
logs |
Array | No |
Reason for the synchronization failure. |
numberOfCreatedUsers |
Integer | Yes |
Number of users created on the 360Learning platform. |
numberOfUpdatedUsers |
Integer | Yes |
Number of users updated on the 360Learning platform. |
numberOfArchivedUsers |
Integer | Yes |
Number of users archived on the 360Learning platform. |
numberOfDuplicateUsers |
Integer | Yes |
Number of users duplicated. Duplicate users are not created or updated on the 360Learning platform. |
numberOfIgnoredUsers |
Integer | Yes |
Number of users ignored. Ignored users are not created on the 360Learning platform. |
numberOfNoGroupsMatchUsers |
Integer | No |
(Only with the Advanced Group Synchronization feature) Number of users that are not assigned to a 360Learning group because they do not match any group assignment. |
duplicateUsers |
Array | Yes |
List of duplicated users, with the following attributes:
|
ignoredUsers |
Array | Yes |
List of ignored users, with the following attributes:
|
noGroupsMatchUsers |
Array | No |
(Only with the Advanced Group Synchronization feature) List of users that are not assigned to a 360Learning group, with the following attributes:
|
CSV log
Each CSV log presents detailed synchronization results for a single processed CSV file. The log incorporates the entire received CSV as its data source and introduces the following columns at the beginning of the file:
Import Status column
The ImportStatus column indicates the result of the synchronization for each record (line) within the CSV file received as the data source.
- Successful statuses:
-
UserArchived
: The user has been archived successfully. -
UserCreated
: The new user has been created successfully. -
UserUpdated
: The existing user has been updated successfully.
-
- Error statuses:
-
CreationIssue
: There was an issue creating the user. -
DuplicateUser
: The user already exists and caused a duplication error. -
InvalidUser
: The user data is invalid.
-
- Warning statuses (The user is still synchronized):
-
NoGroupsMatch
: The user does not match any group but is still synchronized. -
CustomFieldSyncIssue
: There was an issue with syncing a custom field, but the user is still synchronized.
-
- Reading CSV line issue status:
-
Error
: There was an error reading the specific line in the CSV file. The user is not synchronized.
-
- Default fallback status:
-
NoActionDone
: No action was taken on this user record.
-
Import Detail column
The ImportDetail column indicates the details of the synchronization for each record (line) within the CSV file received as the data source.
- Error when reading the CSV file:
CSV_RECORD_INCONSISTENT_COLUMNS
INVALID_OPENING_QUOTE
CSV_INVALID_CLOSING_QUOTE
- Mandatory data not present:
userWithoutExternalId
userWithoutFirstName
userWithoutLastName
userWithoutMail
userWithoutName
userWithoutStatus
- Custom field issue:
CustomFieldTypeMismatch
- Advanced Group Synchronization issue:
User does not match any group assignment rule
- User update issue:
Email already used by a deleted user from the company
Email already used in the company
-
Email used too many times
 (the email is used by more than 100 users)
- User first synchronization issue:
User is outside of the synchronization perimeter
-
Email used too many times
(the email is used by more than 100 users)
- User creation/reactivation:
userAlreadyExists
invalidEmails
unavailableEmails
Errors and warnings during the synchronization
Initialization errors for non-encrypted files
When an error occurs during the connector initialization and prevents the processing of the CSV file, the synchronization log contains a logs
array with the reason for the synchronization failure.
Below is a table with logs
examples and the corresponding description.
logs examples |
Description |
“logs” : [ “Connection to the SFTP server failed” ] |
The synchronization failed to execute because of one of the following reasons:
The synchronization is stopped and will be retried the next day. |
“logs”: [ File encoding is not supported for hrisBadEncoding.tsv, please make sure the file is encoded using UTF-8”] |
The CSV file is invalid because of bad encoding. The CSV file must be UTF-8 encoded. |
“logs” : [ “File is empty” ] |
The CSV file does not contain any user data. |
“logs” : [ Required fields are missing from the CSV header: myEmail”] |
Required fields are missing in the headers of the CSV file. To view the fields required for the effective processing of user provisioning data, see Synchronize users from your HRIS. |
“logs” : [ “File contains no data”] |
The CSV file only contains headers. |
“logs” : [ “The following fields are mentioned more than once in
the file headers: email, lastName”] |
Some fields in the header of the CSV file are duplicated. |
The following is an example of a synchronization log where the synchronization failed because of a missing required field in the CSV file:
{
"startDate": "2023-08-02T12:28:37.264Z",
"endDate": "2023-08-02T12:28:42.506Z",
"status": "Error",
"logs": [
"Required fields are missing from the CSV header : uniqueId"
],
"numberOfCreatedUsers": 0,
"numberOfUpdatedUsers": 0,
"numberOfArchivedUsers": 0,
"numberOfDuplicateUsers": 0,
"numberOfIgnoredUsers": 0,
"numberOfNoGroupsMatchUsers": 0,
"duplicateUsers": [],
"ignoredUsers": [],
"noGroupsMatchUsers": []
}
Initialization errors for encrypted files
If the encryption feature is activated for your HRIS connector and the synchronization fails, you will receive an email notification with the following error message: Error while decrypting file {filename}: A valid encrypted file is expected.
Check the following:
- The file uploaded is encrypted.
- The file is encrypted with the correct public key for the right environment. Your Solution Architect (SA) provides you with a public key for each instance on 1Password:
- For the testing instance: HRIS FTP encryption key
- For the production instance: [Prod] HRIS FTP encryption key
- The encrypted file is armored. To view if the file is armored, you can open it and check that it begins with
-----BEGIN PGP MESSAGE-----
. - The encrypted file name corresponds to the naming convention defined during the connector setup. For example, if the expected file name is
hris-360learning.tsv
, the connector will process the files with the following file names:hris-360learning.tsv
hris-360learning.tsv.pgp
hris-360learning.tsv.gpg
The error message for encrypted files is only displayed in the reporting email notification. It is not displayed in the admin panel nor the synchronization logs.
Processing errors
When an error during the processing of some user data does not prevent the processing of the CSV file, the synchronization log contains the list of users ignored, duplicated, and matching no group rules with an error message.
The following is an example of a synchronization log where one user could not be created:
{
"startDate": "2023-04-26T07:08:20.035Z",
"endDate": "2023-04-26T07:08:21.962Z",
"status": "Warning",
"numberOfCreatedUsers": 4,
"numberOfUpdatedUsers": 0,
"numberOfArchivedUsers": 0,
"numberOfDuplicateUsers": 0,
"numberOfIgnoredUsers": 1,
"numberOfNoGroupsMatchUsers": 0,
"duplicateUsers": [],
"ignoredUsers": [
{
"id": "5",
"email": "",
"firstName": "test",
"lastName": "test",
"errorMessage": "No email provided"
}
],
"noGroupsMatchUsers": []
}