Bulk Edit Assignment Due Dates for District Using API

Community Participant


Due to issues our district is experiencing with grade sync from Canvas to Infinite Campus, we are planning to move from the daily sync to an "end of the semester" sync for all assignment data. 

Why? Because we have rolling enrollment for our school or students have a schedule change, we have constantly changing course start dates.

Currently, the grade passback is not working because we have students with course enrollment dates after assignment due dates. Example: Assignment was due Sept. 3rd, student course enrollment is Sept. 4th. Teacher syncs grades and we receive the error:

"ASSIGNMENT_SCORES_EXPORT - c606db49-8731-492a-b3a6-85d47fc8a865 - Cannot export Canvas submission in section xxxxx assignment xxxxx for student sxxxxx - Cannot export Canvas submission because student enrollment date is after assignment due date"

After Infnite Campus, Canvas, and Kimono support spent weeks troubleshooting, the conclusion is that we cannot use Grade Sync AND keep our due dates the way we need them. 

How do we use due dates? Assignments are not open all semester. Assignments are open for a window of time for general education and for those students receiving special education services including time and a half or double time as an extended time accommodation, the due date for those students must be just that; time + half or 2x that of the original due date. 

Intended solution? If we do not sync grades throughout the semester, we can differentiate due dates as needed. After the semester ends for assignment completion, the plan is to use API to bulk edit all assignment due dates to one date, at the end of the semester, so that grades will sync without the course enrollment date being an issue.

The problem? I am not a code writer at all. I have barely been scratching the surface of the possibilities by using simple calls such as cross-listing or changing section settings. Those are pretty straight forward. I feel like Postman and I have an understanding that we can "get er' done" as long as we KISS (keep it simple sally). 

This script: https://canvas.instructure.com/doc/api/assignments.html#method.assignments_api.bulk_update is WAAAAY out of my tiny wheel-house. I got as far as adding this in Postman and knew I was in WAY over my head. So I am reaching out to the Canvas Community to see if anyone has made this work for their institution and would take me under their wing?

Oh! Did I mention how many courses I want to edit? Only about 6,000 courses with all their assignments per course. Yep, no pressure. 😎

Bulk Edit Assignment Due Date.png


Thank you for reading all my words!

Michelle Blackwell


Georgia Cyber Academy

Home of over 12,000 students


Labels (3)