Cornerstone OnDemand SFTP Integration Overview

Overview

An integration with Cornerstone OnDemand allows customers to view and browse DataCamp's entire course catalog within their learning management system (LMS). Customers will also have the option of receiving course completion updates in Cornerstone OnDemand so they can see what courses their learners have completed. For those with single sign-on (SSO) enabled, we can also configure a seamless sign-in experience so that learners can go directly from Cornerstone OnDemand to DataCamp in one simple click. 

DataCamp enables this integration by sending two files (content catalog and user content completion) to an SFTP server hosted by Cornerstone OnDemand. 

Configuring Cornerstone OnDemand Integration

Requirements

  • An Enterprise or Enterprise Usage plan is required
  • Ability to confirm the address, username, and password of the SFTP server where we should place the files

Integration details 

We integrate with Cornerstone OnDemand via an SFTP delivery method. This means that we will send two .csv files containing our content catalog and user content completion details to an SFTP server hosted by Cornerstone OnDemand. We will continue to send updated versions of these files on a daily cadence so that any changes are reflected in your LMS. Once the files have been placed on the server, Cornerstone OnDemand will ingest this data and make it available within your Cornerstone OnDemand environment. 

DataCamp's integration with Cornerstone OnDemand consists of three main parts: 

  • Configuring single sign-on (optional, but highly recommended)
  • Syncing DataCamp's Content Catalog with Cornerstone OnDemand
  • Sending DataCamp User Content Completion data to Cornerstone OnDemand

Configuring single sign-on (SSO)

By enabling single sign-on (SSO), members will be able to pass through Cornerstone OnDemand to a specific DataCamp course seamlessly. We generally recommend enabling SSO as it is more secure, increases adoption, and ultimately lends itself to a better user experience. 

That said, SSO is not a requirement for our Cornerstone OnDemand integration if you would like to use employee email as the unique identifier. For more information on configuring SSO, please read our documentation here. If you would like to use employee ID (or similar) as a unique identifier (instead of email which is the default), you will need to configure SSO so that DataCamp receives the employee ID in the SAML response. 

Syncing DataCamp's Content Catalog

When you are ready to go live with your integration, DataCamp will place an initial content catalog file on SFTP server hosted by Cornerstone OnDemand. This file will then be ingested and displayed within your Cornerstone OnDemand environment. 

DataCamp will continue to send a content catalog delta file every 24 hours so that new content added to our library will be reflected in your Cornerstone OnDemand environment. This file will include a unique course id as well as some additional metadata (e.g. description) for each course. If SSO is enabled, we can send SSO Enabled Deep Links for each course in this file, which will create a seamless sign-on experience for the learner. DataCamp sends the following fields in this file:

  • Materials ID (Content ID—will be Learning Object ID if mapping is provided)
  • Materials Title (Content title)
  • Provider (DataCamp)
  • Materials Description (Content description)
  • URL (Link to the course on DataCamp)
  • Material Type (DataCamp)
  • Training Hours (Estimated time in hours)
  • Active (Yes or No)
  • Subjects (Technology and topic)

Note: This file is optional to send and can be disabled if you prefer to add courses to the catalog manually. 

Sending DataCamp User Content Completion Data to Cornerstone OnDemand

DataCamp will also send a user content completion file containing a transcript record of which members completed specific content and on what date. An updated version of this file containing a delta of transcript information since the previous sync is also sent every 24 hours to reflect any changes to a member’s content completion history. DataCamp sends the following fields in this file:

  • User ID (required): This can be the email or employee ID. Note: SSO must be enabled and sent as part of the SAML response for employee ID to be used as the unique identifier.
  • Learning Object ID (required): This is a unique ID in Cornerstone OnDemand for a DataCamp course. Note: Learning object IDs must be provided by the client; see more below.
  • Transcript Status (required): This will show "completed." Note: DataCamp does not currently send a "registered" status when a course is started. DataCamp only sends a "completed" status when a course has been finished.
  • Registration Date/Time (optional): At this time, DataCamp's template includes this field to support Cornerstone OnDemand requirements, but it is left blank. DataCamp does not send the registration date at this time. 
  • Completion Date (required): Format: MM/DD/YYYY HH:MM:SS UTC
  • Score (optional): At this time, DataCamp leaves this field blank.

Note: This file is optional to send and can be disabled if you prefer. 

Cornerstone_OnDemand_SFTP_Integration_Overview.png

Mapping Learning Object IDs and Employee IDs

Learning Object ID (LOID) Mapping

By default, DataCamp will send a unique course ID in both the content catalog and user content completion transcript. If you have separate learning object IDs that you need us to send in these files, we can support this. DataCamp will provide a .csv template containing our available content catalog and you can enter a corresponding learning object ID for each item of content you would like to include. If an item of content does not have a corresponding learning object ID, we will not send records related to this piece of content. 

Once you've completed mapping your learning object IDs in the template, you can provide this file to your Customer Success Manager who will finish completing the integration. You can update or add new learning object IDs at any time by providing a new copy of the file. 

Employee ID Mapping

By default, DataCamp will send the member's email address as the unique identifier in all learning management system (LMS) integrations. If you would prefer we send an employee ID (or similar) to the LMS instead, we can support this. 

First, you will need to configure SSO and ensure that you are sending the employee ID or reference number in the SAML response that DataCamp receives. Once this is configured, DataCamp will begin saving the employee ID to the member’s profile. When the files are generated each day, we will send the employee ID as the unique identifier instead of the email address. If we are missing an employee ID for a user, we will not send their information to your LMS. 

Note: Customers who already have active users on DataCamp prior to configuring SSO to send the employee ID, will need to backfill existing users' IDs before we can begin sending their records to the LMS. 

Setup Steps

To configure your Cornerstone OnDemand integration, please reach out to our Customer Success team at success@datacamp.com, or your Customer Success Manager, to get started. The following are the steps for configuring the integration with Cornerstone OnDemand:

  1. For customers looking to enable single sign-on (SSO), the first step will be to configure your Identity Provider (IdP) and DataCamp SSO settings. (For more information about configuring SSO, click here.) If you would like to use employee ID as a unique identifier (instead of email which is the default), you will need to configure SSO so that DataCamp receives the employee ID in the SAML response. 
  2. To enable the Cornerstone OnDemand integration, we will need the following details provided by your Cornerstone OnDemand implementation consultant: 
    1. Confirm SFTP address, username, and password so that we can send both the files
    2. File name convention for the content catalog file
    3. File name convention for the user content completion file 
    4. Learning object ID mapping template (if required, this will be provided by your Customer Success Manager)
  3. Once the details provided are confirmed, your Customer Success Manager will activate the integration. An initial upload with our full content catalog and user content completion will be immediately uploaded to the SFTP server. Updated versions of the files will then be scheduled to send every 24 hours. 
  4. Your Cornerstone OnDemand implementation consultant will be able to confirm that the files have been received and have been collected to display in your Cornerstone OnDemand environment. 

FAQs

What content types are included in the content catalog?

Currently, the only content type sent to Cornerstone OnDemand is courses. Projects, tracks, practice, mobile, and DataCamp Signal™ skill assessment information is not sent at this time.

How often will these files be sent?

DataCamp will send updated versions of both the content catalog and user content completion file every 24 hours at 6 PM UTC. This means there may be up to a 24-hour delay between when a user completes a course and when it is reflected in Cornerstone OnDemand. Likewise, a change in DataCamp's course catalog may not be reflected in Cornerstone OnDemand until the next day. 

What are SSO-Enabled Deep Links?

An SSO Enabled Deep Link is any link to a page on DataCamp which contains a company SSO identifier. When a user clicks on this link, we will automatically redirect them to the IdP to sign in (if they aren't already) with SSO, and then redirect them back to the page they originally intended. If they don't have a DataCamp account yet, then we automatically provision them a new one. 

In the context of a Cornerstone OnDemand integration, this means that users can click on an SSO Enabled Deep Link to a specific course and immediately be brought to that course as a logged-in user. This eliminates an extra sign-in step when they get to DataCamp and creates a smooth experience for the end user. 

The format of any SSO Enabled Deep Link is: https://www.datacamp.com/groups/<GROUP_IDENTIFIER>/sso/saml/login?path=<PATH>.

Notes:

  • Requirements outside the scope of the integration described above are subject to additional professional service fees beyond the cost of the license and additional development time. 
  • Some requirements may require support from your LMS provider, which may require you to engage with their professional services team.