Introduction
Docebo Connect is a Docebo module acting as a connector between your platform and third-party SaaS systems, helping you to integrate your platform with more than 400 third-party external systems, reducing the integration effort.
Docebo Connect offers a large catalog of connectors for the most popular SaaS systems, to manage automated workflows (called recipes) shared among systems in order to exchange and share data on the basis of triggers.
Please note that Docebo Connect takes advantage of the APIs and business logic already existing in the integrating systems and does not create new ones. In addition, Docebo Connect does not manage SSO flows with Identity Providers (such as SAML, OpenID Connect, etc), JavaScript integrations (such as Google Analytics or Google Tag Manager) or iframe integrations (such as Docebo OEM or Salesforce Canvas).
This integration allows for the synchronization of courses from Udemy to Docebo.
For more information on the definition of terms and concepts used throughout this article, please read Docebo Connect Glossary of Terms.
Activating Docebo Connect
To activate Docebo Connect on your platform or sandbox, please reach out to your Docebo account manager. Please note that depending on the integration requirements, there may be associated costs.
Before you start
All the recipes for this integration can be found in the project's folder. This folder should be considered a “special folder” as all the recipes contained within are subject to automatic updates. As such, any customizations you make to recipes located within the folder can be overwritten by Docebo. In order to prevent such an occurrence, it is strongly advised to create a new project folder for any recipes you wish to use in production and copy or clone the recipes from the project's folder inside.
Prior to configuring and using the integration, you need to make clones of all the recipes used in this integration. For more information on how to clone and edit a cloned recipe, please see Docebo Connect usage: Copying recipes. The list of recipes that need to be cloned can be found in the Recipes chapter of this article. All recipes that call another recipe will require editing, the called recipes can be found in a list inside the recipe description.
Prerequisites
Udemy configuration
First you will need to log in to Udemy as an admin, then navigate to the following link, replacing [[yourplatform]]
with the name of your platform:
https://[[yourplatform]].udemy.com
Please copy and paste the [[yourplatform]]
part of the Udemy URL into a text editor for safe keeping, you will need that information for the Sub-domain field in the Docebo Connect Udemy Connector configuration later.
Next, click on Manage in the top right corner of the screen and select Settings from the drop-down menu.
In the resulting window, click on LMS / LXP Integrations from the left sidebar.
Next, press the Start Setup button and select Other from the drop down menu.
Now your API is activated you can find your client ID and client secret in the resulting window. Press the Copy to clipboard button to copy each field to your clipboard and paste the values into a text editor for safekeeping and later use.
Next, click on the API menu item in the left sidebar. In the resulting page, click on any of the API documentation links.
In the resulting page, you will find your API URL in the fourth paragraph. Copy and paste this into a text editor of your choice for later use. This information will be applied in the lookup table, in the row labeled API URL.
Next, scroll about half way through the page to reveal your API credentials. Copy and paste the account ID into your text editor for later use.
Next we will move to the Docebo Platform to set additional configuration parameters.
Docebo Platform configuration
xAPI (Tin Can) configuration
Log into the platform as an administrator and press the gear icon to access the administration page. Then, click on Advanced Settings and select the E-Learning tab.
In the xAPI (Tin Can) external content section, add your Udemy platform to the the list by entering the appropriate URL in the text box and pressing the ADD button. For example, if your platform name is “acme” then the URL would be
https://acme.udemy.com/*
Please note the trailing slash and asterisk in the URL, these characters are mandatory.
Once the URL has been entered and is visible in the list, press the Save button at the bottom of the page.
Once you have added the URL to xAPI, please contact your Account Manager (if your plan includes this option) or reach out to Docebo using your platform’s Help Center and request they provide you with the ID number of the setting core_setting_tincan_url
where the URL matches the URL you just entered into the xAPI external content section.
When you receive the response with the necessary information, you can proceed to the next step.
Docebo Connect configuration
Click on the gear icon and locate Docebo Connect, then click on Manage. Next, click on the Lookup Table tab and then click on the integration-settings table.
Please make sure that the table in the platform matches the table presented here, if any of the following rows are missing, please add them by typing the values in the relevant text boxes and then pressing the check mark icon to save the row.
Add the following rows, if they do not already exist:
Integration | Key | Value |
---|---|---|
UDEMY FOR BUSINESS |
ORGANIZATION ID |
The ID number you pasted into a text editor during the Udemy steps of this article. |
UDEMY FOR BUSINESS |
TINCAN ID |
The ID number you received from Docebo support in the previous step. |
UDEMY FOR BUSINESS |
API URL |
<empty> |
UDEMY FOR BUSINESS |
LAST SYNC DATE TRACKING |
<empty> |
UDEMY FOR BUSINESS |
LAST SYNC ENROLLMENTS |
<empty> |
The populated table will look as follows:
You can now start the recipes in the Udemy For Business project folder.
Recipes
Please note: In order for this integration to work properly, the following recipes need to be started first:For more information about starting recipes, please see Docebo Connect usage: Common recipe actions.
- Start Synchronization Course from Udemy
- Import course from Udemy to Docebo
- Update course from Udemy to Docebo
- Decommissioning course from Udemy to Docebo
- Tracking User activity
Workflow recipes
Start Synchronization Course from Udemy
This recipe runs on a daily basis. There are two possible scenarios:
- The first-time run adds all the courses to a list (
to_be_added
). When it ends, the recipe writes a token (last sync token
) in the integration-settings lookup table. - All subsequent runs provide an incremental sync; the recipe takes the previous token and checks which courses are added, updated or removed since the last run, and eventually calls all the recipes involved in the workflow.
- Trigger
- Triggers every 1 days at 12:00:00 PM
- Calls to other recipes
Import course from Udemy to Docebo
This recipe is made up of three cycles:
- The first cycle imports all the courses received from the main recipe
- The second cycle creates the respective training materials in the Central Repository
- The third cycle associates courses and training materials created in the first step
Please note: When importing courses from Udemy to Docebo, the following conditions exist:
- No language matching is performed, therefore all courses in all languages are imported
- Any imported course is placed at the root level of the course category
- All courses are imported with the published status
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Update course from Udemy to Docebo
This recipe updates the title and description concerning the courses received from the main recipes in Docebo.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Decommissioning course from Udemy to Docebo
This recipe updates the status of the courses received from the main recipe, by setting them to under maintenance (unpublished).
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Tracking User activity
The user’s course tracking from Udemy is managed by this recipe.
For the initial run, the recipe will collect all user’s activities without filtering in any way and will save yesterday's date (today - 1) on the udemy_sync_settings
lookup table.
For subsequent runs, it will retrieve the user’s activities filtering by date, from the relative yesterday (as saved in the lookup table) to the relative today.
The data retrieved will be used to invoke the platform’s API /learn/v1/lo/tracks/batch
to store the user’s status for each course they are enrolled in.
- Trigger
- Triggers every 8 hours
- Calls to other recipes
-
- None
Utility Recipes
Please note: If you need to restore courses that were not imported into Docebo from Udemy correctly, or imported empty, you can use the Recover empty Udemy courses recipe to restore the courses. The Recover empty Udemy courses recipe should not be started, instead it should be run using the Test Recipe function inside the recipe editor. In order to use this recipe, you will need to start the Restore badly imported courses from Udemy recipe first.
Recover empty Udemy courses
This recipe can be used to restore courses that were not imported from Udemy to Docebo correctly or left empty.
- Trigger
- This recipe should not be started, instead it should be run using the Test Recipe function inside the recipe editor. If started, this recipe will trigger automatically daily, at midnight.
- Calls to other recipes
Restore badly imported courses from Udemy
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None