1. Home
  2. Canvas Sync

Canvas Sync

Syncing with Canvas

Keyboarding Online has the ability to sync your Canvas classes and students with Keyboarding Online. This means that you can easily create your students inside Keyboarding Online and keep them updated through out the course. The other benefit is that students will be able to sign into the program with Canvas. No need to worry about remembering another set of passwords.

What it is NOT

Canvas Sync is ONLY for syncing/importing classes and students right now. There is no grades or assignments sent back at this time. There are no options, apps, or modules created inside Canvas to manage the application. It is simply a way to sync your classes and account inside Keyboarding Online, and provide the students with an option to login with Canvas.

The Canvas Sync cannot be used with other 3rd party rostering options, meaning you cannot sync with Canvas, but then require the students to click the Sign In With Microsoft 365.

Canvas API vs LMS/LTI Application

When we first started working with 3rd party integrations, APIs were uncommon for many LMS systems like Canvas. The only way to integrate was with a LTI application. We developed an LTI application that handled the student account creation and the authentication/login process of students. It essentially gave students a link that took them into our program. Unlike most other LTI applications, there were no grade passbacks, there was no management interface, it wouldn’t work too well inside of the LMS, and required a bit of work to configure. Another downside is that there was no syncing. This meant student accounts didn’t exist inside Keyboarding Online until the students clicked on the LTI application. For some teachers, this meant comparing two sets of rosters to figure out which students had not used Keyboarding Online yet. The biggest drawback by far was that every class/section needed its own individual LTI application or else all the students would be lumped in one class inside Keyboarding Online.

Some teachers liked using the LTI application, but problems typically arose from the fact that each semester/year the teachers needed to go back into the app settings and update it again with a new class they created. There was lots of back-and-forth emails and support at the beginning of every semester as teachers forgot how to update the settings. The Canvas API is a one and done setting, and will allow teachers to sync their classes semester by semester without needing to create classes or update LTI app settings.

We feel that the Canvas API has more features and ease of access to offer than the LTI application, which is why it has been hidden on the Teacher Manager, and we are not encouraging schools or teachers to use it anymore. For all new schools, we are recommending to use Canvas API and not use the LTI application. For older schools, we are recommending they upgrade as we will continue developing and improving the API syncing as it is used more and more. If older schools desire to use the LTI application still, we have moved the option to the Dashboard under the active application icon that shows the license information.

We also want to note that you cannot use BOTH the API and the LTI application simultaneously. It must be one or the other. The systems do not send the same information and cannot be synced.

Getting Started

To get started, your Canvas Administrator will need to create a set of Developer Keys inside Canvas. These keys give Keyboarding Online access to grab the data needed to properly sync your classes.

  • Click on “Admin” on the Canvas sidebar.
  • Click on “Site Admin” in the menu that slides out.
  • Click on “Settings” and then select the tab that says “Feature Options
  • In the Site Admin settings, about 4 from the bottom, turn on Developer Key Include Parameter Support. This will allow Keyboarding Online to list students by sections instead of just by course.
  • After enabling the feature, navigate to “Developer Keys” on the left menu.
  • Click on “+ Developer Key”
  • Click on “+ API Key”
  • Give it a name like “Keyboarding Online” and set the owner email to support@keyboardingonline.com
  • Copy and paste the following Redirect URIs:
  • Everything else can be left blank.
  • Ensure Allow Include Parameters is checked. If this option does not exist, it means it was not enabled in the Feature Options settings. Go back up to the 3rd step and ensure you are following those directions.
  • Click on Enforce Scopes and select the following scopes:
    • Courses:
      • url:GET|/api/v1/courses
      • url:GET|/api/v1/courses/:id
      • url:GET|/api/v1/courses/:course_id/users
    • OAuth 2:
      • /auth/userinfo
    • Sections:
      • url:GET|/api/v1/courses/:course_id/sections
  • Click Save
  • Under State, click ON
  • Copy down the ID under Details
  • Click Show Key
  • Copy down the key that appears
  • Provide your district Canvas URL, Developer ID, and Developer Key to Keyboarding Online (support@keyboardingonline.com)

Next Steps

Once the data has been provided by your Canvas Administrator to Keyboarding Online and updated in our system, you will be able to sync your classes and students inside the Teacher Manager.

  • Go to Classes and click on 3rd Party Sync.
  • Click on Sync with Canvas
  • Authorize the application
  • Choose from the list of classes which ones you would like to sync
  • Click Import Classes

After importing the classes, they will appear on your class roster, along with all the students in those classes. The password that is generated is their “Canvas ID”. You can provide this to the students, or you can have them log in with Canvas.

Troubleshooting

  1. If you are not getting a login page or an authorization screen when clicking Sync With Canvas, and are getting an error page that says something like “invalid_client” or “unknown client”, then your Developer ID and Key are not correct in the Keyboarding Online system. Ensure you copied them to us correctly and contact Keyboarding Online with the correct information.
  2. If you receive an error message along the lines of “Error (invalid_scope) A requested scope is invalid, unknown, malformed, or exceeds the scope granted by the resource owner.” with additional information. Then the scopes were not configured properly. Please go to the section above and ensure all the scopes shown are check marked.
  3. During the sync process, if you are unable to see the count of Total Students, or if you click on a Course and the individual Sections do not contain any students (as in the image below), then you have not enabled Include Parameters in the Developer Keys. Go back to the Developer Keys and enable the Include Parameters. If that option does not exist, ensure the setting is enabled in the Settings > Feature Options section.

Logging In With Canvas

To log in with Canvas, go to the Keyboarding Online login page (https://keyboardingonline.com/login) and enter the email account you are using with Canvas and hit Enter or click Next.

On the page with the password, you will be able to enter the account password (the Canvas ID by default) or click Sign In With Canvas. When you click Sign In With Canvas, you will be directed to Canvas where you will sign in and authorize the Keyboarding Online application. After authorizing the application, you will be immediately logged into the program.

Updated on August 12, 2020

Was this article helpful?

Leave a Comment