instructure / canvas-data-loader

An Example Application to download data from Canvas Data, and import it into a Database.
MIT License
17 stars 18 forks source link

Canvas Data Loader

This is the source code for the Canvas Data Loader. The Canvas Data Loader is an example application that downloads your data, and imports it into a Database. The process is completely automated, and is able to handle things like Historical Refreshes, Schema Changes, and the 24-36 hour variance all without issue.

It should be noted although there are better options out there, there isn't a reason why you couldn't use the loader to handle all of your imports everyday. The Canvas Data Loader could for example handle your imports at first, and then later off be handed to a more stable process.

Support

Although this is under the Instructure Repo this is purely an example application, and as such is not fully supported by Instructure.

However, the Canvas Data Support team is happy to field requests about usage in the standard canvasdatahelp@instructure.com email.

How Do I Use It?

The following instructions are for a linux server, but steps 1-5 should work universally. You'll just need to use your systems way of scheduling a repeating task instead of crons if you are not using linux.

Configuration Using Environment Variables

Configuration can also be done using environment variables instead of, or in addition to the ./config/local.toml file. For example, you may wish to use environment variables for the API key/secret and use the file for the remaining configuration.

Example:

export cdl__canvasdataauth__api_key=abcdefg123456 export cdl__canvasdataauth__api_secret=123456abcdefg

Possible environment variables:

License

The Canvas Data Loader is Licensed under MIT.