Best Answer

Ability to manually set a learner's "Course First Access Date" when editing a course enrollment

  • 22 March 2023
  • 2 replies

Userlevel 2
Badge +1

Hi, I'm wondering if there is a way to set a user's "Course First Access Date" for a course when manually editing a course enrollment to "In Progress" or "Completed" for a learner.

I noticed when manually editing an enrollment for a learning the "Course First Access Date" is not populated in reporting. I can understand why by default this would not update on the user record as it could be potentially tied to our “monthly active user” count. 

We have a potential scenario where we may need migrate user status “In Progress” and “Completed” to a new course version. For our reporting and tracking purposes we also need to migrate the "Course First Access Date" for each record. Does anyone know if this is possible either thru the UI, the API, or with Docebo’s assistance?




Best answer by dave.cerrone 4 April 2023, 14:55

View original

2 replies

Userlevel 7
Badge +8

pretty sure that since this is a time-based element in the database, it cannot be modified; like the enrolment date

Userlevel 2
Badge +1

Working with Docebo Support I confirmed “Course First Access Date” can be updated via the API. Using the Docebo API Explorer [Learn / Enrollment / Update enrollment of users to courses (Multiple update)].


You’re slightly limited using the browser in that you can’t bulk update unique dates for each user.

You can however bulk update unique dates creating a script and using an external tool such as Postman to make the API call. See additional details below:

I consulted my senior colleagues and learned that you can run a script via an external tool such as Postman to call the PUT/learn/v1/enrollments/{course_id}/{user_id} API endpoint multiple times for each user and unique date you want to set.
If anyone in your organization knows how to script, you can run a script via Postman to call the API.
A resource we could provide for that is this for reference. Apologies, further details on how to implement it would be beyond our scope of support.
The best solution is this API endpoint POST/learn/v1/enrollment/batch which lets you create as large of an array of enrollments as you want, with an individual course/username/other fields needing to be set for each element in the array.
You can then set the "completion_date" and "active_from"/"enrollment_date" fields with this endpoint for each imported enrollment along with other fields