Grade
course_grade_change
Definition: The event gets emitted anytime any of the course scores are changed for a student.
Trigger: Triggered when anything (a user or asynchronous job) updates the final_score, course_score, unposted_current_score, or unposted_final_score columns in the scores table in the database.
Payload Example:
{
"metadata": {
"root_account_uuid": "44fJ44GgJ29gJBsl43JLKgljsBIOTsbnKT48932g",
"root_account_id": "10000000000001",
"root_account_lti_guid": "794d72b707af6ea82cfe3d5d473f16888a8366c7.canvas.docker",
"user_login": "oxana@instructure.com",
"user_account_id": "10000000000002",
"user_sis_id": null,
"user_id": "21070000000000001",
"time_zone": "America/Denver",
"context_type": "Course",
"context_id": "21070000000000002",
"context_sis_source_id": "194387",
"context_account_id": "21070000000000003",
"context_role": "TeacherEnrollment",
"request_id": "98e1b771-fe22-4481-8264-d523dadb16b1",
"session_id": "242872453a9d69f7ccddeb4788d22506",
"hostname": "oxana.instructure.com",
"http_method": "POST",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
"client_ip": "93.184.216.34",
"url": "http://oxana.instructure.com/courses/2/gradebook/update_submission",
"referrer": "http://oxana.instructure.com/courses/2/gradebook/speed_grader?assignment_id=39&student_id=2",
"producer": "canvas",
"event_name": "course_grade_change",
"event_time": "2019-12-11T16:26:34.552Z"
},
"body": {
"user_id": "2",
"course_id": "2",
"workflow_state": "active",
"created_at": "2019-12-04T13:32:21Z",
"updated_at": "2019-12-11T16:26:34Z",
"current_score": 17.31,
"old_current_score": 13.46,
"final_score": 12.5,
"old_final_score": 9.72,
"unposted_current_score": 17.31,
"old_unposted_current_score": 13.46,
"unposted_final_score": 12.5,
"old_unposted_final_score": 9.72
}
}
Event Body Schema
Field | Description |
---|---|
user_id | The Canvas user ID of the student. |
course_id | The Canvas ID of the course. |
workflow_state | The state of the score record in the database, could be "active" or "deleted". |
created_at | The time when the row in the scores table (representing the course grade) was created. The score row is created as a result of some grade calculation, even if there are not yet any graded submissions for a student, i.e. when a student is enrolled in the class. |
updated_at | The time when the row in the scores table was last updated -- that is, when the event is emitted. |
current_score | The user's current score in the class. |
old_current_score | The user's current score in the class before it was changed. This field will not be available until a student submits the first assignment in the class. |
final_score | The user's final score for the class. |
old_final_score | The user's final score for the class before it was changed. This field will be set to 0.0 until a student submits the first assignment in the class. |
unposted_current_score | The user's current grade in the class including unposted assignments. |
old_unposted_current_score | The user's current grade in the class including unposted assignments, before it was changed. This field will not be available until a student submits the first assignment in the class. |
unposted_final_score | The user's final grade for the class including unposted assignments. |
old_unposted_final_score | The user's final grade for the class including unposted assignments, before it was changed. This field will not be available when a student submits the first assignment in the class. |
grade_change
Definition: The event is emitted anytime when a submission is graded. These can happen as the result of a teacher changing a grade in the gradebook or speedgrader, a quiz being automatically scored, or changing an assignment's points possible or grade type. In the case of a quiz being scored, the grade_change
event will be emitted as the result of a student turning in a quiz, and the user_id
in the message attributes will be the student's user ID.
Trigger: Triggered anytime a grade is created or modified.
Payload Example:
{
"metadata": {
"client_ip": "93.184.216.34",
"context_account_id": "21070000000000079",
"context_id": "21070000000000565",
"context_role": "TeacherEnrollment",
"context_sis_source_id": "2017.100.101.101-1",
"context_type": "Course",
"event_name": "grade_change",
"event_time": "2019-11-01T19:11:05.222Z",
"hostname": "oxana.instructure.com",
"http_method": "POST",
"producer": "canvas",
"referrer": "https://oxana.instructure.com/courses/565/gradebook",
"request_id": "1dd9dc6f-2fb0-4c19-a6c5-7ee1bf3ed295",
"root_account_id": "21070000000000001",
"root_account_lti_guid": "VicYj3cu5BIFpoZhDVU4DZumnlBrWi1grgJEzADs.oxana.instructure.com",
"root_account_uuid": "VicYj3cu5BIFpoZhDVU4DZumnlBrWi1grgJEzADs",
"session_id": "ef686f8ed684abf78cbfa1f6a58112b5",
"time_zone": "America/Denver",
"url": "https://oxana.instructure.com/api/v1/courses/565/assignments/355/submissions/48?include%5B%5D=visibility",
"user_account_id": "21070000000000001",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
"user_id": "21070000000000987",
"user_login": "oxana@example.com",
"user_sis_id": "456-T45"
},
"body": {
"assignment_id": "21070000000000355",
"grade": "5",
"grader_id": "21070000000000987",
"grading_complete": true,
"muted": false,
"old_grade": "4",
"old_points_possible": 1,
"old_score": 4,
"points_possible": 1,
"score": 5,
"student_id": "21070000000000048",
"student_sis_id": "ABC.123",
"submission_id": "21070000000011086",
"user_id": "21070000000000048"
}
}
Event Body Schema
Field | Description |
---|---|
assignment_id | The Canvas id of the assignment associated with the submission. |
grade | The new grade. |
grader_id | The Canvas id of the user making the grade change. Null if this was the result of automatic grading. |
grading_complete | The boolean state that the submission is completely graded. False if the assignment is only partially graded, for example a quiz with automatically and manuall... |
muted | The boolean muted state of the submissions's assignment. Muted grade changes should not be published to students. |
old_grade | The previous grade, if there was one. |
old_points_possible | The maximum points possible for the previous grade. |
old_score | The previous score. |
points_possible | The maximum points possible for the submission's assignment. |
score | The new score. |
student_id | Same as the user_id. |
student_sis_id | The SIS ID of the student. |
submission_id | The Canvas id of the submission that the grade is changing on. |
user_id | The Canvas id of the user associated with the submission with the change. |
grade_override
Definition: The event is emitted anytime a student course grade is overriden. Typically grade override feature is used to edit student course grade
Trigger: Triggered when the final grade override has been changed. Only triggered when the override changes the existing score.
Payload Example:
{
"metadata": {
"client_ip": "93.184.216.34",
"context_account_id": "21070000000000001",
"context_id": "21070000000000123",
"context_role": "TeacherEnrollment",
"context_sis_source_id": "194837",
"context_type": "Course",
"event_name": "grade_change",
"event_time": "2019-11-15T07:46:18.697Z",
"hostname": "oxana.instructure.com",
"http_method": "POST",
"producer": "canvas",
"referrer": "https://oxana.instructure.com/courses/123/gradebook/speed_grader?assignment_id=8188213&student_id=3541",
"request_id": "392c325f-cba1-423f-ad2c-d213cabce732",
"root_account_id": "21070000000000001",
"root_account_lti_guid": "V3kdo4kgu3F4Kf4fK109DSFkdso432950GKSOJNj:canvas-lms",
"root_account_uuid": "V3kdo4kgu3F4Kf4fK109DSFkdso432950GKSOJNj",
"session_id": "4e032912e321a243163232941f435324",
"time_zone": "America/Los_Angeles",
"url": "https://oxana.instructure.com/courses/46/gradebook/update_submission",
"user_account_id": "21070000000000001",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.103 Safari/537.36",
"user_id": "21070000000003541",
"user_login": "oxana",
"user_sis_id": "0119359"
},
"body": {
"score_id": "43",
"enrollment_id": "44",
"user_id": "45",
"course_id": "46",
"grading_period_id": "47",
"override_score": 90,
"old_override_score": 85,
"updated_at": "2019-11-15T07:46:18.697Z"
}
}
Event Body Schema
Field | Description |
---|---|
score_id | Canvas Id of Score record |
enrollment_id | Canvas Id of Employment record |
user_id | Canvas Id of User attached to this enrollment |
course_id | Canvas Id of Course attached to this enrollment |
grading_period_id | Canvas Id of Grading Period |
override_score | New value of score after override |
old_override_score | Previous value of score before override |
updated_at | Date/Time the override occurred |