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:
- On the “API credentials” page, click “Add OAuth 2.0 app”
- Give the app a name, description, and client id
- Enter a dummy redirect url
- Tick the “show advanced settings” box and then make sure only “Resource owner password credentials” is selected for the grant types.
- 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).