Community

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
cassidy_vela
New Member

Accessing the override_grade Data from the API

Jump to solution

I recently created a process to pull final grades from Canvas to then import into our antiquated SIS. I'm using the enrollment object to access the grades for each student. However, some instructors have used the new override grades feature. In the API documentation under Enrollments, it shows override_grade as a piece of data in the enrollment object. However, when I pull an enrollment from the API that has an overridden grade in Canvas, this attribute, nor any other relating to overrides, does not appear.

The GraphQL documentation provided to me by a support rep (https://community.canvaslms.com/docs/DOC-17210-final-grade-override-graphql#jive_content_id_Run_Query) was helpful but it only allowed me to change the overridden grade. This page says that grade override data can only be accessed through GraphQL. This document also said that I needed to "change the enrollment ID to be the enrollment ID of the student whose override score you would like to view." I did this through my graphiql instance of Canvas, but it only returned NULL and erased the override grade I had set from within Canvas for that enrollment.

Anyone have suggestions or knowledge of GraphQL to impart to a complete newbie? Any help is greatly appreciated, as I really don't like running individual exports of those select few courses that use this override feature.

Labels (2)
1 Solution

Accepted Solutions
cassidy_vela
New Member

Another update from Canvas Support. Override Grade shows up in the Enrollment API call if your grading period has "Display totals for All Grading Periods option" enabled. Now, if a student has an overridden grade, it shows up as expected.

View solution in original post

0 Kudos
2 Replies
cassidy_vela
New Member

Here's an update from Canvas support. Apparently, if you use GraphiQL to set the override grade, THEN it shows up when you pull the enrollment using the API. However, any changes done in the grades section of the Canvas GUI do not connect to this. Ex: I set a C for a student using GraphiQL and it showed in the API pull. Then, I manually changed it to a B+ using the grade book. The API pull for that enrollment still showed a C for override_grade.

cassidy_vela
New Member

Another update from Canvas Support. Override Grade shows up in the Enrollment API call if your grading period has "Display totals for All Grading Periods option" enabled. Now, if a student has an overridden grade, it shows up as expected.

0 Kudos