API Call to check the names/emails/usernames of users enrolled in Courses


Badge

Can someone provide the API Call to extract the names/emails/usernames of users enrolled in particular Courses?

We need to this to set up a database for a ID card company to extract these details from Docebo to provide the users access via ID cards..


11 replies

Userlevel 7
Badge +5

You’ll want Manage > User … this particular endpoint has a “minimal” option that you should explore.

Userlevel 7
Badge +3

Hmm, I think in this case I would go one of two routes:

  1. Try this endpoint, /course/v1/courses/{id}/enrollments,
    course > Courses > Returns enrollments associated to the given course
    This one lets you plug in one course Docebo ID and get list of enrollments and their details back.
  2. Use Reports: You could instead build out a report if you had multiple courses or wanted more restrictions built into it, i.e. all users except certain branches. You could then use the API to call the report details.
Badge

@Bfarkas- Can you please explain the second step in details, extracting the report is fine but how can I then use API?

Userlevel 5
Badge +2

@arnab.duttagupta2022  If you are asking how to find the course ID to be able to use it in the API, this KB article tells you how to find it in the url. Don’t let the title of the article fool you,scroll down to the section labeled “Retrieving the course ID and the session ID"

https://help.docebo.com/hc/en-us/articles/9298423851794-Enrolling-users-in-courses-and-sessions-using-CSV-files

Userlevel 7
Badge +3

@Bfarkas- Can you please explain the second step in details, extracting the report is fine but how can I then use API?

First, important to note that these were not two steps, but two unique and seperate approaches. The first one lets you use only the API, but is one call per course. The second one you configure a new report with the settings you want for it, then you don’t have to export it, you simply use the API to tell it to refresh and to call the current data within the report directly. Theres a bunch of writeups about this, you can start with the ones below:

https://community.docebo.com/integrations%2Dapis%2D45/report%2Dlisting%2Dapi%2D2308 

 

Badge

@Bfarkas - I hope you in the first option you meant this call right-

GET/learn/v1/enrollments/{id_course}/{id_user

Userlevel 7
Badge +3

@Bfarkas - I hope you in the first option you meant this call right-

GET/learn/v1/enrollments/{id_course}/{id_user

No, as you need to know the user already to use that one, look and follow the path of what I said above, you only need the course ID on that one and then it returns an array of the users enrolled in the course which I think is what you were asking for. Make sure to switch in the services menu to “course”  this one is not on the default learn service area

Badge

Yes I get your logic, completely makes sense however the call you are mentioning- I am not getting that call in sandbox or I am not understanding! For ILT sessions we have a similar call under ILT sessions?

Badge

I found it https://tuvr3.docebosaas.com/api-browser/#!/course/Courses/Courses_course_v1_courses_id_enrollments

 

Also I found the steps to your second suggestion by providing the Report ID which I created I can only extract by CSV however I want it in JSON file to help our vendor to get access to our Docebo enrollments for creating ID cards or is there any other way?

Userlevel 7
Badge +3

I found it https://tuvr3.docebosaas.com/api-browser/#!/course/Courses/Courses_course_v1_courses_id_enrollments

 

Also I found the steps to your second suggestion by providing the Report ID which I created I can only extract by CSV however I want it in JSON file to help our vendor to get access to our Docebo enrollments for creating ID cards or is there any other way?

For the report piece, there are multiple endpoints to get the output, sound slike you are using the ‘Export results as CSV’, you want ‘Get report results paginated’ which will be JSON:

 

 

Userlevel 5
Badge

If you want a dump of info to get started, then pull a report to make sure you get the correct info. You can include the course codes in the report. 

Then if you want to use the API you have the basic elements to call the enrollment status from the API call.

Reply