Docebo Integration

About the integration

At DataCamp, we can integrate with Docebo via the Docebo API, making our content and completions available on the LMS.

Content sync process

DataCamp can sync its full content catalog to Docebo. This includes courses, projects, practices, and assessments.

Docebo only supports the concept of courses. Thus, our projects, assessments and practices will also be e-learning courses in Docebo. Every e-learning course will have one learning object, which will contain a link to the content item on DataCamp.

DataCamp syncs its content on a periodic basis, with an interval of 3 hours. The sync process consists of:

  • Adding new content
  • Updating metadata of existing content (title, description, …)
  • Marking archived content on DataCamp as inactive on Docebo

Content mapping

The table below summarizes the metadata for each content item DataCamp sends to Docebo.

Name Description
Course
course_code The DataCamp id of the content item.
course_name The title of the content item on DataCamp.
course_description The description of the content item on DataCamp.
course_type

Hardcoded to “elearning”.

course_language

Hardcoded to “en-us”.

course_published

“Published” if the content item is active on DataCamp, “unpublished” otherwise.

Learning object
course_code
The id of the content item the object relates to.
lo_code DataCamp id of the course.
lo_name The title of the content item on DataCamp.
lo_description The description of the content item on DataCamp.
lo_type Hardcoded to “tincan”.
lo_url Deeplink to the content item on DataCamp.
launch_mode Hardcoded to “new_window”.

 

Completions sync process

Next to content, DataCamp can optionally sync content completions to Docebo.
Completions are synced close to real time, which means that if a learner completes some content item on DataCamp, the completion should appear in Docebo within a maximum of a few minutes.

Completions in Docebo are reflected as completed enrollments. When a learner is enrolled in the course on Docebo, we complete this enrollment. If no enrollment is found for the user, a new enrollment that immediately gets completed is created.

For the Docebo integration, DataCamp uses e-mail addresses as user identifier. If SSO is set up and is set to required, completions for all users will flow through if the e-mail address received from the IDP is the same one that is recorded in Docebo. If SSO is set to optional on DataCamp, some users could not be using their identity provider to log in. In this case, the e-mail address these users use for DataCamp and Docebo might be different, in which case we won’t be able to send completions.

SSO and deeplinking

All content items sent by DataCamp have a launch 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 on Docebo, this allows a seamless experience between Docebo and DataCamp. If learners are already logged into their LMS, they will not have to sign in again when they launch a content item on DataCamp.

Prerequisites

In order to set up an integration with Docebo, the following requirements must be met:

  • You must have access to an active Docebo instance;
  • You must have an active enterprise subscription on DataCamp;
  • In order for completions to be synchronized: SSO for DataCamp must be enabled and configured correctly. This means:
    • Your identity provider should send the user identifiers used in Docebo;
    • On the SSO settings page on DataCamp, the nameid-format should be set to “unspecified”
      • (optional but highly recommended) SSO must be set to required on DataCamp;
      • You must have admin privileges on the Docebo instance

Setup

To set up an integration with Docebo, some steps need to be taken.

Step 1: Activate the SSO and API app on Docebo

Follow these steps to activate the “SSO and API” app on Docebo.

Step 2: Create a new user on Docebo and promote it to an admin

Create a new user as described here. Make sure to choose “SuperAdmin” for the user level.

Step 3: Create API credentials for the new user

Open the “SSO and API” settings as described on this page, and go to the “API credentials” tab.

Take the following steps to create API credentials:

  1. On the “API credentials” page, click “Add OAuth 2.0 app”
  2. Give the app a name, description, and client id
  3. Enter a dummy redirect url
  4. Tick the “show advanced settings” box and then make sure only “Resource owner password credentials” is selected for the grant types.
  5. Click “confirm” and then make sure the app is activated. Also make sure to note down the client secret as it will only be shown once.

After you have done this, please send the following information to DataCamp:

  • Instance URL of your Docebo instance (this will look like “https://slug.docebosaas.com”)
  • Username of the account you created in step 2
  • Password of the user you created in step 2
  • Client id of the OAuth app you created
  • Client secret of the OAuth app you created

Step 4: Add the xAPI URL

To allow DataCamp to sync content, we need to add the DataCamp xAPI URL to the allowed xAPI materials.

On the Docebo home page, go to "admin" > "Advanced settings" > "E-learning". On the "xAPI (Tincan) external content" section, add the following URL: "https://lms-api.datacamp.com/docebo/*". Click "save" to save the settings.

 

FAQ

Will a user completion be registered in Docebo if a course is skipped?

Completions are not sent to Docebo when a course is skipped, and learning hours are not counted for skipped courses. (Courses can be skipped as part of a track, when passing a "test-out" assessment).