@sbeck1 I have created a workflow server to automate our SIS import process.
I am able to schedule jobs to run at any intervals needed, minutes, hours, days, weeks, etc.
Each job inspects the results of any API call that is made, and reports any errors that come back from Canvas.
In the specific scenario of the SIS import, here is the order of operations that I follow:
- Query SIS data and create zip file
- Upload the file to Canvas
- Inspect response from Canvas for "error_report_id"
- if error received, email system admin to get attention
- Monitor status of import job until status is complete
- The entire time the workflow is logging every API call made, the result of every API call, and specific details of any errors that occur.
We know within minutes if any SIS import has experienced issues.
I have also built in additional logic:
- to alert us when new courses are imported from the SIS, so our course design staff can get busy
- to alert us when students are imported for the first time, allow us to send custom emails to help on board them
This workflow server allows us to automate many tasks, but SIS import was the first thing we attacked. Other examples of workflows include rubric interrogation, and transfer of grades from Canvas back to the SIS. This approach has been running reliably for over a year now. With all of the logging done by the workflow server, we are able to generate reports that we need. Having full control over our code base, we are able to further customize logging to meet future reporting needs.
If your idea doesn't get approved, maybe this will give you some ideas of what you can do.
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.