Skip to main content

Dear community,

 

Can you please help me to figure the best way how to retrieve user learning plan data by API?

 

I need information on user learning plan progress and how many courses from each learning plans are passed. 

 

Learning plan progress I can retrieve by: /learningplan/v1/learningplans/enrollments 

But is it possible to get the review of user all enrolled learning plans courses progress ?

 

API: /learningplan/v1/learningplans/4/courses/enrollments allows to do it but only for one learning plan at the time, which is not optimal for me. 

 

Or at least, I need to know how many courses each learning plan has, so I can calculate the number of  completed courses knowing progress percentage. 

 

Thank you for the advice in advance!

So you could go the route of knowing the number of courses and guessing, use the GET /learn/v1/lp/{lp_id}

However, might have a different route to go for you. For some things like this I build a report in Docebo that does a better job of getting the information you need, and then use the report API to pull in the current version/groupings.


Thank you @Bfarkas for the reply!

I also started my investigation from the report option, but faced some limitations such as:

  • no possibility to dynamically filter report by API calls.
  • no possibility to create report that will list some aggregated information, for instance, list me all created learning plans and number of courses in each. 

Even if I return user courses with statuses, I do not see to which learning plan each course belongs to. 

   

Maybe I missing something here, but it is a really a big gap in Docebo APIs. 


Yeah, so from your description I assume you are doing a lot of bulk tracking here. I agree some of those pieces are definitively missing, combined with the API calls per hour limitation, ended up the reports route to basically get bulk data, then convert it into a JSON feed so you can program any of those filters you want. For the “what courses are in the LP”, ended up with basically a separate lookup table that gets updated when curriculum gets updated so it is also signed and approved, were doing the independent lookup I posted previously, but it ends up being so repetitive and wasteful.


Reply