This project pulls via the Canvas API the discussions from the specified Canvas course and exports it as CSV. The columns exported are:
- 'author_id',
- 'author_name',
- 'post_id',
- 'post_parent_id',
- 'discussion_topic_title',
- 'discussion_topic_message',
- 'post_message',
- 'count_of_likes',
- 'timestamp'
These instructions will get you a copy of the project up and running on your local machine for use with your own API tokens and Canvas domains.
- Install Node 10 or greater.
- Install Git.
- Clone this repo.
git clone https://github.com/ubccapico/canvas-discussion.git
- Then cd into the repo.
cd canvas-discussion
- Run the installation script.
npm install
(If you seebabel-node: command not found
, you've missed this step.) - Generate Canvas API token and copy it to clipboard.
- Create a
.env
file. - Add the following:
CANVAS_API_TOKEN={YOUR API TOKEN}
andCANVAS_API_DOMAIN={YOUR API DOMAIN}
. An exampleCANVAS_API_DOMAIN
ishttps://{school}.instructure.com/api/v1
- Add your course ID to
index.js
, where it says://{course id} add course ID here!
- Run the script.
npm start
. - An
output.csv
file should be generated with discussion data in the output folder.
- justin0022 - Justin Lee <[email protected]>
This project is licensed under the GNU General Public License v3.0.