Instructor data downloads for student responses via an API

I would like to download the student problem responses for a course via an API.

I don’t see a ReST API to do this directly - is that correct?

Is there an API to initiate a download task (as would happen when a data download is requested in the Instructor tab of the course front end, using “Create a report of problem responses”)? Getting the student responses as a data download would be fine for my use case.

I have tried to use the endpoints that the front end uses, for example: https://example.com/courses/course-v1:edX+DemoX+Demo_Course/instructor/api/list_instructor_tasks, but the endpoint requires a CSRF cookie which implies that they are not intended to be used outside the front end?

My team has a pull request open to implement this exact functionality. We’d love if you could test it and provide feedback: Add OAuth2 support for problem response reports endpoints by pcockwell · Pull Request #24873 · edx/edx-platform · GitHub

More details are on the earlier version, which unfortunately was reverted as it may have had a bug: https://github.com/edx/edx-platform/pull/19635

Thanks @braden! What is holding up the PR? I t looks like some of the pipeline checks are failing, but I am not able to see the details. If I can, I would be happy to help to get this merged.

@xitij2000 is planning to rebase the PR very soon, and the failing tests should be gone once he does that. I think the main cause of delay is that we don’t yet understand if or how this PR may have caused the error that was seen last time it was deployed.

@braden is there a way to run these reports using manage.py or cimilar CLI utilities?

I’m not sure. You should be able to run ./manage.py lms help to get a list of available commands though.