- name: canvas-batch-change-dates
- ops-run-with: jupyter
- python>=3.7
- canvasapi>=2.0.0
- supports universal environment 🌎
Canvas Batch Change Dates is a Python script for changing the start/end dates for courses. This script can process multiple courses at once - all courses and start/end dates can be adjusted to preference in ./data/input/start_end_courses.csv
.
-
start_end_courses.csv
: List all courses by id and enter start and end date values in respective columnsex. to change course (12345) to begin Jan-01-2020 and end Jan-01-2021 we'd enter:
course_id start_date end_date 12345 2020-01-01 2021-01-01 -
Canvas API Token: Found in Canvas > Account > Settings > Approved Integrations (prompted by the Jupyter Notebook)
./data/output/canvas-course-settings_{YYYY-MM-DD HH-MM-SS}.csv
: Details status of last run including affected courses, original start/end dates, new start/end dates and any changes to enrollment restrictions./data/completed/start_end_courses_{YYYY-MM-DD HH-MM-SS}
: This is a copy of yourstart_end_courses.csv
copied over at the end of the run and timestamped. These will automatically get stored in the./data/complete
folder.
- The changes applied here can be difficult to reverse, so ensure all documentation (README.md and Jupyter Notebook) has been looked at and understood before running
- The Jupyter Notebook will create a few additional prompts to get the API Token and confirm outcomes
Are you Sauder Operations Staff? Please go here for detailed instructions to run in Jupyter. ("The Project", or "the-project" is "canvas-batch-change-dates" or "Canvas Batch Change Dates")
Project uses conda to manage environment (See official conda documentation here)
- Ensure you have conda installed (Python 3.7 version)
- Clone canvas-batch-change-dates repository
- Import environment (once):
$ conda env create -f environment.yml
- Run
$ conda activate canvas-batch-change-dates
$ python canvas_batch_change_dates.py
- Follow terminal prompts