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).
The integration for Credly allows you to import course badges from Credly as completed External Training in Docebo as well as exporting your completed courses or learning plans from Docebo to Credly as badges.
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.
Configuring the integration
Prior to using Docebo Connect for Credly, you will need to configure the integration, following are the steps necessary to successfully set up the lookup tables and recipes.
External certifications
Activating external certifications
Please note: This integration requires certain areas of your platform to be activated by Docebo if you wish to use these recipes with external certifications. Please contact Docebo Support and request this specific phrase: "Activation of external certifications recipes additional feature support". This will direct support to activate the additional functionality.
Manually assigning external certifications
This setting adds the ability to manually assign external certifications. To do so, access the Certifications and Retraining app by pressing the Gears icon, locating Certifications and Retraining and pressing Manage.
Next, locate the Certification you wish to award in the list of certifications and press the number in the Awarded To column. Then, in the following screen, press the Award users button. In the resulting window, place a checkmark next to the users you wish to assign the award to and press Next.
In the Award users window, set the issue and expiration dates of the certification. If the certification does not expire, press the checkbox labeled Always valid instead of setting an expiration date. Then, for the Association Type, select the External certification radio button. A dropdown menu labeled Source will appear, there select your certification provider (you may repeat this process to add more than one) and add the external link to the certification in the resulting textbox. Press the Confirm button to finalize your certification assignment.
Please note: The external certification can not be imported via CSV file and must be added manually.
Viewing External Certifications
As a learner you can view your external certification by going to the MyActivities page and pressing the Certification tab. In the resulting Certifications and Retraining screen, you can find the link to the external certification at the end of the certification's row in the table.
Configuring the lookup tables
Docebo Connect for Credly uses three different lookup tables. The first one is the standard integration-settings table where the settings for the integration are stored, next there is the Credly Badge Templates table where the badge templates relating to Credly are stored along with the necessary data to translate it to the Docebo platform. Finally, there is the Credly Integration Mappings table which stores the mappings between Docebo objects (such as learning plans and external training) and Credly badges.
Please note: All boolean values must be stated as either true or false in lower-case.
Integration Settings table
To access the integration-settings table, press 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 |
---|---|---|
CREDLY |
BATCH_SYNC_START_DATE |
Date value While this integration performs synchronization in real-time, it also provides an utility for running a batch synchronization between Docebo Objects and Credly Badges. This date value establishes the furthest point in time in terms of Issue date those items should be evaluated by the batch utility. Format |
CREDLY |
NOTIFICATION_MAIL_ID |
Text value The email value that should be used by the recipes of this integration for error notification purposes. |
CREDLY |
SYNC_REVOCATION |
Boolean value This boolean value can be set to |
CREDLY |
CREDLY_DEFAULT_EXPIRATION_DAYS |
Numeric value This date value should be used to create Credly badges when the related Docebo objects lack expiration date properties, or if that is not applicable. The expiration date should be set at the current date plus the number of days expressed by this field. If this field is left blank, an expiration date will not be added in the Credly environment. If it is set to |
CREDLY |
EXTERNAL_TRAINING_INSTITUTE_NAME |
Text value As Credly badges are imported as External Training, this field will be used as their Institute Name. |
CREDLY |
COURSE_ADDITIONAL_FIELD |
Text value The name of the course additional field created in Docebo Learn for the badge templates to be added. |
CREDLY |
CREDLY_INTEGRATION_MASTER |
Text value Docebo certifications can be synchronized either from Credly to Docebo or vice-versa. If If If no value is provided then bi-directional synchronization will take place. |
CREDLY |
EVIDENCE_TITLE |
Text value An additional field used while assigning the badges to users, it is used to store the flow from which the badge is assigned to the users. |
Once all the values are added the lookup table should look like this:
Credly Badge Templates table
The Credly Badge Templates table is populated by the Synchronisation from Credly to Lookup table and Synchronisation from Credly Lookup table to Docebo LMS recipes and requires no manual configuration.
Badge Template ID | Badge Template Name | IsActive | Dropdown Element ID |
---|---|---|---|
Integer value The ID of the badge from Credly. |
Text value The name of the badge template from Credly. This will be presented as a dropdown value in the Credly Badge Template Course Additional Field. |
Boolean value A boolean flag that specifies if this entry should be skipped by the integration or not. |
Integer value The numeric ID of the badge template as a Course Additional Field dropdown value. This value is assigned by the Docebo Learn platform during an update of the additional field. |
As an example, a populated Credly Badge Templates table would look similar to this:
Credly Integration Mappings table
The Credly Integration Mappings table is utilized by both the Docebo to Credly (map Learning Plans with Credly Badge Templates) and Credly to Docebo (map Credly Badge Templates with External Training) flows.
This lookup table is used by the integration to map relations between Docebo objects (learning plans, external training) and Credly badge Templates and vice-versa. All values in this table must be configured manually. The columns and the expected values they contain is explained here:
Badge Template ID | Badge Template Name | Learning Plan ID | Import As External Training | Certification Code | IsActive |
---|---|---|---|---|---|
Text value The ID of the badge from Credly. This value can be obtained in Credly by accessing the Badge Template. The Template ID is displayed in the Details tab. |
Text value The Name of the badge template in Credly. |
Text value The ID of the associated learning plan in Docebo Learn. The ID of the Learning Plan can be obtained by accessing the Admin Menu in Docebo Learn and then selecting Learning Plans from the left menu. The list of all available learning plans displays the ID as the first column. |
Boolean value Specifies if the related Credly Badge should be imported as External Training in Docebo Learn. If set to true, External training will get created, if the associated Badge template is assigned to the user in Credly. |
Text Value The code of a Certification in the Docebo Learn platform. |
Boolean value This |
When completed, as an example, the table would look similar to this:
Configuring the connector
Getting the necessary information from Credly
To find the necessary information for the connector's configuration settings, log in to Credly and in the left side menu, select Developers. Then press the Authorization Tokens tab. Copy the Organization ID to a text editor and then press the Add Token button.
In the following window, copy the Token information to a text editor and, optionally, give your token a meaningful description. Then, press the Save button.
Configuring the connector in Docebo Connect
Navigate to your project folder and press the down arrow on the Create button in the top right corner of the window. In the resulting drop-down menu, select Connection. In the resulting New connection screen, type Credly into the search text box and in the search results field, select the Credly connector.
Next, in the Connect to Credly window, give your connection a meaningful name and in the Instance environment drop-down menu select Production. Next, in the Organization ID, enter your Credly Organization ID and in the Authorization token field, enter your Credly Authorization token. Then, press the Connect button.
Changing the badge in a course
In the event you need to delete or archive a badge in a course you can do so directly in Credly. The behavior in Docebo will be as follows:
Archived badges remain in the Credly badge templates lookup table but their associated IsActive
field value changes from true
to false
.
Deleted credentials are deleted from the Credly badge templates lookup table entirely.
Next, if you are not using real-time synchronization or you are running the synchronization for the first time, in order to affect an immediate synchronization and enact the changes, run the following recipes in order:
Please note: If you do not run these recipes manually immediately, your changes can take up to three hours to be actualized.
The course will remain marked completed in Docebo and the course andditional field associated with the external badge or credential will be reset to the default value.
Recipes
Please note: Every Docebo object that supports an expiration date property must be created with the expiration date of the related Credly badge, and vice-versa. If a Docebo object does not support such a field, then the related Credly badge must be created with expiration date according to the value of the CREDLY_DEFAULT_EXPIRATION_DAYS
integration-settings lookup table setting.
Configuration
The following recipes require configuration prior to running this integration:
Recipe start order
In order for this integration to work properly, the following recipes need to be started first, after everything has been configured:
- Synchronisation from Credly to Lookup table
- Synchronisation from Credly Lookup table to Docebo LMS
- Assign Credly badge for Course Additional Field element
- Assign Credly badges for Learning Plans
- Retrieve Certification Awards
- Retrieve Learning Plan from Course
- Filter learning plans retrieved from course
- Retrieve enrolled users by course ID
- Assign Credly badge to users
- Filter unassigned badge templates
- Retrieve Credly batch template ids for user completed LPs
- Process certifications
- Issue Badge in Credly
- Revoke badge in Credly
- Replace badge in Credly
- Retrieve lookup table values
- Credly badge retrieval
- Process Credly events
- Retrieve user details from Docebo LMS using user mail id
- Check if badge not issued through Docebo to Credly Sync
- Create/Update/Delete external training for user
- Delete External Training assigned to user
- Update External Training assigned to User
- Create/Update/Delete Certifications for user
- Check certifications awards existence
- Retrieve course additional field from Docebo LMS
- Integration master flow check
- Schedule/Manually run Credly lookup table to Docebo LMS sync
- Synchronisation of Credly Badge templates to Docebo LMS - Real Time
- Process badge created/updated events
- Entries deletion and mapping deactivation notice
Then, run the following recipes to perform the initial synchronization (do not "start" these recipes, run them as a Test within the editor). Please remember these recipes may take a long time to synchronize all the data:
- Batch Sync - Docebo to Credly
- Batch Sync - Credly to Docebo
Once these recipes have finished, start the following recipes to start the real-time synchronization:
- Event Dispatcher - Credly to Docebo
- Event Dispatcher - Docebo to Credly
For more information about starting and editing recipes, please see Docebo Connect usage: Common recipe actions.
Utility Recipes
Retrieve course additional field from Docebo LMS
This recipe is responsible for creating a course additional field in Docebo, if it is not already present, based on the value provided in COURSE_ADDITIONAL_FIELD
in the integration-settings lookup table. It then sends the course additional field ID as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Integration master flow check
This recipe checks the CREDLY_INTEGRATION_MASTER
value in the integration-settings lookup table to determine the synchronization flow, from Docebo to Credly, Credly to Docebo or bi-directional.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Badge template synchronization recipes
Schedule/Manually run Credly lookup table to Docebo LMS sync
The recipe is used to call the synchronization from the Credly lookup table to Docebo a sub recipe manually or scheduled.
- Trigger
- Triggered automatically every 5 minutes
- Calls to other recipes
Synchronisation of Credly Badge templates to Docebo LMS - Real Time
This recipe is responsible for retrieving the badge template details from the Credly environment and populating or deleting them in the Credly Badge Templates lookup table.
- Trigger
- Triggered via function call
- Calls to other recipes
Entries deletion and mapping deactivation notice
This recipe is responsible for sending the notification email in the badge templates deleted to the admin NOTIFICATION_MAIL_ID
provided in the integration-settings lookup table
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Synchronisation from Credly to Lookup table
This recipe is responsible for retrieving the badge template details from the Credly environment and populating them in the Credly Badge Templates lookup table.
Please note: Credly allows badge templates to be created with duplicate names but only badge templates with unique names are accepted by this integration. If duplicate badge templates are present, only the first badge template retrieved will be added to the lookup table and others will be skipped. It is strongly recommended to create or update the badges with unique names.
- Trigger
- Triggered automatically daily at 2:00 Pacific Time Zone
- Calls to other recipes
-
- None
Synchronisation from Credly Lookup table to Docebo LMS
This recipe is responsible for creating the course additional field (dropdown field) in Docebo by calling Retrieve course additional field from Docebo LMS.
The populated values in the Credly Badge Templates lookup table are used as dropdown elements for the created course additional field.
Only the values set to true in the IsActive
column in the Credly Badge Templates lookup table will be added as dropdown elements in the course additional field and the Dropdown Element ID column will be populated with the respective element ID from Docebo Learn.
If the value of IsActive
is changed and not set to true
, the dropdown element will be removed from the course additional field, if already added, and the respective value from the Dropdown Element ID column will be removed.
- Trigger
- Triggered automatically every five minutes
- Calls to other recipes
Docebo to Credly synchronization recipes
Event Dispatcher - Docebo to Credly
This recipe is triggered in real-time via webhook.
This recipe (and its child recipe) implements the real-time synchronization from Docebo to Credly.
To configure this recipe, you will need to add a webhook in Docebo. In Docebo Connect, locate the Event Dispatcher - Docebo to Credly recipe and press the ellipsis button. In the resulting drop-down menu, press Edit recipe.
Next, in the recipe editor, locate and click the trigger, this entry that calls the webhook. In the resulting slide-in menu, locate the webhook URL and press the Copy button to copy the URL to the clipboard.
Next, press the gears icon to access the Admin menu, locate Webhooks and press Manage. Then, in the Webhooks management screen, press the plus button to create a new webhook.
In the resulting slide-in window, give your new webhook a meaningful name and, in the Payload URL field, paste the webhook URL from the recipe. In the Payload Collection section check the Allow the platform to group payloads checkbox. Next, press Select Events to choose the triggering event for this webhook.
Locate the Enrollments section of the events and select Learner completed course
. Next, locate the Certifications section of the events and select Certification awarded
, Certification revoked
and Certification updated
. Then, press Confirm.
Returning to the Properties window, press the Save Changes button to save your new webhook.
Next, in the list of webhooks, locate the item you just created and press the ellipsis icon at the end of the webhook row and in the resulting drop down menu select Activate to activate your webhook.
- Trigger
- Triggered in real-time via webhook
- Calls to other recipes
Batch Sync - Docebo to Credly
This recipe is responsible for performing a batch sync for all the courses in Docebo Learn with Credly. This is similar to real-time sync but the recipe processes all the courses present in Docebo Learn.
Each course is processed separately.
- Trigger
- This recipe should not be started, instead it should be run manually from the recipe editor. It is triggered automatically every five minutes if started.
- Calls to other recipes
Assign Credly badge for Course Additional Field element
This recipe is responsible for retrieving the selected course additional field from the user completed course by calling Retrieve course additional field from Docebo LMS. It retrieves the corresponding badge template details from the Credly Badge Templates lookup table for the retrieved course additional field value and calls Assign Credly badge to users to assign the badge to users in Credly.
If this recipe is called by Batch Sync - Docebo to Credly, Retrieve enrolled users by course ID is called to retrieve the enrolled user from the course.
- Trigger
- Triggered via function call
- Calls to other recipes
Assign Credly badges for Learning Plans
This recipe is responsible for retrieving the Learning Plans associated with the course by calling Retrieve Learning Plan from Course.
It filters the retrieved learning plan retrieved using Filter learning plans retrieved from course and calls Assign Credly badge to users to assign the badge to users in Credly.
If this recipe is called by Batch Sync - Docebo to Credly, Retrieve enrolled users by course ID is called to retrieve the enrolled user from the course.
- Trigger
- Triggered via function call
- Calls to other recipes
Retrieve Certification Awards
This recipe is responsible for collecting all the certification awards from the Docebo platform.
- Trigger
- Triggered via function call
- Calls to other recipes
Retrieve Learning Plan from Course
This recipe is responsible for retrieving all the learning plans associated with the course based on the course_id
input and sending the retrieved learning plan details as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Filter learning plans retrieved from course
This recipe is responsible for filtering the retrieved learning plans from course by mapping it with the Credly Integration Mappings lookup table with the filter IsActive
set to true
.
The filtered learning plans are then sent as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Retrieve enrolled users by course ID
This recipe is responsible for retrieving the enrolled user from a course. The users enrolled to the course with the status completed, who have also completed the course on or after the BATCH_SYNC_START_DATE
provided in the integration-settings lookup table will be retrieved for processing. The retrieved user list is then sent as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Assign Credly badge to users
This recipe is responsible for assigning the respective Credly badge to the users. Before assigning the badge to the user, the badge template is filtered using Filter unassigned badge templates.
If this recipe is called by Assign Credly badges for Learning Plans then the badge templates for the user completed learning plans are retrieved using Retrieve Credly batch template ids for user completed LPs.
- Trigger
- Triggered via function call
- Calls to other recipes
Filter unassigned badge templates
This recipe is responsible for filtering unassigned badge templates to users by checking if the user has already been assigned with the badge templates in the Credly environment. It then sends the filtered badge templates as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Retrieve Credly batch template ids for user completed LPs
This recipe is responsible for retrieving the respective badge template IDs from the Credly Integration Mappings lookup table for the user completed learning plans. The retrieved badge template ID list is then sent as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Process certifications
This recipe processes the certification awards issued in the Docebo platform.
- Trigger
- Triggered via function call
- Calls to other recipes
Issue Badge in Credly
This recipe is responsible for issuing a badge to the user in the Credly environment.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Revoke badge in Credly
This recipe revokes a badge from the user in the Credly environment.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Replace badge in Credly
This recipe is responsible for replacing a user's badge in the Credly environment.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Credly to Docebo synchronization recipes
Event Dispatcher - Credly to Docebo
This recipe implements the real-time synchronization from Credly to Docebo.
Just like the recipe Event Dispatcher - Docebo to Credly, to configure this recipe, you will need to add a webhook in Credly. In Docebo Connect, locate the Event Dispatcher - Credly to Docebo recipe and press the ellipsis button. In the resulting drop-down menu, press Edit recipe.
Next, in the recipe editor, locate and click the trigger, this entry that calls the webhook. In the resulting slide-in menu, locate the webhook URL and press the Copy button to copy the URL to the clipboard.
Next, move to Credly and press the Developers entry in the left menu, then press the Webhooks tab. Paste your webhook URL into the Callback URL field and make sure that the following items are selected:
badge.created
badge.deleted
badge.state.changed
badge_template.changed
badge_template.deleted
Finally, press the Save button.
- Trigger
- Triggered in real-time via webhook
- Calls to other recipes
Batch Sync - Credly to Docebo
This recipe is responsible for retrieving all the entries from the Credly Integration Mappings lookup table with IsActive
set to true
. It then processes the entries per entry retrieved by calling the sub recipe Credly badge retrieval.
- Trigger
- This recipe should not be started, instead it should be run manually from the recipe editor. Triggered automatically every five minutes if started.
- Calls to other recipes
Retrieve lookup table values
This recipe is used to retrieve the configurations present in the integration-settings lookup table.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Credly badge retrieval
This recipe is responsible for retrieving all the issued badges from the Credly environment and processing the badges.
- Trigger
- Triggered via function call
- Calls to other recipes
Process Credly events
The recipe is responsible for processing the events retrieved from Credly. The flow is as follows:
- Retrieve the user details from Docebo Learn based on the user email address from Credly.
- It is not processed if the user with the specified email address is not present in Docebo.
- Checks if the badge assigned in Credly is not created by Docebo to Credly Sync.
- It is not processed if the badge was assigned by Docebo to Credly Sync flow
- Checks if IsActive is set to true in the Credly Integration Mappings lookup table for the badge template of the assigned badge.
- Process the badges based on the actions performed in Credly.
- Process the badges based on the actions performed in Credly.
- Trigger
- Triggered via function call
- Calls to other recipes
Retrieve user details from Docebo LMS using user mail id
This recipe is responsible for retrieving the user details from Docebo based on the user email address from Credly. It then sends the retrieved details as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Check if badge not issued through Docebo to Credly Sync
This recipe is responsible for checking if the badge issued in Credly is assigned by Docebo to Credly Sync flow. It checks if the issue learner ID from Credly is the same as that of the Docebo user ID and then sends a flag as output to the triggering recipe.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Create/Update/Delete external training for user
This recipe is responsible for creating a new external training if the badge is assigned in Credly or for updating the external training if the external training is already present in Docebo or for deleting the external training, if present in Docebo and if the badge has been revoked in Credly. Specifically, it checks for the existence of the external training in Docebo and, if present, and the badge status is revoked, calls Delete External Training assigned to user. Otherwise, if the external training is present in Docebo and the badge status in Credly is replaced, it calls Update External Training assigned to User. If the external training is not present in Docebo, it creates an external training associated with the badge in the Credly Integration Mappings lookup table.
- Trigger
- Triggered via function call
- Calls to other recipes
Delete External Training assigned to user
This recipe is responsible for deleting the external training from Docebo based on the provided external training ID input.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Update External Training assigned to User
This recipe is responsible for updating the existing external training in Docebo. It checks if the badge is being replaced by the same badge template and if it is being replaced by the same badge template then it updates the external training in Docebo with the updated details. Otherwise, if it is being replaced by a different badge template then Delete External Training assigned to user is called.
- Trigger
- Triggered via function call
- Calls to other recipes
Create/Update/Delete Certifications for user
This recipe is responsible for the creation, update and deletion of certifications for the user in Docebo based on the actions performed in the Credly environment.
- If a badge is issued, the certification will get awarded
- If a badge is replaced, the certification will get updated
- If a badge is revoked, the certification will get revoked
Before awarding the user with the certification a check is made to see the existence of the certification in Docebo by calling the Check certifications awards existence sub recipe.
If the certification is already present in Docebo:
- If the badge is issued or replaced in the Credly environment, the certification award will get updated
- If the badge is revoked in the Credly environment, the certification award will get revoked
If the certification is not present in Docebo:
- If the badge is issued or replaced in the Credly environment, the certification award will get awarded
- Trigger
- Triggered via function call
- Calls to other recipes
Check certifications awards existence
This recipe is responsible for checking if the certification is already awarded to the user.
- Trigger
- Triggered via function call
- Calls to other recipes
-
- None
Process badge created/updated events
The recipe retrieves the event details from Credly and processes the events.
- Trigger
- Triggered via function call
- Calls to other recipes