- 4 Minutes to read
- Print
- DarkLight
- PDF
Webhooks
- 4 Minutes to read
- Print
- DarkLight
- PDF
Webhooks: A Powerful Integration Tool
What are Webhooks?
Webhooks in Xperience allow you to inform a remote service (another LMS, or an LXP) in real time of the creation/modification/deletion of several objects, such as training courses, sessions or registrations.
How do Webhooks work?
Configure Webhooks: Set up webhooks to monitor specific events, such as:
Creation, modification, or deletion of training courses and sessions.
Learner registration and updates.
Changes to learner registration thresholds.
Define Trigger Events: Specify the conditions that will trigger a webhook, such as:
Creation of a new training session.
Updating learner registration statuses.
Reaching a specific registration threshold for a training session.
Specify Target URL: Provide the URL of the external system or service that should receive the webhook notification.
Send Data: When a trigger event occurs, Xperience sends an HTTP request to the specified URL, including relevant data such as:
Training course and session details
Learner information
Registration status and thresholds
Key Benefits of Webhooks:
Real-time Synchronization: Keep external systems up-to-date with the latest information from Xperience.
Enhanced Efficiency: Automate manual data entry and reduce the risk of errors.
Increased Flexibility: Integrate with a wide range of external systems and services.
Improved Collaboration: Foster seamless collaboration between different teams and tools.
Leverage Webhooks to Optimize Your Training Operations
By effectively utilizing webhooks, you can streamline your training processes, improve data accuracy, and enhance overall efficiency.
Create a new webhook
Open the menu : Settings > System > Webhooks

New Webhook
Click on the link NEW WEBHOOK
Note: You must first activate the privilege for webhook access for a user to be able to modify webhooks.
Enter the following configuration fields:
Name: (mandatory field)
Description
Domain(s): select one or more domains the webhook is assigned to. If you do not select a domaine, all domains will be selected by default.
URL: The URL which is called when the subscribed event is called (mandatory field).
Secret token: enter this field to implement an authentication when the URL is called.
Check the boxes for events for which you wish to set up a webhook.
Training:
New training
Modification of a training
Deletion of a training
Session:
Modification of registrations
Cancellation of a session
New session
Modification of a session
Deletion of a session
Registration:
Cancellation of a registration
New registration
Modification of a registration
Deletion of a registration
Booking:
New booking
Modification of a booking
Deletion of a booking
Click on the button Test URL to test if the URL is taken into account.
Click on the Save button to create/modify the webhook.
Modify a webhook
Open the menu : Settings > System > Webhooks
Click on the webhook you want to modify. If necessary, run a search for this webhook by entering a name or part of a name in the Search by name field. The webhook page opens.
Modify the fields and check or uncheck the event subscriptions as required. For more information on these fields, please see the above section.
Click Save.
Deactivate or reactivate a webhook
Deactivate a webhook
Click on the ACTIVE tab above the list of webhooks.
Click on the kebab menu to the right of a webhook and select Deactivate.
Reactivate a webhook
Click on the INACTIVE tab above the list of webhooks.
Click on the kebab menu to the right of a webhook and select Activate.
Please note that is not currently possible to delete a webhook.
Use case webhooks #1 view mutualized training courses and sessions
If your learners have the option of registering for a course from several platforms, it's important to know which courses and which sessions of that course are actually mutualized.
Finding out if a course is mutualized or not
When we open a training form, we can see whether or not it is mutualized (registrations can be made from more than one platform).
The course is either already mutualized or it is mutualisable.
Mutualized training - some rules
When creating a new course, all courses can be mutualized.
A course set to “no” can always be changed to “yes”.
A “yes” course can only be changed to “no” if the course is not attached to a shared session. In other words, as soon as there is a mutualized session, the “mutualized” course can no longer be changed to “no”.
Use case webhooks #2 - manage registrations for external session registrations
For each mutualized training session, you can list the sessions (via the Sessions tab) and display the number of external registrations (registrations from another LMS for example).
When the sessions are synchronized between Xperience and another LMS, you may have registrations from another LMS if the sessions mutualized.
To know in real time the number of available places on a session, you need to know the number of registrations from this other LMS. This information is modified through an oData API that tracks and returns session details.
When a registration is made from another LMS on a session synchronized with Xperience, it calls the oData API to update the number of external registrations. As such, the number of available places is always up to date in Xperience. The entity called is …/odata-api/TrainingSessions. A check is made to ensure the IsMutualized property is set to “true” and that the number of registrations is also returned.
"IsMutualized": true,
"ExternalRegistrationCount": 1,
When registrations are made from within Xperience, a webhook can be run to inform the other LMS to take this information into account.