Hello All,
As a part of the recent migration to the new Canvas Community a number of previously redirected links no longer are functioning. Due to this we needed to start a process to find and replace these links in our course. Our choice in method to do this was to use a combination of Tableau and Canvas Data in conjunction with the Canvas API. We used Tableau to seek out the old links and organize them to get the direct links to Canvas where these links reside. Once we had a list of links from Tableau we created an Excel spreadsheet where we could paste these values in. Then using VBA and Excel we were able to pull the body of text from pages, assignments, descriptions, and quizzes and replace these old links with the new links. Once the links were replaced we used the API to send the new body of text to Canvas.
Finding the replacement links was by far the longest part of this entire process. After using Tableau to find the links from the course our team put all of these links into a big list and then used context from the courses as well as the Wayback Machine in order to determine where these new links should lead to. Almost all of the links were able to be determined from this method and resulted in our team determining over 200 link associations.
We realized quickly as a team that this information would most likely be helpful for others who have a similar issue so we would like to offer the information we collected. Attached to this post are three spreadsheets. The first is the list of links with their old and new versions. The second is a spreadsheet that can be used to find and replace information in Canvas using the API. A few things to note about this spreadsheet. This is meant for someone who is at least somewhat familiar with the Canvas API. The spreadsheet is designed to be as user friendly as possible but please be aware that it has the capability to pull the body of text associated with pages, assignments, discussions and quizzes as well as update them directly from the spreadsheet. One caveat to this spreadsheet is the maximum length of text that can fit within a cell. One Excel cell is hard coded to contain no more than 32,767 characters. In order to combat this issue a column is included that shows the length of text in a cell. If the cell is indicated to contain over this amount of characters it is recommended to review the contents before sending the PUT call as it could contain the incomplete body.
We also realize that not everyone may not have access to Tableau in order to find the pages. Included is another spreadsheet that will allow you to pull all of the pages, assignments, discussions and quizzes in multiple classes at a time again using VBA and the Canvas API. This will then allow you to take the list of links and put them into the original spreadsheet that is used to PUT the bodies of text.
If there are any questions regarding our process or the included spreadsheets, please let me know and I will do my best to respond.