[API] Request - Put Submission "Missing" Property

Problem statement:

I suppose this is more of a feature request than a question because I already know that the Submissions endpoint on the Canvas API does not currently take put requests on the submission's Missing property.

Why would I want to do this through the API anyway? The trouble—and I've seen this discussed elsewhere many times—is that Canvas does not mark missing submissions as "Missing" automatically if the assignment uses an external tool.

For example, if I have an individual assignment on Canvas that uses an LTI integration with a tool like Norton's InQuizitive, I can set a due date for the Canvas assignment, but when that date passes and students have not submitted/done the activity, their submission does not get marked missing unless a grader like me goes through the gradebook and manually marks them as missing. That is super-tedious and leads to hundreds of unnecessary clicks and wasted time, eye-strain, and wrist-strain throughout a grading period.

So my thinking was that until this issue gets solved—which may be never—why not at least be able to do it through the API? I've already written scripts to put the late_assignment_policy property to "none" for submissions that are less than 2 days late (I allow my students to submit work late "penalty free" if they submit it within 48 hours of the official due time). That script has saved me loads of time. Being about to likewise put the Missing property to $true through the API would likewise save a ton of time, wrist, and eye strain. There we go. That's my feature request for the year.

 
Proposed solution:

Allow more PUT mechanisms in submissions endpoint so we can automate more grading activities. In this case, particularly, allow the API to edit the submission object's "missing" property through a payload like this: { "submission": { "missing": true } }

 
User role(s):

instructor

5 Comments
jhenry0302
Community Explorer
Author

@jerry_nguyen helped me solve this over at my original question here (https://community.canvaslms.com/t5/Canvas-Question-Forum/API-Request-Allow-RESTful-API-to-PUT-Submis...).

Turns out we can use the late_policy_status property to do what I want to do.

 { "submission": { "late_policy_status": "missing" } }

RaviKoll
Instructure
Instructure
Status changed to: Added to Theme
 
nathanatkinson
Community Team
Community Team
Status changed to: New
 
nathanatkinson
Community Team
Community Team
Status changed to: New
 
nathanatkinson
Community Team
Community Team
Status changed to: Open