The Instructure Community will enter a read-only state on November 22, 2025 as we prepare to migrate to our new Community platform in early December. Read our blog post for more info about this change.
Found this content helpful? Log in or sign up to leave a like!
We frequently run into a situation where our SIS data is unable to remove a student from a course.
This happens because we allow teachers the ability to create sections within courses. To remove a student from a course they must deleted from every section that they are in -- and because the manually-created sections used by the teachers are not known to the SIS, the SIS can't remove them from those sections (leading to disenrollment failures).
For instance, we recently had a student "mregan8" who needed to be deleted from a course; the SIS_ID of the course was 202610-UG-DWC-201-012. I sent the following record in the enrollments.csv:
course_id,root_account,user_id,role,role_id,section_id,status
202610-UG-DWC-201-012,,mregan8,student,,,deleted
but the student remained in the course because of their association with a manually-created section.
What I would like is to have the ability to include a wildcard section_id (e.g. an asterisk) in the enrollments.csv section_id field. This would indicate to the Canvas SIS process that the system should disenroll the student from all sections AND the course:
course_id,root_account,user_id,role,role_id,section_id,status
202610-UG-DWC-201-012,,mregan8,student,,*,deleted
In this way the SIS would have the ability to control the enrollment in the course authoritatively, regardless of what the teacher does.
Let me know if there is a more appropriate group for this suggestion? I also mentioned this at the Unconference for InstructureCon 2025 though neglected to post until now -- please comment!
Thanks for listening!
PS: Some might say that you could always upload an enrollments.csv via the GUI and check "Override UI changes." The problem with this approach is that there may be manual changes that we want (e.g. teachers enrolling other teachers manually to their courses), and the "Override UI changes" checkbox would undo those changes.
The problem that I'm hoping to solve is the inability of the SIS to force disenrollment when a "sticky" change has been made. The only approach I can think of in the absence of this enhancement request would be to a) download a Provisioning Report for the term, b) find any enrollment entries for students that should be dropped, c) manually create a disenrollment file for those changes, and d) process -- though again, those section enrollments are likely considered "sticky" and wouldn't be processed anyway.
Thanks for your consideration of this enhancement request!
Community helpTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign inTo interact with Panda Bot, our automated chatbot, you need to sign up or log in:
Sign in