View the HRIS connector synchronization results

  • Updated

Who can use this feature?

  • This feature requires the HCM Connect Solution and the HRIS connector. Contact your Account Manager for more information.
  • The administrator of the connector can view and download the synchronization logs of the HRIS connector.
  • Accessible only on the Web Application.

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:

For more information on the user synchronization performed by the HRIS connector, see Synchronize users from your HRIS.

View the daily synchronization results

  1. In the left sidebar, click on the platform group (with the golden crown at the bottom right of its icon).
  2. At the top right, click vector.svg Settings.
  3. In the left sidebar, click Integrations.svg Integrations.
  4. 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

  1. In the left sidebar, click on the platform group (with the golden crown at the bottom right of its icon).
  2. At the top right, click vector.svg Settings.
  3. In the left sidebar, click Integrations.svg Integrations.
  4. Select the HRIS connector.
    The HRIS connector admin panel opens.
  5. 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.
  6. (Optional) At the top right, click slider.svg 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.
  7. Select the check box on the left of the synchronization(s) log(s) you want to download.
  8. 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: 2022-05-16T22:00:00.000Z.

status String Yes

Status of the synchronization:

  • success: The synchronization was executed without errors.
  • warning: The synchronization was executed with some errors.
  • error: The synchronization failed to execute. logs is created with the reason for the synchronization failure.
logs Array No

Reason for the synchronization failure. logs is only included if an error prevented the processing of the CSV file.

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:

  • id (string): Unique identifier of the user.
  • email (string): Email address of the user.
  • firstName (string): First name of the user.
  • lastName (string): Last name of the user.
  • errorMessage (string): Reason why the user is duplicated.
ignoredUsers Array Yes

List of ignored users, with the following attributes:

  • id (string): Unique identifier of the user.
  • email (string): Email address of the user.
  • firstName (string): First name of the user.
  • lastName (string): Last name of the user.
  • errorMessage (string): Reason why the user is ignored.
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:

  • id (string): Unique identifier of the user
  • email (string): Email address of the user.
  • firstName (string): First name of the user.
  • lastName (string): Last name of the user.
  • errorMessage (string): Reason why the user does not match any group assignment rule.

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 SFTP server is unreachable.
  • The SFTP credentials are invalid.

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": []
}
Check out our blog for more L&D resources.

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request