Introduction
As of January 26, 2021, classroom courses and webinars have been merged into a single entity in your platform, called ILT (Instructor-Led Training). As outlined in the Transition to the New Management of Classroom Courses and Webinars article of the Knowledge Base, in order to help you in adopting the new courses management, the migration of webinar courses has been scheduled in three phases:
- Phase One - January 26, 2021: the management of webinar courses and the related enrollments, sessions, webinar tools associations, and instructors have been kept with the old experience, and their course type has been updated to Webinar (Deprecated Soon). We suggested you use the ILT (Instructor-Led Training) course type for the new webinars you are scheduling, as well as for the existing webinars, re-creating them from scratch.
- Migration Phase Two - February 3, 2022: starting from the weekly release of February 3, 2022, you have the opportunity to prepare your platform for the migration by mapping the course additional fields for webinars, thus entering the pre-migration phase. Once in the pre-migration phase, the Superadmin of your platform can manually migrate courses, one by one, or wait for the automatic migration (Migration Phase Three), starting on February 23, 2022. Please note that the possibility to enter the pre-migration phase or to proceed with the manual migrations of courses is not available for the platforms integrating with Salesforce.
- Migration Phase Three - Starting from February 23, 2022: the last phase of the migration impacts only the platforms where the migration has not been manually completed. This phase translates into courses having the Webinar (Deprecated Soon) course type being automatically migrated as ILT (Instructor-Led Training) courses. This phase will start on February 23, 2022, with a gradual migration on all platforms up to March 11, 2022. This means that on February 23, 2022, you may or may not see your courses migrated. If you don’t see them migrated, don’t panic! More than likely, we’ve scheduled the migration on your platform at a later date.
This document provides detailed information about the second phase of the migration process, taking into account any possible implications and describing how the migration will be carried out.
Course Details
The course ID of the migrated courses will remain unchanged as well as all of the course properties, advanced properties, and the association with the training materials.
The links of the original courses will be kept so that if they were included in notifications already sent to users they will still be valid.
Courses’ Enrollments
The enrollments and the tracking related to the migrated courses will not be altered, both at training material and at the session time level.
Instructors’ Enrollments
With the new management of enrollments for instructors, instructors are either assigned to the session or to the event without being enrolled in it. In order to keep the number of enrollments of the migrated courses consistent:
- the instructors of the migrated courses will keep their enrollments, but their role will be switched to Tutor
- instructors with no session enrollment will be migrated as Waiting Users, the Superadmin will have to either confirm their enrollment or assign them as instructors for a session/event
Enrollment Deadlines
While the old management of webinars allowed to set the enrollment start and end date manually, this is no longer possible with the new experience.
Existing enrollment deadlines will be migrated as-is. After the migration, use the Days of Validity option to manage the enrollment duration for learners.
Sessions Details
Webinar sessions will be recreated as ILT sessions. The creation procedure will generate new sessions’ IDs, and it will not be possible to restore the original IDs. However, the migration will grant that the sessions’ links already distributed (for example, in notifications) will still be valid, and will redirect to the newly created links.
Any session widget configuration will remain unchanged.
Sessions’ Enrollments and Attendance
The enrollments and the attendance related to the migrated sessions will not be altered and will be migrated without changes. Webinar recordings will be migrated and data about whether a user completed the session live or through webinar recordings will be kept.
Sessions’ Dates
Webinar sessions’ dates will be migrated as webinar events of ILT courses, also called VILT (Virtual Instructor-Led Training) events.
Webinar Sessions’ Dates with Duration Crossing Midnight
While the old management of webinars allowed the scheduling of sessions duration crossing midnight, this option is no longer available with the new experience.
If the migrated courses include session dates having a duration crossing midnight, their timezone will be changed over the migration, in order to have those events starting and finishing within the same day. The event date will remain unchanged.
If the timezone change is not enough to keep the entire event within the same calendar day, the event end time will be set at 23:59.
Webinar Tools
The webinar tools selected for the sessions’ dates and their related settings will be migrated as they are in the migrated VILT events.
Please note that VILT events only support the newest versions of the webinar tools integrated with Docebo, and do not support the following integrations: Zoom V1, Adobe Connect V1, Webex V1, GoToMeeting V1 and BlueJeans.
The session dates configured with any deprecated webinar integration will be migrated as they are, and will still be available and accessible for learners. However, you will not be allowed to create any new VILT event using the above-mentioned deprecated integrations. Make sure you update the configuration of these sessions in order to use the newest version of webinar tools.
Join Button Options
The Join Button Options settings will be kept over the migration.
While with the old management of webinars, learners were allowed to join the webinar before instructors, this option is no longer available with the new experience. If the learner joining time of the migrated courses is earlier than the instructor joining time, the configuration will be kept over the migration, but you will be forced to re-arrange the joining time according to the new standard as you update the configuration of the migrated course, for any reason, after the migration.
User Unenrolled from Webinar Session Automation Condition
The User Unenrolled from Webinar Session condition of the Automation app will be deprecated, together with all of the rules configured with this condition.
Course Additional Fields for Webinars
Since January 26, 2021, the course additional fields created with the Webinar Sessions option are only available for the sessions’ dates of the courses having the Webinar (Deprecated Soon) course type.
Starting on February 2, 2022, you can map the Webinar Sessions additional fields so that they will be migrated according to your needs together with the Webinar (Deprecated Soon) courses. After mapping the Webinar Sessions additional fields, you can enter the pre-migration phase, as described in the following chapter.
Updated Webhooks Events
The following webhooks events will include a reference to the old webinar session ID for the migrated sessions, thanks to the new field migrated_webinar_session_id:
- ILT session deleted
- ILT session changed
- User enrolled in ILT session
- ILT session enrollment updated
- User unenrolled from ILT session
- ILT session attendance has been updated
- Ext Calendar ILT session changed
Pre-Migration
The pre-migration is aimed at freezing your activity on the courses having the Webinar (Deprecated Soon) Course Type, in order to make sure we are migrating all of the relevant data.
In order to enter the pre-migration phase, log in to your platform as the Superadmin at any time after February 2, 2022, and before February 23, 2022, access the Admin Menu from the gear icon in the top right corner of any platform page, and click on Course Management in the E-learning section. Click now on Go to Webinar Migration Area in the banner displayed on the top of the page.
Once on the Webinar Migration page, move to the Webinar Additional Fields Mapping tab, listing all of the Webinar Sessions additional fields defined in your platform.
For every additional field, select the migration method from the corresponding drop-down menu. The available options are:
- Migrate as New ILT Session Additional Field. Select this option to migrate the Webinar Sessions additional field as an identical ILT Sessions additional field. If the name of the migrated additional field is already in use by an existing ILT Sessions additional field, then the name of the migrated additional field will be migrated with a numeric suffix (_1), to distinguish it from the existing one. This option is the default one.
- Merge Values Into. When you select this option, select a destination ILT Sessions additional field with the same Field Type from the dropdown on the right, so that the values of the Webinar Sessions additional field will be migrated as values of the selected ILT Sessions additional field.
- Do Not Migrate (all values will be lost). Select this option not to migrate the additional field. When selecting this option, all the values of the additional fields will be lost, and you will not be able to retrieve them once you migrate the course.
When you have mapped all of the Webinar Sessions additional fields, or in case you have no Webinar Sessions additional field, you will automatically enter the pre-migration phase by clicking on Save and Proceed to Pre-Migration.
Once you enter the pre-migration phase you cannot go back. The Webinar Courses Migration tab will list all of the Webinar (Deprecated Soon) courses available for migration. From now on:
- you will no longer be able to create courses having the Webinar (Deprecated Soon) Course Type in your platform
- you will no longer be able to drag and drop the Webinar Sessions additional fields in the Additional Fields tab of the Course Management area in order to sort them
- you will no longer be able to map the Webinar Sessions additional fields
- you will no longer be able to create, edit or delete the Webinar Sessions additional fields
- you will no longer be able to edit or delete the ILT Sessions additional fields selected with the Merge Into option for the migration of the Webinar Sessions additional fields
Migration
Once you enter the pre-migration phase, move to the Webinar Courses Migration tab and proceed with the migration as follows:
- Manual Migration. Click on the ellipsis menu at the end of the webinar row and select Migrate. You cannot migrate courses with mass actions, only individual migrations are allowed.
- Automatic Migration. Starting from February 23, 2022, all of the courses having the Webinar (Deprecated Soon) Course Type will be massively migrated by an automated procedure. The Webinar Sessions additional fields not mapped by the said date will be migrated with the Migrate as New ILT Session Additional Field mapping mode (see the Pre-Migration chapter of this article)
When the migration starts, the status of all of the courses having the Webinar (Deprecated Soon) course type will be set as Under Maintenance to prevent learners from accessing them and potentially lose their tracking. When the migration is over, the status of the migrated course will be set back to its previous value.
The migration of every single webinar is recorded in the Audit Trail.
Post-Migration
When all of the courses having the Webinar (Deprecated Soon) course type are migrated, you will enter the post-migration phase. This phase lasts for two months after the migration in order to give you time to tune your interactions with webhooks and notifications. At the end of the post-migration phase:
Notifications
The following notification types will be deprecated, and the notifications including them will be removed:
- User waiting to be approved to a Webinar session
- User was approved into Webinar session
- User was declined from a Webinar session
- Users enrolled in Webinar session
- Users unenrolled from Webinar session
- Webinar session changed
- Webinar session created
- Webinar session deleted
- Webinar session starting
The ILT Event Starting notification will be available starting from February 3, 2022.
Webhooks
The following webhooks events will be deprecated, and removed from the webhooks using them (if the webhook is composed only by one or more of the following events, then the whole webhook will be removed):
- Webinar session changed - course.webinarsession.updated
- Webinar session created - course.webinarsession.created
- Webinar session deleted - course.webinarsession.deleted
- Webinar session attendance has been updated - webinar.date.attendance.updated
- Users enrolled from Webinar session - webinar.session.enrollment.created
- Users unenrolled from Webinar session - webinar.session.enrollment.deleted
- Webinar session enrollment has been updated - webinar.session.enrollment.updated
Reports
Reports including data on webinars will undergo the following changes:
- the Users - Webinar Sessions custom report will be deprecated as the migration of the courses having the Webinar (Deprecated Soon) course type is over. Any data related to the migrated courses will be made available in the Users - ILT Sessions new custom report
- when the migration is over, the Webinars tab of the User Personal Summary report will be removed and all of the data concerning the migrated courses will be available in the ILT (Instructor-Led Training) tab
- if you have still not migrated to the New Custom Reports, when the migration is over, instructors data will no longer be available in the following reports:
- Users - ILT Sessions
- Groups - Courses
- Users - Courses
- Courses - Users
APIs
This section lists the APIs involved in this transition, and how they will be managed.
APIs Deprecated on January 26, 2021
The APIs listed in the following table have been deprecated on January 26, 2021, when the new management of webinars and classroom courses was released.
API Description | API Verb | API URL |
---|---|---|
Delete a session enrollment | DELETE | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session} |
Retrieve a session enrollment | GET | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session} |
Create a session enrollment | POST | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session} |
Update a session enrollment | PUT | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session} |
Evaluate users within a session | PUT | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session}/evaluation |
Delete attendance of users within a session | DELETE | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session}/attendance |
Mark attendance of users within a session | POST | /learn/v1/enrollment/{id_course}/{id_user}/ilt/session/{id_session}/attendance |
APIs Partially or Totally Deprecated on February 2022
The APIs listed in the following table are to be considered as transitional APIs in use from January 26, 2021 (when the new management of webinars and classroom courses was released) up to the monthly release of February 2022, planned for February 23, 2022 (when the Webinar course type will be deprecated). After this period, Docebo will deprecate them.
API Description | API Verb | API URL | Notes |
---|---|---|---|
List classroom sessions | GET | /learn/v1/courses/{course_id}/classroom/session | The API structure will remain unchanged. The API will be updated to be compliant with the new management of webinars and classroom courses, but it will not show webinar related data. It will be deprecated at the end of February 2022. |
Create classroom sessions | POST | /learn/v1/courses/{course_id}/classroom/session | The API structure will remain unchanged. The API will be updated to be compliant with the new management of webinars and classroom courses, but it will not interact with webinar-related data. It will be deprecated at the end of February 2022. |
Update classroom sessions | PUT | /learn/v1/courses/{course_id}/classroom/session/{session_id} | The API structure will remain unchanged. The API will be updated to be compliant with the new management of webinars and classroom courses, but it will not interact with webinar-related data. It will be deprecated at the end of February 2022. |
Delete classroom sessions | DELETE | /learn/v1/courses/{course_id}/classroom/session/{session_id} | The API structure will remain unchanged. The API will be updated to be compliant with the new management of webinars and classroom courses, but it will not interact with webinar-related data. It will be deprecated at the end of February 2022. |
Retrieve session details | GET | /learn/v1/courses/{course_id}/ilt/session/{session_id} | The API structure will remain unchanged. The API will be updated to be compliant with the new management of webinars and classroom courses, but it will not interact with webinar-related data. It will be deprecated at the end of February 2022. Please note that if the session does not include events, the API will return no results. |
Enroll single user into course | POST | /learn/v1/enrollments/{course_id}/{user_id} | The API will be updated for retro compatibility. The API will allow you to enroll instructors also to webinars and classroom courses. The API update will be deprecated at the end of February 2022, but the API will be kept operational. |
Delete a user’ session enrollment | DELETE | /learn/v1/enrollment/{id_course}/{id_user}/session/{id_session} | The API will be updated for retro compatibility. This API will be modified in order to be able to delete instructors’ enrollment both whether they have been enrolled in the course or directly assigned with the new method. The API update will be deprecated at the end of February 2022, but the API will be kept operational. |
Joining or starting a webinar session's date | GET | /learn/v1/courses/{course_id}/session/{id_session}/date/{date}/join | Deprecated as no longer required. |
Updated APIs
The APIs listed in the following table have been modified either because of a structural or a behavioral change.
API Description | API Verb | API URL | Notes |
---|---|---|---|
Return enrollments list | GET | /learn/v1/enrollments | The API will be updated for retro compatibility. The API will show instructors as enrolled even if the enrollment is no longer needed for instructors. |
Create enrollment | POST | /learn/v1/enrollments | This API will no longer be able to enroll instructors in webinars and classroom courses since enrollments will no longer be needed. |
Update enrollment | PUT | /learn/v1/enrollments | This API will no longer be able to update instructor enrollments in webinars and classroom courses since enrollments will no longer be needed. |
Update single enrollment into course | PUT | /learn/v1/enrollments/{course_id}/{user_id} | This API will be modified to block user enrollments to classroom courses when the instructor enrollment level is provided. All other course/user level combinations will keep working as before. |
Delete enrollment in batch mode | DELETE | /learn/v1/enrollment/batch | This API will no longer be able to delete instructor enrollments in webinars and classroom courses since enrollments will no longer be needed. |
Create enrollment in batch mode | POST | /learn/v1/enrollment/batch | This API will no longer be able to update instructor enrollments in webinars and classroom courses since enrollments will no longer be needed. |
Duplicate enrollment | PUT | /learn/v1/enrollments/duplicate | This API will no longer be able to duplicate instructor enrollments in webinars and classroom courses since enrollments will no longer be needed. |
Retrieve course detail | GET | /learn/v1/courses/{course_id} | The API structure will be updated to reflect the new management of webinars and classroom courses. |
Retrieve sessions within a course | GET | /learn/v1/courses/{id}/sessions | The API structure will be updated to reflect the new management of webinars and classroom courses. |
New APIs
The New APIs table lists the new APIs available for the new management of webinars and classroom courses. These APIs are fully operational from January 26, 2021.
Please note that the following new APIs will include a reference to the old webinar session ID for the migrated sessions thanks to the new field migrated_webinar_session_id:
- GET/course/v1/sessions/{session_id}
- GET/course/v1/courses/{course_id}/sessions
- GET/learn/v1/courses/{id}/sessions
- GET /learn/v1/courses{course_id}?get_all_sessions=1
API Description | API Verb | API URL |
---|---|---|
Get all sessions | GET | course/v1/courses/{course_id}/sessions |
Create a new session | POST | course/v1/courses/{course_id}/sessions |
Get a session | GET | course/v1/sessions/{session_id} |
Update a session | PUT | course/v1/sessions/{session_id} |
Duplicate a session | POST | course/v1/sessions/{session_id}/duplicate |
Delete a session | DELETE | course/v1/sessions/{session_id} |
Get session's enrollments | GET | course/v1/sessions/{session_id}/enrollments |
Get all events | GET | course/v1/sessions/{session_id}/events |
Create a new event | POST | course/v1/sessions/{session_id}/events |
Evaluate users | PUT | course/v1/sessions/{session_id}/evaluate |
Get an event | GET | course/v1/events/{event_id} |
Update an event | PUT | course/v1/events/{event_id} |
Duplicate an event | POST | course/v1/events/{event_id}/duplicate |
Delete an event | DELETE | course/v1/events/{event_id} |
Get event's attendance | GET | course/v1/events/{event_id}/attendance |
Set user attendance | PUT | course/v1/events/{event_id}/attendance |
List all webinar tools configured in platform | GET | course/v1/tools |
Delete sessions enrollments in batch mode | DELETE | learn/v1/enrollments/sessions/batch |
Add instructors to session and events in batch mode | POST | course/v1/instructors/add |
Evaluate users in batch mode | PUT | course/v1/sessions/evaluate/batch |
Duplicate events in sessions in batch mode | POST | course/v1/events/duplicate/batch |
Mark users’ attendance in batch mode | POST | course/v1/events/attendance/batch |
Delete events in batch mode | DELETE | course/v1/events/batch |
Delete sessions in batch mode | DELETE | course/v1/sessions/batch |
Delete recording | DELETE | course/v1/events/{event_id}/recording |
Upload recording | POST | course/v1/events/{event_id}/recording |
Get recording status | GET | course/v1/events/{event_id}/recording |
Get recording | GET | course/v1/events/{event_id}/watch_recording |
Get Join URL | GET | course/v1/events/{event_id}/join_webtool |
For each new API, the list of parameters will be detailed in the Docebo API browser.