Ability to pull User Progress via API
How can I pull user Progress via the API? When I try yo use GET /d2l/api/le/(version)/(orgUnitId)/content/userprogress/, I get a 404 back.
Regarding , 'Finally, note that the back-end service may not have all the Brightspace
functionality enabled to provide access to all the APIs contained in this API
reference documentation. If you attempt to make an API call to an action for
which the underlying supporting functionality has not been enabled, your call
can result in a 404 status code.'
How can I determine if this is enabled?
Is there a way to pull other (non course related) User data such as Last Login?
Answers
-
Hi Randy,
I looked at the API documentation and look at the following- Users can query about their own progress through content.
- Auditors can query about the progress for users they audit.
- Users with permission to see progress for all users over org units (for example, instructors for course offering org units) may be able to query about progress for all users enrolled in those org units.
Are you enrolled in the course as a user or instructor?
-
I am trying to pull data via the API for reporting purposes. The API user is a superuser.
A search for Content Progress in the documentation leads me to a call which only works as an unstable version. This call seems to pull only current totals and does not allow filtering based on time (such as a specific quarter).
I am trying to pull data like given in the Datahub → Data Sets → Content Progress
I think the only option is to use the datahub calls. Looking into that now.
-
Hi, did you get to solve the issue?
-
I got a message back from support saying they found an error in the UserProgress API endpoint and had sent it to their developers. It has been over a year ago and no update. Basically they told me it is listed as unstable and they do not have an ETA on it becoming stable.
In the end, I cobbled together API calls to the DataHub to create a job, looped calls until the job was done, downloaded the job product, then imported the CSV into my db. I then setup a CRON job to have this happen daily to collect the previous day's data.Hope this helps.