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!
Hi,
I have courses where a certificate for that course is valid for a period of 5 years. After that, the student must go over it like it is starting from 0.
I did not find any way of doing it. Please advise.
You can assume that we do not need historical records if it is a problem and the student must use the same login (same user in Canvas). Also, we can use API if it's required.
With regards
Solved! Go to Solution.
It is difficult for people to understand that which they have not experienced or been exposed to. What you are saying does not make sense to me from the perspective of a long-time Canvas user and what I'm telling you probably doesn't make sense to you because it's not the way you do things. While I have a lot of experience using Canvas, I don't have much experience with rolling enrollments. From what I've gathered, even open-entry, open-exit courses are not designed to be repeated for credit a second time.
My point is that what you're asking for isn't doable the way you want to do it. Maybe it's time to expand and look at other ways of doing it. Years ago, we had a lot of people in the Community that would come from another learning management system and they had engrained in their brain things must be done this way because that's the way [my other LMS] does it. They had forgotten that it's not how they would do things if left to their own devices, the other LMS way had become the only way to do it because they had used it for so long. Canvas was a different system, with design influenced by pedagogy and data. Even now, I know someone who teaches with both Canvas and that other LMS who is always complaining about how difficult it is to set up the course each semester in the other LMS because of all the things they make you do. Something about not being able to show that assignment exists (so students know what to expect) without allowing students to begin those assignments (without putting a password on it). In Canvas, you just set a date that says it's not available until a certain date.
The idea is that how you do things, perhaps because that's the way you've always done things and don't know any differently, may not be the best way of doing things. Whether it's the best way or not, it's definitely not the Canvas way of doing things. If you want to use Canvas and Canvas doesn't do things exactly the way you want, then you adapt how you do things so that you can do them Canvas. The Canvas way of doing what you want is to create a separate course and put the repeater in that course.
What I suggested has nothing to do with a strict point in a 5 year period. New courses can be created whenever. You can keep people in the old one or put them in the new one. You can have the same person enrolled in both courses (some of our students end up retaking the same course at different time periods). The only problem (it can be worked around) is transferring grades from one to the other if you move them out of one and into another.
Once certification has been met, it sounds like you don't access the information in Canvas anymore. You modify your internal requirements for certification to pull from the new class if the certification is older than five years. Call it a "recertification" course (I'm not sure how many courses there are) if it helps keep things straight. I would suggest naming it with a year, either for the SIS code or in the name of the course itself. "Recertification" is not very forward thinking because in 10 years you'll need a re-recertification course.
Here is an example from our institution.
We have a Canvas orientation course that all students must complete. We've had seven or so of them over the years., revising them every few years. Once a student completes one of them, they are certified for life and never need to complete it again. However, I store the date of the completion, so if I wanted to write the logic to make them complete it again if it had been more than five years (or if they had not taken courses for a couple of years), I could. But they would be put into the current version, not the old version. We revise and update the course periodically, so the current one would be less than five years old, so they would be placed into a new course not the one that they had already completed.
You could create a new course once a year and put new people into it. Or you could make a new course once every couple of years. Keep monitoring the old one for completions, but enroll people in the new one.
Canvas wasn't designed to have a course that everyone gets dumped into forever. It was designed that you create a new course when there is a new group of students. They make it really easy to copy content from one course to another.
Every now and then people ask about how to remove old students and put new students so they can keep the same course and the overwhelming advice from the Community (those who use Canvas on a regular basis) is not to do things that way, but create a new course.
Getting student's work erased so the same user login can retake the same content in the same course is so far from the way that Canvas is designed that it is likely a boutique request. Math and science teachers have been trying to get better quizzing for years, but we're not mainstream enough for Canvas to tackle it. They shoot for the middle 60% and those at the top end or bottom end have to be creative in their solution.
Canvas' argument is that you should be creating new courses. And what you're writing about an internal system doesn't preclude that.
It's going to be a lot quicker solution to create a new course and modify your code to check that one than it will be to get Canvas to erase the grades for former students.
About the only way I can think of that you might be able to wipe someone out is to contact your CSM and have them do back-end database magic to wipe specific students from the database completely. Even then, I'm not sure that they would be able to do it, it might require custom services ($$). They are going to ask "Why don't you just create a new course and put them in that?" The simpler solution that is consistent with Canvas design is to start a new course.
And most would argue that your life would be easier if you did that on a regular basis anyway as content needs updated and it's easier to manage courses with fewer students in it.
If you have a course where you continually update content, you could use it for information but then have people complete the quizzes in another course and recreate that course on a regular basis. For example, once our students complete the orientation, we move them into a course that has the content but none of the quizzes of the orientation.
You could do something similar to this if they have a need for the content after leaving the course. Create a new certification course periodically. Put people in there. Once they are complete, they get moved out of it into a course that still has the information available as a resource. Then, if they ever need to recertify, then they are placed into a new course for the assessment portion.
That still involves another course, created at least every five years. Wiping grades and having them start over from the beginning in the same course just isn't the way Canvas handles things.
Canvas is all about grade preservation to make sure no information is lost. That is the complete opposite of what you want to do.
There is no way to reset the grades or make a student retake the entire course when they have already completed it. Removing the student and re-enrolling them will reconnect to the existing submissions and grades.
There are two ways I know of that you can make a student start over.
You can decide which of these works best for you.
We use the first one. We really don't want to create new logins as that is confusing and our other systems are really set up to only handle one ID per student. There are benefits to having fewer enrollments in more courses rather than trying to put everyone into a single course over a long period of time. Canvas is faster responding with fewer enrollments if you ever need to go into the course. If there are dates, those are easier to manage -- although I heard something about Canvas working on rolling enrollments. If it's an automated class with no due dates, then it may not matter. The downside is that if we ever need to look up information, we have to track when students enrolled and go to a specific course, but that information is available in our other systems since that's what put it into Canvas in the first place.
@James
Thank you for answering.
Unfortunately, neither option is suitable for us.
Our SIS can have 1 User ID from Canvas saved on the student records.
Also, our system has internal course and class management so we track certifications as those are rolling enrollments (students can register at any time of year) and there is no strict point in a year for 5 5-year valid period of certification. For that reason creating new classes is not a viable option.
Any other suggestions?
Thank you.
It is difficult for people to understand that which they have not experienced or been exposed to. What you are saying does not make sense to me from the perspective of a long-time Canvas user and what I'm telling you probably doesn't make sense to you because it's not the way you do things. While I have a lot of experience using Canvas, I don't have much experience with rolling enrollments. From what I've gathered, even open-entry, open-exit courses are not designed to be repeated for credit a second time.
My point is that what you're asking for isn't doable the way you want to do it. Maybe it's time to expand and look at other ways of doing it. Years ago, we had a lot of people in the Community that would come from another learning management system and they had engrained in their brain things must be done this way because that's the way [my other LMS] does it. They had forgotten that it's not how they would do things if left to their own devices, the other LMS way had become the only way to do it because they had used it for so long. Canvas was a different system, with design influenced by pedagogy and data. Even now, I know someone who teaches with both Canvas and that other LMS who is always complaining about how difficult it is to set up the course each semester in the other LMS because of all the things they make you do. Something about not being able to show that assignment exists (so students know what to expect) without allowing students to begin those assignments (without putting a password on it). In Canvas, you just set a date that says it's not available until a certain date.
The idea is that how you do things, perhaps because that's the way you've always done things and don't know any differently, may not be the best way of doing things. Whether it's the best way or not, it's definitely not the Canvas way of doing things. If you want to use Canvas and Canvas doesn't do things exactly the way you want, then you adapt how you do things so that you can do them Canvas. The Canvas way of doing what you want is to create a separate course and put the repeater in that course.
What I suggested has nothing to do with a strict point in a 5 year period. New courses can be created whenever. You can keep people in the old one or put them in the new one. You can have the same person enrolled in both courses (some of our students end up retaking the same course at different time periods). The only problem (it can be worked around) is transferring grades from one to the other if you move them out of one and into another.
Once certification has been met, it sounds like you don't access the information in Canvas anymore. You modify your internal requirements for certification to pull from the new class if the certification is older than five years. Call it a "recertification" course (I'm not sure how many courses there are) if it helps keep things straight. I would suggest naming it with a year, either for the SIS code or in the name of the course itself. "Recertification" is not very forward thinking because in 10 years you'll need a re-recertification course.
Here is an example from our institution.
We have a Canvas orientation course that all students must complete. We've had seven or so of them over the years., revising them every few years. Once a student completes one of them, they are certified for life and never need to complete it again. However, I store the date of the completion, so if I wanted to write the logic to make them complete it again if it had been more than five years (or if they had not taken courses for a couple of years), I could. But they would be put into the current version, not the old version. We revise and update the course periodically, so the current one would be less than five years old, so they would be placed into a new course not the one that they had already completed.
You could create a new course once a year and put new people into it. Or you could make a new course once every couple of years. Keep monitoring the old one for completions, but enroll people in the new one.
Canvas wasn't designed to have a course that everyone gets dumped into forever. It was designed that you create a new course when there is a new group of students. They make it really easy to copy content from one course to another.
Every now and then people ask about how to remove old students and put new students so they can keep the same course and the overwhelming advice from the Community (those who use Canvas on a regular basis) is not to do things that way, but create a new course.
Getting student's work erased so the same user login can retake the same content in the same course is so far from the way that Canvas is designed that it is likely a boutique request. Math and science teachers have been trying to get better quizzing for years, but we're not mainstream enough for Canvas to tackle it. They shoot for the middle 60% and those at the top end or bottom end have to be creative in their solution.
Canvas' argument is that you should be creating new courses. And what you're writing about an internal system doesn't preclude that.
It's going to be a lot quicker solution to create a new course and modify your code to check that one than it will be to get Canvas to erase the grades for former students.
About the only way I can think of that you might be able to wipe someone out is to contact your CSM and have them do back-end database magic to wipe specific students from the database completely. Even then, I'm not sure that they would be able to do it, it might require custom services ($$). They are going to ask "Why don't you just create a new course and put them in that?" The simpler solution that is consistent with Canvas design is to start a new course.
And most would argue that your life would be easier if you did that on a regular basis anyway as content needs updated and it's easier to manage courses with fewer students in it.
If you have a course where you continually update content, you could use it for information but then have people complete the quizzes in another course and recreate that course on a regular basis. For example, once our students complete the orientation, we move them into a course that has the content but none of the quizzes of the orientation.
You could do something similar to this if they have a need for the content after leaving the course. Create a new certification course periodically. Put people in there. Once they are complete, they get moved out of it into a course that still has the information available as a resource. Then, if they ever need to recertify, then they are placed into a new course for the assessment portion.
That still involves another course, created at least every five years. Wiping grades and having them start over from the beginning in the same course just isn't the way Canvas handles things.
Hi @TanjaP
For recurring certification requirements, our system decided to use Bridge rather than Canvas, since it's specifically designed for that type of situation. Bridge used to be an Instructure product, but is not owned by Instructure any longer as far as I know: https://www.getbridge.com
Hi @mzimmerman,
Thank you for the suggestion. We will investigate it but it will be a very painful process of switching to the new system as teachers and students are used to Canas and all assignments and uploads are integrated with our internal SIS (this will need to be done from the start).
First I need to see if they have API and then further.
Thank you.
Hi @TanjaP
We do still use Canvas for all our standard courses. Bridge is just used for recurring compliance training.
Hi @mzimmerman,
well, ALL of our classes are like that :(.
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