Draft rubric-aligned feedback on new Canvas submissions
Every weekday evening, a first draft of criterion by criterion feedback is waiting in SpeedGrader for you to edit and approve.
Every weekday at 6pm, on a cron trigger, draft rubric-aligned feedback on new Canvas submissions so I only have to review and approve rather than write from scratch.
Start with Canvas List Courses to get my active courses, then use List Assignments on each course. Only work on assignments that have a rubric attached, and skip the rest.
For each of those assignments, call List Assignment Submissions with include of user, submission_comments, and rubric_assessment. Keep only the submissions that are submitted but not yet graded. Skip any submission that already has a comment from an instructor, since that means a human has already started on it. Cap the whole run at 40 submissions so each evening's batch stays reviewable.
Before drafting anything, pull the context for the assignment: Get a Single Assignment for the instructions and description, and Get a Single Rubric for the criteria, their descriptions, and their rating levels.
Then read the student's actual submission and write feedback organized by rubric criterion. For every criterion, name one concrete strength and one concrete improvement, and quote the student's own work where it helps them see exactly what I mean. Keep it specific to what they wrote. No generic praise and no advice that would apply to any essay.
Post the draft using Canvas Grade or Comment on a Submission with the comment text field only. Never set a grade and never fill in a rubric assessment. I remain the decision maker: the draft simply waits in SpeedGrader for me to edit, adjust, and decide the score myself.
Finish with a Slack Bot Send a Message to me telling me how many feedback drafts are waiting for my review, broken down by course and assignment.
Example output
Additional information
What does this prompt do?
- Finds submissions that are in but not graded yet across your courses, and skips anything an instructor has already commented on
- Reads each submission against the assignment instructions and the rubric you already attached to it
- Writes feedback for every rubric criterion, naming one concrete strength and one concrete improvement and quoting the student's own work
- Posts it as a comment only, never a grade, then messages you in Slack with how many drafts are waiting for review
What do I need to use this?
- A Canvas account with teacher or TA access to the courses you want covered
- Assignments that already have a rubric attached in Canvas
- A Slack workspace where you want the end of day heads up
How can I customize it?
- Change the timing. Every weekday at 6pm is the default, but nightly or twice a week works just as well.
- Narrow the scope to specific courses or assignment types instead of everything you teach.
- Adjust the batch size or the feedback style, such as asking for more than one strength per criterion or a warmer tone for first year students.
FAQs
Does this grade my students?
Will students see the draft before I have reviewed it?
What if I already left a comment on a submission?
Does it work with the rubrics I already use?
How many submissions does it handle at once?
Related templates
Every weekday, find every unpaid JobNimbus invoice, email each customer one reminder that gets firmer as it ages, and post a receivables summary to Slack.
Every weekday at 7am, your active courses are checked for missing work, silent logins, and slipping grades, with a ranked list sent to your advising channel.
Every hour, find the tickets closest to breaching, leave a nudge on each one, and post a ranked at-risk list to your support channel.
Every weekday afternoon, each student who is behind gets a warm, personal message in their Canvas inbox listing exactly what they owe.
Every Monday at 8am, see exactly which assignments have work waiting, sorted worst first, posted to Slack and logged to a spreadsheet.
Every weekday morning we compare your password vault against your HR records and suspend access for anyone who has already left.
Stop writing feedback from a blank box.
Let a first draft be waiting on every ungraded submission, so your evening is review and approve instead of write from scratch.