This article provides a brief overview of the data import process. Please refer to our Data Imports - An Overview guide for a deep dive into the full process.
Documents You'll Need:
Data Mapping Spreadsheet
- Introduction to Data Imports
- The CSV File Format
- Getting Started
- How to Set Up Your CSV File
- Important for CSV Setup
Introduction to Data Imports
Data Imports are an additional service provided by Absorb, which fall into two main categories: scheduled imports and one-time imports.
Scheduled imports typically involve a daily feed from another system such as an HRIS provider, which allows you to ensure your LMS users are always up to date with your HRIS system. However, many Absorb clients use scheduled imports for other reasons such as updating course enrollments from a third-party content provider, bulk creating Instructor-Led Course sessions, or setting attendance for classes.
One-time imports are often used to assist with migrating data from another system (historical data import) but our team is able to assist with bulk importing or updating data for any reason and with multiple types of records.
The CSV File Format
While there are various file types that can be used when exporting data, the only one supported by Absorb for importing data is Comma Separated Values (CSV). It is important that you use this format when working with Absorb. You may want to review our support article, What is a CSV file and how do I save my spreadsheet as one?
If your import involves updating existing Absorb data, our team can often assist with creating a file or providing an export of the existing data. Please note that this typically increases the number of hours needed for the project.
Please contact your Client Success Manager (CSM) if you wish to start a new import project. Your CSM will bring in our Data Integrations team to scope the project with you.
Both types of imports are billable work that involves our Professional Services group. Import projects at Absorb are managed by our Data Integrations team within Professional Services. Our team will first meet with you to carry out a scoping call. In the scoping call, we'll review the import process and determine if an import is the right solution for you, confirm timelines, and answer any questions that you may have about developing your CSV file(s). We'll also estimate the number of hours of work involved; for most types of one-time projects, the cost of the project will depend on the number of hours.
For both types of imports, the same basic steps will happen. Our team will refine these steps with you to fit your specific project, needs and timelines:
- Scoping - Review of scope, timelines etc.
- Sample Files Provided - Our team will check your data files and provide feedback as needed
- Sandbox Import - We'll set up a sandbox environment to test the data
- Sandbox Review - We'll review the data with you and get your signoff when it's ready. We will typically use our Data Import Testing Checklist to manage testing for larger projects.
- Production Import - We'll deploy the integration to production. For larger integrations there is typically a pre-deployment call to ensure both teams are aligned
- Final Steps - These vary depending on the type and scope of the integration, but may include activities such as implementing a schedule for recurring imports
- Monitoring - We will monitor the health of the integration to confirm there are no issues
- Project Close - We will close out the project, after which time you can contact our Client Advocacy team if you encounter any problems
How to Set Up Your CSV File
The data being imported into Absorb must follow a specific format, and we recommend downloading and using the Absorb Data Mapping spreadsheet. The document includes multiple sheets, each titled to match a specific area of Absorb to make it simple to find the information you need.
An example of these is the Departments sheet/tab shown above. In this sheet, you can find the columns, data types, etc. that are available to set up your Departments. The Users sheet/tab is where you will find all User-related columns, data types, etc. The other tabs follow a similar format. You can refer to our Users Data Import Sample CSV file to view an example of a CSV set up with User data.
Important for CSV Setup
CSV Data Formatting
It is imperative that the sample file provided to Absorb for testing is set up in the exact same format as the final CSV. Any changes to the formatting can result in delays and/or added costs. For this reason, we recommend using real data in your sample files, allowing us to identify quality issues earlier on.
Using ExternalId Values
ExternalId values uniquely identify and link related LMS records, and can be nearly any value you wish to use. For example, when importing Users and their Course Enrollments into Absorb, the value User_ExternalId in the Course Enrollment table would refer to the User table's ExternalId, thereby relating the two elements during the import.
These values can either be real data taken from a system external to Absorb, or purpose-generated for the sole use of the data import. The value must be unique within the object type, for example, if you use 'C001' as the ExternalId for a course, no other course can have that ExternalId.
Some data objects require an ExternalId and some do not (please see the Data Mapping document for specifics). In cases where the ExternalId is required and your data does not provide it, you will need to create an arbitrary unique value in your data. Our integrations team is always on hand to provide advice on data manipulation!
Ensure that you are including all required values in your CSV file during creation. Required values can be determined by the REQUIRED By Absorb column in the Data Mapping Spreadsheet. Note that some required values are only mandatory under certain conditions, these are described in the document.
Validate Your Data
Before handing your import file off to Absorb, review and ensure that your data is valid. E.g., all external IDs are unique, referenced entities exist, special characters appear correctly, etc.
Note - Microsoft Excel will often adjust date formats depending on the user's settings, for this reason, it's best to check data containing dates in a plain text application such as Notepad or Notepad++.
Below is a list of recommended data checks that should be carried out on each file.
• All column headers match your column mapping
• All External IDs (or any other field being used as a lookup for other records) must be unique for each object type (e.g. all external IDs for users should be unique within your list of users).
• All referenced entities do actually exist where one file refers to an entity in another file (e.g. User file referring to a Department_ExternalId from the Department file). References should either occur in another file or have been previously been set up through the Admin Interface.
• All special characters (e.g. © ● ™ etc.) are represented correctly in the files. (Some software and/or export processes can sometimes automatically replace these with incorrect characters).
• All dependencies have been checked and verified. (For example, if enabling certificate expiry for a course (Certificate_ExpireType) also ensure the issuance of a certificate for that course (Certificate_IsEnabled) has also been enabled).
• All active/inactive flags (i.e. fields like ActiveStatus, IsActive, etc.) are set correctly. (Double-check documentation to ensure fields are set to 1 or 0 as appropriate.).
• All required fields are either provided in the data file or an appropriate default has been provided as part of the mapping/configuration document
• All custom fields that need to be updated by the import have been created in the production portal
• All field values are absolutely accurate. Double-check data in a text editor like Notepad to confirm; as programs like Excel may remove leading 0’s, truncate very long numbers, change date formats etc.
If your organization has data that will need to be added to custom fields in the User Profile, these can be treated the same as other fields in Absorb. The custom fields must be created in Absorb in advance so that data can be imported into it. We recommend creating all your custom fields in your production LMS portal as early in the import process as you can as this will save time later on.