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). This enhanced and comprehensive functionality introduced major changes in your platform, mainly aimed at making the definition and the management of classroom and webinar courses more flexible.
This article lists the changes introduced by this feature enhancement and lists the APIs that have been updated, deprecated and developed for the new management.
Learn more on the migration of webinar courses as ILT courses in the dedicated article of the Knowledge Base and in the article collecting the most frequently asked questions.
Classroom and Webinars Sessions in the Same Course
With the old management of classroom courses and webinars, it is not possible to mix webinars and classroom sessions in a single course. You can either define a classroom course or a webinar. If you need to turn a classroom course into a webinar, you have to perform multiple steps: create a brand new course, duplicate all of the sessions from the original course to the new course and finally enroll users in the new sessions.
Thanks to the new management of classroom courses and webinars, you can define whether an event in a session (called session date in the old management of classroom courses and webinars) is either a webinar or a classroom event. Thanks to this flexibility, you can combine both types of events in a single course session and to switch the event type on the go when needed (as an example, turn a classroom event into a webinar) without re-creating the session from scratch, and without re-enrolling all of your learners.
Instructors’ Enrollments
In the old management of classroom and webinars courses, instructors had to enroll or be enrolled in the course with the Instructor level. The instructor enrollment counts as any other user enrolled in the course (also in the max quota calculation) and a seat is reserved for every instructor enrolled in the course.
With the new management of classroom courses and webinars, instructors are either assigned to the session or to the event without being enrolled in it, saving seats for learners. In addition, you can assign an instructor either to a session or to an event:
- Session Instructor. If you assign an instructor to a session, he or she will be automatically assigned to all of the events included in the session and will be able to mark the attendance for all of the events in the session and set whether the participants have passed them or not. In this scenario, the instructor will be able to create and update the training material for the course. We are currently working on the possibility to associate training material to sessions, keep an eye on the Product Updates page to know when this feature will be released.
- Event Instructor. If you assign an instructor to a single event within a session, he or she can mark the attendance for the learners attending that specific event but will have no control over the other events nor on the session. In this scenario, the instructor will neither be able to upload nor to manage the training material assigned to the course.
Reports
The new management of instructor enrollments for classroom courses and webinars has an impact on reports, since the instructors assigned to those types of courses are counted as enrolled users in the old webinar management, and their enrollments are no longer be considered as such with the new management. Here is how enrollments are now counted, in different scenarios:
- New Custom Reports. For those using new custom reports, in order to grant data consistency, by default reports keep counting the instructors assigned to the course as enrolled users, but you can use a dedicated option to either show them or not in the report (Show only users with learner as user course level option, in the User Options subsection of the Filters tab). By default, this option is not enabled, and instructors are counted as enrolled users. If you enable the option, instructors will not be counted as enrolled users and will not be shown in the report. The new custom reports impacted by this change are:
- Users - Courses
- Users - Course Enrollment Time
- Users - Webinar Sessions
- Users - ILT Sessions
- Groups/Branches – Courses
- Users - Training Material
Instead, in the Courses – Users custom reports, the Show only users with learner as user course level option is enabled by default (and instructors are not shown in the report), but you can disable the option when you need to include the instructors in your report.
In detail, the following changes have been made in the User-Courses, Users - ILT Sessions and the Users - Webinar Sessions new custom reports:
-
- Users - Courses:
- Filters tab > Enrollment area > the section name changed from Enrollment Status to Course Enrollment Status
- View Options tab > Report Fields area > Enrollment Fields section > the Enrollment Status field has been renamed as Course Enrollment Status
- In Preview and Download (both CSV and XLS format), the Enrollment Status option has been renamed as Course Enrollment Status. It represents only course enrollments and does not include session enrollments.
- Users - Courses:
-
- Users - ILT Sessions and Users - Webinar Sessions
- Filters tab
- In the Enrollment area, the section name changed from Enrollment Status to Session Enrollment Status
- The Not Started option is now called Enrolled
- The Waiting List option is now called Waiting Users
- View Options tab
- In the Report Fields area, Enrollment fields section, the Enrollment Status option name has been renamed as Course Enrollment Status
- There are four new available options: Session Enrollment Status, Session Enrollment Date, Completion Date, and Session Completion Date
- In Preview and Download (both CSV and XLS format)
- the Enrollment Status label has been renamed as Course Enrollment Status. It represents only course enrollments and does not include session enrollments.
- The new column Session Enrollment Status shows the session enrollment status as in the ILT course management in Course Management area.
- Filters tab
- Users - ILT Sessions and Users - Webinar Sessions
- Old Custom Reports and Dashboards. Since the current management of custom reports will be deprecated in the near future, Docebo will not perform any enhancement in this area, nor in the platform dashboards, in order to manage the new enrollments counting method for instructors. As an example, if Course A has 20 users enrolled, including 2 instructors, after the new management of classrooms and webinars is released, the number of enrollments shown in these reports will be decreased to 18. The old custom reports impacted are:
- Users - Courses
- User - Session
- Users - Course Enrollment Time
- Courses - Users
- Groups - Courses
The dashboards impacted by this change are:
-
- User personal summary, Statistics tab, Courses tab, Classrooms tab, Learning Plans tab
- Courses Dashboard
- Branches Dashboard
We suggest you migrate to the new custom reports in order to take advantage of this new counting method, as well as of all the other features included in this enhanced experience. Find out more.
The new management of enrollments is currently available for ILT courses, but not for e-learning courses. The instructors of e-learning courses are still counted as enrolled users. However, as for the new custom reports, the Show only users with learner as user course level option is available for all course types, webinar and classroom (new ILTs) and e-learning too.
Additional Fields for Courses
Starting on January 26, 2021, and up to when the migration of webinar courses is over, the course additional fields created with the Webinar Sessions option will only be available for the webinar sessions of the courses having the Webinar (Deprecated Soon) course type. The course additional fields created with the ILT Sessions option will be available both for webinars and classroom sessions created for courses having the ILT ( Instructor-Led Training) course type. The course additional fields created with the Webinar Session option will be removed with the monthly release of February 2022, planned for February 23, 2022.
New User Interface
With the old management of classroom courses and webinars, the course area dedicated to sessions and enrollments is combined in a single tab.
With the new management of classroom courses and webinars, the user interface dedicated to the management of sessions and enrollments has been redesigned and split into two dedicated tabs. Thanks to this new view, you will get clear details on both types of data with a glimpse.
Migration
Find out more about the migration in the Webinar Courses Migration to VILT Courses KB article.
Glossary
Here follows a short glossary for the terms that used in the new management of classroom courses and webinars.
- Event: it is the new name for session date. An event can either be a webinar or a classroom session.
- ILT (Instructor-Led Training): it identifies classroom courses in the old management of classroom courses. In the new management of classroom courses and webinars, this term will identify both webinars and classroom courses, since both course types are led by instructors.
- Webinar (deprecated soon): this term identifies the webinar course type after phase one of the porting. Don’t worry, everything is working as usual, but start using the ILT (Instructor-Led Training) course type also for webinars, as soon as possible.
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 more 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.