Admin Control to Lock Course Starts and Ends Dates

Canvas Admins need the ability to lock course Starts and Ends dates from teachers at the account level without using unsupported custom Java Script.
Heart Please show your Canvas Admin some love and VOTE UP now! Heart
Need more details?....then read on...
The Issue: Teachers and school administration need all students to have similar experiences. 


Here are four scenarios that occur without control of the Course Dates:


1) Let's say the math teacher changes their Course Starts date to 2 weeks before the Term starts, but the biology teacher leaves the Course Starts date blank.  Student A can see their math course, but Student A cannot see their biology course. Student A will contact the Canvas Support to find out why they cannot see their biology course.  
2) Let's say Student B and Student C are friends take accounting 101 but not in the same section.  The section one teacher has changed the course Starts date to one week before the Term Date.  Student B can see their accounting 101 course but Student C cannot see their accounting 101 course. Student B has an advantage already over student C. Furthermore, Student C contacts Canvas Support to find out why they can't see their class.


3) Let say the teacher has accidentally changed the dates to be a 1-day course. See the screen capture below. The 30 students on day three are not able to see the course on their dashboard anymore and all contact Canvas Support.
Course dates are incorrectly entered
4) Let's say a new teacher has imported course content from a fellow seasoned teacher choosing the wrong dates for Adjust Events and Due Dates and now the course dates are two years outside the Term Dates. The teacher is not able to see the course on their dashboard and make a call to Canvas Support.  The course is off to bumpy start.:smileyplain:
:smileycheck: If you've experienced any of these scenarios please VOTE UP now.
Still need more persuasion?... keep reading...
The Problems with Controlling Courses:
1) The hierarchy of control of the course dates is confusing.  
Course, Term, and Assignment dates are confusing
I've gathered the guides and links below to try to understand the control of Course Starts and Course Ends dates. These guides are related to Term Dates, Course Start and Ends dates, Assignment Dates, and Copy/Import Course Content. If I have missed any please post them in a comment.

:smileycheck: If you find this documentation confusing VOTE UP now!

If you need more convincing...there's more to read...

2) The only way to remove teacher access is by using Custom Java Script which is NOT supported by Instructure. 

No more unsupported java script

Twice in the past year Canvas has made changes that has broken our custom Java Script. I submitted tickets with a cry for help, "Please provide us with the JavaScript object path to the Course Starts and Course Ends and their date pickers on the course Details tab within Course Settings."  
This is the response I received:

  " Hi all,
Thank you for contacting Canvas Support. Happy to help!
I have taken a look into this and I regret to inform that the JavaScript requested is not within our scope of Canvas Support.
In order to get assistance with CSS and JS, please access GitHub as these are not supported by Canvas Support.
I apologise for the inconvenience this may cause you.
If you have any further questions or anything else you need help with, please do not hesitate to contact us by replying to this email.
I look forward to hearing from you!
Have a great day!
Marco - L1 Tech Support
:smileycheck: If you struggle with custom Java Script in Canvas VOTE UP now! 
:smileycheck: If you don't know Java Script VOTE UP now!
The Solution
The solution could be a checkbox on the Term Details page, see mock-up below.
Force Dates
Or, the solution could be on the Account Settings page, see mock-up below.
Or, it could be how the Awesome Instructure Engineers design it!
:smileycheck: If you like any of these possible solutions and VOTE UP now! 

If I haven't convinced you to VOTE UP by now, and you made it all the way here at the bottom you deserve to be apart of this Idea. 


copying a course course not appearing transfer sample course to actual course course not on dashboard manage course course overrides accessing course where is my course
higher ed canvas admin admin issue power admin term dates course term term date term settings enrollment term assignment visibility due dates due date java script javascript ui hacks javascripts custom javascript guides incomplete guides community guides search canvas guides teacher dashboard not on dashboard course not on dashboard courses not on dashboard courses disappear from dashboard student dashboard dashboard  @sphinney   @tamara_becker  Canvas Admins


This idea has been developed and deployed to Canvas


For more information, please read through the  Canvas Deploy Notes (2021-04-14).

Instructure Alumni
Instructure Alumni

 @tamara_becker ‌, we've opened the idea for voting. It is one that has been suggested in the past (for those who would like to view the now-archived idea, please join the Cold Storage‌ group to view" modifiedtitle="true" title="Permission Addition to Lock...), but it did not receive robust support during its voting cycle. As time passes, priorities change, so perhaps your newly submitted idea will meet with stronger sentiment in this new round of voting.

Also, the images in the idea description are broken; if you'd like prospective voters to see them, please take a moment to edit the idea description and upload the image files directly.


Community Contributor

I currently maintain our custom JavaScript & CSS to hide these options (as well as several others like Delete This Course or Reset This Course buttons) from instructors & as you mentioned above, it is a serious pain in the rear to maintain with every browser update!

Community Champion

 @tamara_becker ,

Thanks for the very detailed, informative and entertaining post!  I voted up!  

I don't really like the fact that when we need something they suggest we do a Java Script to obtain what we need BUT when we need help their response is it's Unsupported and they can't help!!!  GRRRRR!

Good luck with this feature request, we too have issues with this.

Community Champion

 @tamara_becker ‌, thanks this is quite detailed!  These are great use cases!

Speaking of workarounds, in addition to hiding the boxes, we have another issue related to this.  The start date gets populated when they choose to adjust dates.   And, thanks to an update in the last year or so...even if we hide the dates, the wrong start date will still be there affecting student access - whether the box is checked to restrict_enrollments_to_course_dates or not!  

So, I'm working on a script right now that we will run on a schedule.  It will:  

1.  Query Canvas Data for courses with Start and End dates that meet certain criteria (given term, actual academic course and not a training or other resource site)

2.  Iterate through the query results and if there is a start or end date, run an api call to update the start and end dates to be blank, and change the restrict_enrollments_to_course_dates to false.  

Thanks for posting this!

Community Champion

  @Renee_Carney ‌:  Are any of the many newly-hired developers going to giving admins a little love? 

Maybe give us more control over user behavior and modernize our interface to make it more user-friendly? 

Maybe as a gift from the Christmas Panda???  

Christmas Santa Panda

Community Member

I would add to also include the box at the admin level, so that admins can check the box or uncheck as needed for their institution.

"Students can only participate in the course between these dates."


"but it did not receive robust support during its voting cycle."

Yes because there is not many admins compared to student and faculty users. things like this really need to be looked at instead of dismissed due to the number of votes it receives. 

Community Participant

In the 3-20-2021 Release notes, there is an enhancement to the Course availability date on the Course Setting page.  While this won't present a huge problem for us because we have not used code to turn this date off for our instructors, I agree with other institutions that there should be a way to turn this off in permissions somewhere.  Our institutional policy is that the courses close to all students and faculty at the end of each Term. We control those dates on the TERMS page in Canvas. But it is overridden by instructors continuously even though we ask them not  to change these dates in the setting page. Even when they don't click the box below the dates that says:

"Students can only participate in the course between these dates.
When selected, the course is in a read-only state outside these dates."

The dates in the field affect course access for students. Please help us maintain control over the access to these courses without us having to check through the courses to make sure the dates have not been over-ridden.



Instructure Alumni
Instructure Alumni
Status changed to: Open
Community Participant

Hi there, I very much tend to agree that the hierarchy of dates in Canvas is confusing. So confusing that many institutions do have to resort to custom code to maintain a level of control of student access. I support any idea that makes this 'kinder' to admins and support teams, without negatively impacting student access.

Community Champion

1) Our admins specifically instruct us to change the course start dates to be 2 weeks early for all online sections, in order for online students to become familiar with the start here module before the actual start of class.  IF the ability to lock the dates allowed them to just do that from the start it would make sense.  However, we are also instructed that if we are grading after the last day of the term, we need to extend the course dates so that students can see their grades...Rather then LOCKING, why not just ensure that admins can access and change the course start and end dates if needed.

2) Students at our school experience different canvas start dates regularly without concern. 

3) and 4) Suggest that you have zero confidence in faculty.  That is sad.  This should only be a problem with new untrained faculty, and so the question should be, "Who is responsible for training new faculty to use canvas?"  Instead of blocking access to functions that you expect to lead to mistakes, why not send out faculty training information about those functions.  Faculty did not get to where they are by being incapable of learning.

IF this idea goes forward, the check boxes to make content read-only, or block student access entirely, outside of term or course dates need to remain in faculty control.  The admins will not know whether limiting access at the end of any particular course is relevant.

Community Participant

@Steven_S I respectfully disagree with your assessment of 3 & 4.  It's not that we don't have confidence in our faculty.  Some of it is due to understaffing in eLearning and the fact that not all institutions require Canvas training of their faculty.  The ones that should read the messages choose to ignore these types of emails.  Even if they do read them, it doesn't necessarily mean they understand the impacts of those dates.  Quite a few of our faculty aren't trained teachers, they are from industry and teach a quarter out of the year. We also have a high turnover rate in our adjuncts teaching gen eds. I do the best I can trying to keep everyone up-to-speed.

Given that I'm responsible for supporting our institution's LMS alone (over 3,000 FTEs & 500+ faculty) I need a little more control over what happens during our quarters.  I can control when students are added to course shells, thus controlling to some degree when they can begin accessing course content, but I also need some control over when course accesses will become read-only regardless of what date was entered by the faculty without having to go on a course-by-course basis. 

It's getting to the point where instructors have more controls, features, and functions than the admins do. 

Community Champion

+1  This is awesome!  I am officially joining the @tamara_becker fan club.  👍

Community Participant

Thanks Jeff_F for the support!

Notice that Instructure is making changes to the course availability for Instructors in their 3/20/21 release.  However, Admins still have to keep the Java Script in place to control the teachers availability.  There's movement, but just not directly for Admins at the moment.


Community Champion

This is already a feature idea, posted 2019-09-05

Admin Control to Lock Course Starts and Ends Dates

please add your feedback there so that it's all together in case they ever decide to add this to the road map.  


Community Participant

Our university policy is that students have access to courses 2 weeks prior and 2 weeks following the published course start and end dates. Since we have courses of varying lengths inside a term, obviously the term dates are pretty much useless. 

For the past 3 years we have uploaded feed files with courses start and end dates set as we want them. We have a small program that checks whether the courses are published between those start and end dates, and, if not, it publishes them. We had a bit of java script that stopped people with Teacher roles from being able to change those start and end dates. Why? @Steven_S, not because we have no confidence in our faculty but because, as mentioned by Nicole, we are one of those schools with a small support staff for Canvas, and fully two-thirds of our faculty are adjuncts who teach using Canvas instances belonging to more than one school. The adjuncts are fantastic teachers. But they have the policies of several different institutions in mind when they are working in Canvas. We find it so much easier on them and our support team if we have the course shells set up and ready; and having our policy controlled items blocked from changes is part of that set up. 

With that said, how many times can I up vote this idea since the update last weekend has once again broken the java script that controls the access to the course date fields?


Community Participant

Just a quick note on our experience with the new course participation menu that arrived in production with the 20 March 2021 release. We found that if course was selected, we were unable to alter course dates. Instead end date, for example, was defaulting to 24 hours later than 'today'. We had to disable the feature and have submitted a ticket that is now with L2 Support and an engineering ticket is open. My case number is 07468199. Had comments on the release notes not have been closed off I would have added a comment there as there may be other institutions impacted too. We were rather frustrated that the feature arrived in production with what appears to be a bug that was reported and fixed in beta pre-release. I am grateful that the Community did lobby hard to be able to disable this feature. Was too greater risk for us to leave it enabled in the current state.

Instructure Alumni
Instructure Alumni
Status changed to: On Beta
Instructure Alumni
Instructure Alumni
Comments from Instructure

The course participation options in Canvas courses can be disabled for instructors. This change allows admins to disallow instructors to change start and end dates for individual courses. Additionally, admins no long need to rely on JavaScript files to hide the participation section.

For more information, please read through the  Canvas Deploy Notes (2021-04-14).

Community Participant

@Stef_retired Thank you so much for adding this to Beta.  I have one question about this change.  Will admin still have the ability to change the dates in individual courses so that we can open individual courses up outside of the term dates?  We need to be able to open some courses for individuals to work on incompletes after the end of the course.

Thank you!!