# Online Content Connector
Online Content is an all-purpose learning object for launching any kind of content hosted outside of the Cornerstone LMS. The content does not need to conform to existing learning standards such as SCORM, AICC, or xAPI. When used in tandem with the Progress API, Online Content can be tracked in detail, with information such as completion status, time spent, score, progress, and bookmark passed back to Cornerstone LMS.
The Online Content Connector provides a means to upload course metadata to Cornerstone’s Learning Management System (LMS). This connector has a three-step integration process:
- The requests to fetch new/updated courses are initiated by Cornerstone. You will need to setup an endpoint adhering to the contract defined by Cornerstone. Cornerstone will hit this endpoint daily to fetch new and updated courses from your system.
- When a user launches a course in Cornerstone, within the launch URL we include certain parameters including a callback URL and a session token.
- Using this information, you can post the user’s progress to the Cornerstone LMS.
# Course List
The Course List is a JSON object containing the list of newly created and updated courses. You must setup an endpoint that allows Cornerstone to GET the list of new/updated courses from your system.
Reference
View the Online Content Connector API
# Launch URL Parameters
When a user launches a course in the Cornerstone LMS, Cornerstone includes the following attributes as query parameters in the launch URL. You will need this information to report user progress back to the Cornerstone LMS using the User Progress API.
Parameter | Description | Type |
---|---|---|
userGuid | The user’s identifier in the LMS. | GUID |
sessionToken | The current session token that is used to authenticate the callback to the LMS. | string |
callbackUrl | The User Progress API callback path, which will be appended to the hostname. | string |
fqdn | The User Progress API callback fully qualified domain name. This refers to the client’s portal in the Saba LMS. For example, ClientName.saba.com | string |
subdomain | The User Progress API callback subdomain. This refers to the client’s portal in the Cornerstone LMS. For example, {subdomain}.csod.com | string |
registrationNumber | The current registration number. For the learner’s first registration, registrationNumber is 1. If the learner is re-assigned to the online content, registrationNumber becomes 2. For subsequent re-assignments, the registrationNumber increments to 3, then 4, and so on. | string |
Here’s an example of a launch URL with the above query parameters:
{courseUrl}?userGuid={userGuid}&sessionToken={sessionToken}&callbackUrl={callbackUrl}&subdomain={subdomain}®istrationNumber={registrationNumber}
# User Progress API
The User Progress API enables content partners to report the end-users’ progress data to the Cornerstone LMS. With this API, it is possible to track bookmarking and provide the user status and score for each Online Content LO.
To use the User Progress API, you will need the following:
- The callback information included in the launch URL.
- An account registered with Cornerstone. If you intend to use the Online Content Connector with the User Progress API, please notify your contact in the Cornerstone Content Services team during the initial setup phase. Cornerstone will register the account and provide you with the API credentials.
You should call the User Progress API when the end user exits the content on your website. You can also send progress data more frequently while the end user is still in progress within the course.
Note that while you can send progress for multiple users in batch in a single request, we do not recommend this approach. Sending progress requests to Cornerstone as progress events occur in your system provides for the best end-user experience.
Reference
View the User Progress API
# Authentication
User Progress API supports basic authentication using a session token that is valid for 120 minutes, and an authorization header. The User Progress API also supports OAuth 2.0