Cornerstone Integration

About the integration

DataCamp supports integrating with Cornerstone LMS via SFTP. In the integration, the DataCamp content catalog and learning events are sent to an SFTP server provided by Cornerstone in the form of flat CSV files on a periodic basis. Cornerstone then uses these files to update its internal catalog and progress/completion records.

Content and events sync process

DataCamp can sync its full catalog to Cornerstone. This includes courses, projects, practices, assessments, tracks, custom tracks, and certifications. For courses, projects, practices, assessments, certifications,  tracks, and custom tracks content completions can be synced.

The sync interval is customizable. Furthermore, the timestamp on which the sync happens can be customized to your needs. It’s also possible to plan the first sync ahead of time.

CSV file structure

The structure of the CSV file is defined in a template, customized for use with the Cornerstone LMS. On request, additional fields can be added to the CSV template.

Content fields

The table below summarizes the fields that are used in the content CSV files.

Cornerstone field Description
id The unique identifier for the content item on DataCamp
title The content’s title, suffixed with an indication of its content type
description The content’s description
image_url URL of the thumbnail for the content
deeplink_url An SSO deeplink to the content
keywords The content’s technology if it is available
duration The duration of the content in seconds
archive “Y” if the content is archived, “n” otherwise
language Hardcoded to “English”
is_private Hardcoded to “false”
content_type Hardcoded to “course”

 

The table below summarizes the fields used in the learning events CSV files.

Cornerstone field Description
User ID User identifier. Can be e-mail, SSO nameID, or LMS username
Learning Object ID or Material ID DataCamp id of the content item
Transcript Status Hardcoded to “Completed”
Request Date/Time The date when the user completed the item
Registration Date/Time The date when the user completed the item
Completion Date/Time The date when the user completed the item
Score Empty

SSO and deeplinking

All content items sent by DataCamp have a url, which is a so-called deeplink. If single sign-on is enabled and set to required for your organization on the DataCamp side, these links will redirect learners to their identity provider before redirecting them to the actual content on DataCamp.

If single sign-on with the same identity provider is configured in Cornerstone, this allows a seamless experience between Cornerstone and DataCamp. If learners are already logged into Cornerstone, they will not have to sign in again when they launch a content item on DataCamp.

Full and delta files

DataCamp sync its catalog and events via SFTP in two ways: full files and delta files.

The first time the DataCamp content catalog and learning events are synced, the CSV files will contain all items in the DataCamp catalog and a full historical backfill of all learning events. Cornerstone will ingest these files using Edge Import.

Subsequent CSV files from DataCamp are delta files. This means that they will only contain:

  • New content items launched since the last successful sync
  • Updates to existing content items that happened since the last successful sync
  • events that occurred since the last successful sync

File naming

The integration can be set up to flexibly name the files. Files can have a fixed name, in which case files uploaded during a sync will overwrite any existing files from the previous sync. In the case of flexible names, a timestamp can be included in the filename. This timestamp is the timestamp on which the file is generated. We currently support all common date and time formats.

Server authentication

DataCamp supports password and public key authentication for SFTP. In the first case, you can provide DataCamp with a username and password. In the second case, DataCamp can provide a public key that you can whitelist on your server.

Prerequisites

Before setting up an integration via SFTP, the following requirements must be met:

  • You need to have an SFTP server available with either:
    • An account created that can be used by DataCamp to upload files
    • The possibility to add trusted public keys

Setup

In order to set up an integration via SFTP, start by configuring your Cornerstone Edge Import to download and process CSV files from the SFTP server.

Next, provide DataCamp with the following information:

  • What content types should be synced (courses, projects …)
  • If learning events should be synced
  • The credentials for your SFTP server, including:
    • Hostname
    • Port
    • Username/password in case of password-based SFTP authentication
    • Path to which the files should be uploaded, with sufficient permissions for the provided user
  • How the files should be named
  • The sync cadence and timestamp of the first sync

The DataCamp team will set up the integration based on the information provided. 

 

FAQ

Will a user completion be included in an SFTP sync if a course is skipped?

Completions for skipped courses are not included in SFTP files containing learning events files.(Courses can be skipped as part of a track, when passing a "test-out" assessment).