Register for InstructureCon25 • Passes include access to all sessions, the expo hall, entertainment and networking events, meals, and extraterrestrial encounters.
Found this content helpful? Log in or sign up to leave a like!
What do you mean by "Category Grades"? Do you mean the grades of an Assignment Group?
The column names you provided aren't very meaningful, as they will be different based on the assignments that you have in your course, and even on the sorting and filtering that you may have on your gradebook.
From the API, you can get assignment grades, as well as the gradebook history/change log, both of which can tell you the current assignment grades for each student.
But neither of those give you the assignment group grades.
To get those using the API, you would need to calculate them on your end after calling the grades in the API (you can get the assignment group information -both the assignments that belongs to the group as well as the group weights- using the Assignment Groups API, and then the assignment grades using, for example, the submissions data from the Gradebook History API).
To ask for any changes and new API endpoints, the old process is to submit an idea: How do I create a new idea in the Instructure Comm... - Instructure Community - 2986
But this process is undergoing changes, and it's not clear when Instructure will have a new way of listening to users requests: Turning Your Feedback into Better Prioritization a... - Instructure Community - 637959
Hello Gabriel33,
Yes, I mean grades by assignment group grades.
Right, I understand I can calculate them but I want that data point from Canvas end so I don't have too. Too prone to user error.
Thanks,
Alex
Right, as far as I can tell, getting assignment group grades (or the Final) grade does not seem possible via the API, and to request it, you'd need to propose an idea as mentioned earlier, or wait until Instructure announces the new feature request system.
But by following the network requests when downloading the gradebook CSV, it might be possible to replicate in a script.
It first sends a POST request to /courses/[course_ID]/gradebook_csv with a JSON listing the assignment IDs, the students (both of which would likely need to be extracted using the API) and some options.
Then it uses the API to get the progress of the CSV creation: /api/v1/progress/[fileID]
Then the API again to get the CSV download path: /api/v1/users/[userID]files/[anotherFileID]
Then it uses the link got in the last step to download the file.
Would be easier to do with the API, but might still be feasible.
To interact with Panda Bot in the Instructure Community, you need to sign up or log in:
Sign In