[Announcements] Marking all announcements read

This idea has been developed and deployed to Canvas LMS

In the student interface, currently it is not possible to select multiple or all announcements to make them marked as read. As a result, often times a student's announcement thread will fill up to the point that they will no longer be able to notice when an instructor sends out an announcement, thus creating the possibility of a student missing out on something important. 

53 Comments
phagen
Community Novice

Made an account just to suggest this.  When I read my announcements in email, I would like a quick way to mark them read in canvas, opposed to clicking them one by one. 

EricaB
Community Member

Please implement this feature. It's a little mind-boggling that what seems like such a simple and obvious thing hasn't been done in at least two years of what looks like multiple people requesting and upvoting it. I read announcements when they come to my email, and sometimes I don't log in to Canvas for weeks. So when I do, I have a ton of unread announcements, and the notifications won't go away until I've opened and "read" every single one of them. It's a small thing, but over time, as it happens again and again, it gets frustrating.

LXG
Community Member

Yes I would like this, but could there also be a mark as read and you select the announcements that you want to be read instead of all the announcements.  

evilmonkeyind
Community Member

Clearly the developers and ux designers don't use Canvas themselves. This is such a basic feature that it would have been implemented from the beginning if they did. Like so many others, I get my announcements via email to ensure I don't miss anything important. Having to go through each individual announcement to mark them as read just wastes time that should be spent studying.

lsn232414
Community Novice

This function is still highly wanted! It's incredibly annoying having to enter ALL the announcements one by one, in order to remove the notification sign. It takes up a lot of time having to do it like this, and the lack of "mark all as read" function is very surprising! Also, announcements visited via the app is still "unread" using the desktop version, so I have to enter the same announcements twice! VERY irritating.

Please, please fix this!

TheVaccine
Community Member

When I run the script, I get the following error:

Capture.PNG

I am running cmd (windows 10) in admin mode. 

I'm guessing something in the api changed but idk how the api in canvas works. 

@samueldy 

samueldy
Community Member

Hi @TheVaccine,

Thanks for the heads-up. You shouldn’t need to run the script with administrator or root permissions or install other packages — it uses only standard Python libraries plus `requests` to execute GET/PUT/DELETE requests.

The error you found happens when the REST API won’t provide details about the course, possibly because you don’t have read permission to the course (i.e., a course that’s visible to students only during the term and not after). I’ve updated the script to account for this case and put it on GitHub: https://github.com/samueldy/mark-canvas-announcements-as-read/. Additionally, you can find the Canvas REST API docs at https://canvas.instructure.com/doc/api/ if you want to see the exact methods used. Please feel free to file an issue or pull request if you notice anything else going wrong or want to improve my script.

Cheers, and happy holidays!

— Sam

samueldy
Community Member

Hey all,

Awhile back I posted a Python script that can automate the process of marking as read announcements for all of your courses, but this website changed its code previews to omit the new lines in the script, making it hard to copy and paste. To make it easier to use, I’ve put it up in a GitHub repository: https://github.com/samueldy/mark-canvas-announcements-as-read/. Hopefully the Canvas folks will get around to coding a button that does this directly, but until then, this script might help. Feel free to submit issues or pull requests if you notice anything going wrong or that could be improved.

Cheers, and happy holidays!

— Sam

v_ruzicka
Community Novice

Thanks Sam!

Smiley2160
Community Novice

I also made an account just to comment this, it makes little to no sense why there is not a "mark all as read button" especially for college courses where we can get 30 notifications at once from a professor who is adding office hours for the whole semester one by one and getting a notification in the inbox for each one. It would be extremely easy to implement whether it would be a box at the top to allow you to select all with one click or allowing the "mark all as read" button to work when nothing is selected yet. I mean canvas was created in approx. 2011 and its been approx. 10 years and there's still no read all button?