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!
We have assignments that involve the provision of feedback by students to their teacher, and subsequently the teacher, after seeing the students' feedback, provides feedback for the student via a pdf file they attach to the submission in the Speedgrader window.
I know that we can easily download all the student submissions in one folder, and see any comments in the 'Assignment Comments' window via the Gradebook, but is there a way to download all the teacher's assignment feedback attachments in one folder?
I realise this might be difficult as this feedback can be provided via a file attachment, audio, or video file, but it would be very useful for us to do be able to so.
Solved! Go to Solution.
It's possible by using Canvas GraphQL, you can use the following query at yourschool.instructure.com/graphiql
This query will output download links for all submission comments (Of all students, it's also possible to filter by one or several students) within a course. You can then use this tool to extract all the URLs from the result: https://www.browserling.com/tools/extract-urls
Change "Enter_course_id_here" to the course id (e.g. https://yourschool.instructure.com/courses/3451 )
query SubmissionComments {
course(id: "ENTER_COURSE_ID_HERE") {
submissionsConnection {
nodes {
submittedAt
commentsConnection {
nodes {
comment
attachments {
_id
displayName
id
url
}
mediaObject {
mediaDownloadUrl
}
}
}
}
}
}
}
It's possible by using Canvas GraphQL, you can use the following query at yourschool.instructure.com/graphiql
This query will output download links for all submission comments (Of all students, it's also possible to filter by one or several students) within a course. You can then use this tool to extract all the URLs from the result: https://www.browserling.com/tools/extract-urls
Change "Enter_course_id_here" to the course id (e.g. https://yourschool.instructure.com/courses/3451 )
query SubmissionComments {
course(id: "ENTER_COURSE_ID_HERE") {
submissionsConnection {
nodes {
submittedAt
commentsConnection {
nodes {
comment
attachments {
_id
displayName
id
url
}
mediaObject {
mediaDownloadUrl
}
}
}
}
}
}
}
Jerry - can I adjust it so it only downloads video comments from a specific assignment? Thanks for the resource!
Yes, you can specify the assignment ID in the following query. This query will only output media (video/audio) attachments
query SubmissionComments {
assignment(id: "ENTER_ASSIGNMENT_ID_HERE") {
name
submissionsConnection {
nodes {
commentsConnection(filter: {allComments: true}) {
nodes {
mediaObject {
title
mediaSources {
url
}
}
}
}
}
}
}
}
excellent! thank you, Jerry.
Thanks Jerry but I don't see us implementing GraphQL
I'm also not sure if the above would give me what I need.
You say "This query will output download links for all submission comments", but I don't want the comments - I actually want the files that were attached as assignment feedback attachments.
Would your method achieve this?
Yes, that is exactly what it does. GraphQL is available to all hosted Canvas, if your Canvas instance is hosted by Instructure, you can access it at https://YOURSCHOOL.instructure.com/graphiql
GraphQL is available to all hosted Canvas. if not, you might want to contact your CSM.
Yes, it will output download links for all attached feedback files.
@jerry_nguyen : I'll check it out - thanks!
Thanks again for the suggestion.
I tried it and it worked but in the end with our small cohorts, its comparably quick for the TA to go through the speedgrader and download the files that way
To interact with Panda Bot in the Instructure Community, you need to sign up or log in:
Sign In