To Our Amazing Educators Everywhere,
Happy Teacher Appreciation Week!
Found this content helpful? Log in or sign up to leave a like!
One of our users recently reported inconsistencies between the grades in our service (Squarecap) and what's been uploaded to Canvas. For context, Squarecap is a stand-alone classroom response system that uses the Canvas REST API for roster syncing, grade upload etc.
I've dug into the REST calls (described below) and it looks like what we're uploading is different from what's being displayed.
Assignment Creation:
"method": "PUT"
"canvas_host": "https://*****.instructure.com"
"api": "api/v1/"
"url": "courses/*******/assignments/*******"
"data": "{
'assignment[name]': ******,
'assignment[assignment_group_id]': *******,
'assignment[notify_of_update]': False,
'assignment[points_possible]': '8',
'assignment[grading_type]': 'points',
'assignment[published]': True
}"
Grade Upload:
"method": POST
"canvas_host": "https://*****.instructure.com"
"api": "api/v1/"
"url": "courses/*******/assignments/*******/submissions/update_grades"
"data": "{
...
'grade_data[XYZ][posted_grade]': '4.00'
...
}"
Result: Student with ID XYZ received a 6, not a 4.
Our API integration with Canvas has been used in production for about 8 years old at this point and has been updated only occasionally over the years. We've never had an issue like this reported before. Has anyone else come across this?
To participate in the Instructure Community, you need to sign up or log in:
Sign In