API: Download all assignment submissions?

lsloan
Community Participant

Does the Canvas API provide an entry for downloading all submissions for an assignment as a single file?  I see that's available in the Canvas UI.  Instructors can click a link to download all submissions as a single ZIP file.

I maintain a program that occasionally needs to download all submissions for specific assignments.  Sometimes the course size is large (1800+ students).  Downloading each submission takes at least two HTTP requests.  When all/most of the students of a large course make submissions for an assignment, then that means 3600+ requests are being made.  This can take several minutes to complete (I timed it at 18+ minutes one time).

I've looked through the Canvas Live API for an entry to download all submissions, but I didn't find one.  Does anyone know if such a thing exists?

Bonus:  This goes along with an earlier question I asked about getting submissions as PDF.  If it were possible to download all assignment submissions as PDFs in a single ZIP file, that would be even better.

0 Likes