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
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
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 Workflow recipes and Utility recipes chapters of this article. All recipes that call a sub-recipe will require editing, the called sub-recipes can be found in a list inside the recipe description.
Prerequisites
Udemy configuration
First you will need to log in to Udemy Business as an administrator, then navigate to the following link, replacing yourplatform with the name of your platform:
https://yourplatform.udemy.comCopy the yourplatform portion of the 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.
.png?sv=2026-02-06&spr=https&st=2026-07-16T07%3A57%3A50Z&se=2026-07-16T08%3A15%3A50Z&sr=c&sp=r&sig=8B51t5tHz%2BiInBOh7L%2BP4sXw4P1cHniYDe2u2wCMVeQ%3D)
In the resulting window, click on LMS / LXP Integrations from the left sidebar.
.png?sv=2026-02-06&spr=https&st=2026-07-16T07%3A57%3A50Z&se=2026-07-16T08%3A15%3A50Z&sr=c&sp=r&sig=8B51t5tHz%2BiInBOh7L%2BP4sXw4P1cHniYDe2u2wCMVeQ%3D)
Navigate to the LMS / LXP Integrations tab and select Docebo from the drop-down menu.

In the LMS/LXP name field, enter a name for this integration.

Toggle on Auto-enrollment and Learner activity tracking (xAPI) if you want to enable these features.

Click Save.
Once your API is activated, click the API menu tab. Your Client ID and Client secret appear on this page. Click Copy to clipboard for each field and save both values in a text editor for later use.

Next, click the API documentation link.
On the resulting page, locate your API URL and copy it into a text editor. You will enter this value in the lookup table in the row labeled API URL.
On the same page, locate your Account ID and copy it into your text editor.
Once you have all the required values saved, move to the Docebo platform configuration steps below.
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 Add.
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.
.png?sv=2026-02-06&spr=https&st=2026-07-16T07%3A57%3A50Z&se=2026-07-16T08%3A15%3A50Z&sr=c&sp=r&sig=8B51t5tHz%2BiInBOh7L%2BP4sXw4P1cHniYDe2u2wCMVeQ%3D)
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 (opens in a new tab) 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
In Docebo Connect, 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 |
|---|---|---|
|
| The ID number you pasted into a text editor during the Udemy steps of this article. |
|
| The ID number you received from Docebo support in the previous step. |
|
| <empty> |
|
| <empty> |
|
| <empty> |
The populated table will look as follows:
.png?sv=2026-02-06&spr=https&st=2026-07-16T07%3A57%3A50Z&se=2026-07-16T08%3A15%3A50Z&sr=c&sp=r&sig=8B51t5tHz%2BiInBOh7L%2BP4sXw4P1cHniYDe2u2wCMVeQ%3D)
You can now start the recipes in the Udemy For Business project folder.
Workflow recipes
Please note
In order for this integration to work properly, the following recipes need to be started first:
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
For more information about starting recipes, please see Docebo Connect: Working with 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
Decommissioning course from Udemy to Docebo
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
If your Docebo platform has course additional fields set as mandatory, this recipe requires additional configuration before it can successfully create courses. The Create Course action in Step 15 of the recipe must be edited to supply a value for each mandatory course additional field. Without this configuration, the recipe will fail at that step with an
HTTP 400error and the course will not be created.The value for each mandatory course additional field depends on your platform configuration. You can supply a fixed default value, or derive a value from the datapills available in the recipe context (sourced from the Udemy course data). To verify that a value is accepted by the platform before using it in the recipe, test it against the
learn/v1/coursesAPI endpoint.
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.
In order to store the user's status for each course they are enrolled in, the data retrieved will be used to invoke the following API call:
POST /learn/v1/lo/tracks/batch
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
Do not start this recipe. Run it using the Test Recipe function inside the recipe editor. If started, this recipe triggers automatically on a daily basis at midnight.
Calls to other recipes
Restore badly imported courses from Udemy
Trigger
Triggered via function call
Calls to other recipes
None