Found this content helpful? Log in or sign up to leave a like!

Mapping Canvas Student Number (e.g. Student 1, Student 2) to submitted papers in SpeedGrader

Jump to solution
NickRiches
Community Explorer

Hi. I am supporting a colleague who did marking based on the descriptors in speedgrader (Student 1, Student 2). When they deanonymised they found it impossible to link their comments to the students. According to them, the script corresponding to "Student 1" is now no longer the first script in SpeedGrader. I believe they did things this way because they needed to send some scripts to an external examiner, and this seemed the best way to do it. I've downloaded submissions data via the API (endpoint  /api/v1/courses/{course_id}/assignments/{assignment_id}/submissions). Can I be certain that this preserves the original Student 1, Student 2 order? Can I reconstruct the Student 1, Student 2 order from the time submitted?

 

Thanks

JSON shown below...

 

 

{
"id": XXXXX,
"body": null,
"url": null,
"grade": null,
"score": null,
"submitted_at": "2025-04-28T00:17:38Z",
"assignment_id": XXXX,
"user_id": XXXX,
"submission_type": "online_upload",
"workflow_state": "submitted",
"grade_matches_current_submission": true,
"graded_at": null,
"grader_id": null,
"attempt": 1,
"cached_due_date": "2025-04-28T15:00:00Z",
"excused": null,
"late_policy_status": null,
"points_deducted": null,
"grading_period_id": null,
"extra_attempts": null,
"posted_at": null,
"redo_request": false,
"custom_grade_status_id": null,
"sticker": null,
"late": false,
"missing": false,
"seconds_late": 0,
"entered_grade": null,
"entered_score": null,
"has_originality_report": true,
"turnitin_data": {
"attachment_1619140": {
"similarity_score": 6,
"state": "acceptable",
"attachment_id": 1619140,
"report_url": "/courses/XXXX/assignments/XXXX/lti/resource/7940e9a4-a511-49e2-9808-5d3e229e5790?display=borderless",
"status": "scored",
"error_message": null,
"created_at": "2025-04-28T00:17:40Z",
"updated_at": "2025-05-12T15:29:27Z"
}
},
"attachments": [
{
"id": 1619140,
"folder_id": 176896,
"display_name": "XXXXXXXX.docx",
"filename": "XXXXXX.docx",
"uuid": "BzINIFaIJd0hZ3GnMoNStvmYABHux5VaHQkDOeDy",
"upload_status": "success",
"content-type": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"size": 42810,
"created_at": "2025-04-28T00:17:38Z",
"updated_at": "2025-06-10T15:17:55Z",
"unlock_at": null,
"locked": false,
"hidden": false,
"lock_at": null,
"hidden_for_user": false,
"thumbnail_url": null,
"modified_at": "2025-04-28T00:17:38Z",
"mime_class": "doc",
"media_entry_id": null,
"category": "uncategorized",
"locked_for_user": false,
"preview_url": "/api/v1/canvadoc_session?blob=%7B%22moderated_grading_allow_list%22:null,%22enable_annotations%22:true,%22enrollment_type%22:%22admin%22,%22anonymous_instructor_annotations%22:false,%22submission_id%22:3076640,%22access_token%22:null,%22instfs_id%22:null,%22user_id%22:101970000000026402,%22attachment_id%22:1619140,%22type%22:%22canvadoc%22%7D&hmac=e90f5e3476ce2d3c7ee62ebe60b5aa1579439185"
}
],
"submission_comments": [],
"anonymous_id": "RR5jZ"
},
Labels (1)
0 Likes
1 Solution
Gabriel33
Community Participant

I am not sure I understand the problem. You don't need to rely on the order to deanonymize.

"user_id": XXXX should match to the student name by calling GET /api/v1/users/:user_id/profile or, if you have only course level permissions, GET /api/v1/courses/:course_id/users/:id

View solution in original post