This document provides instructions on how to integrate the Canvas Instructure API into the Lumina Video Platform. Administrators can integrate the Instructure Canvas API and automatically sync all the information from Canvas to Lumina.
Generating Canvas Client ID and API Keys
The instructions below will allow users to generate a new Canvas Client ID and API Key that can be used to integrate into Lumina.
- Log into Canvas as an Admin.
-
Navigate to the Admin tab and choose Developer Keys. Click the + Developer Keys button and select + API Key.
-
Enter the information as shown below and then click Save.
- Key Name: Canvas Auto Sync Key
-
Redirect URIs: https://<YOUR_YUJA_DOMAIN>/auth/Canvas
- US Zone: https://panorama-api.yuja.com/canvas-auth
- CAN Zone: https://panorama-api-cz.yuja.com/canvas-auth
- EU Zone: https://panorama-api-ez.yuja.com/canvas-auth
- AUS Zone: https://panorama-api-az.yuja.com/canvas-auth
- (Optional) Enable Enforce Scopes.
Note: We do not recommend enforcing scopes. It will require you to reintegrate Panorama with the Canvas API whenever Panorama adds new functionality that uses the API. If you do not want to proceed with this, please ensure that Enforce Scopes is disabled.
Recommended scopes:
Accounts
url:GET|/api/v1/accounts
url:GET|/api/v1/accounts/:id
url:GET|/api/v1/accounts/:account_id/courses
url:GET|/api/v1/accounts/:account_id/sub_accountsAdmins
url:GET|/api/v1/accounts/:account_id/adminsUsers
url:GET|/api/v1/accounts/:account_id/users
url:GET|/api/v1/users/:id/profileRoles
url:GET|/api/v1/accounts/:account_id/rolesEnrollments
url:GET|/api/v1/courses/:course_id/enrollmentsGroups
url:GET|/api/v1/courses/:course_id/groups
url:GET|/api/v1/groups/:group_id/usersAssignments
url:GET|/api/v1/courses/:course_id/assignments
url:GET|/api/v1/courses/:course_id/assignments/:id
-
Toggle State to On and copy down the Canvas Client ID for later use.
-
Next, click Show Key and copy down the Canvas API Key for later use.
Integrating Canvas API into the Video Platform
The next steps involve integrating the newly obtained Canvas API Key into the Video Platform.
-
Log in to the Video Platform as an Admin, then go to the Admin Panel.
- Click Integrations, then choose LMS API from the Select Integration drop-down list.
- Enter the following information, then click Save.
- Choose an LMS: Canvas
- URL Link to Your LMS: https://<YOUR_CANVAS_DOMAIN> (Refer to Step 3 in the previous section for domain zones.)
- Client ID: Enter the Canvas Client ID from the above section.
-
Client Secret: Enter the Canvas API Key from the above section.
-
Click on Allow API Access.
-
While logged into Canvas as an admin, Select Authorize to allow Lumina to access the Canvas API.
Managing Canvas API Calls
With the Canvas API setup, admins will now have the ability to customize which information to sync from Canvas into Lumina. In general, we recommend that institutions turn on all Synchronization Settings to take advantage of this functionality.
-
Enable the desired options for Administrators to sync from Canvas into Lumina.
- Enable Canvas Course Synchronization: All courses from your Organization's Canvas will be synced to the Video Platform on a daily basis.
- Enable Canvas User Synchronization: All users from your Organization's Canvas who are enrolled in a Canvas course will be synced to the Video Platform on a daily basis. For users who hold two different roles in Canvas, the Video Platform will provision the higher role.
- Enable Canvas Enrollment Synchronization: All new user enrollments from your Organization's Canvas will be synced to the Video Platform on a daily basis.
- Enable Canvas Accommodated Groups Synchronization: All Canvas Accommodated Groups from your Organization's Canvas will be imported to the Video Platform on a daily basis.
- Enable Canvas Sub-Account Synchronization: All Canvas sub-accounts associated with your organization will be imported to the video platform on a daily basis.
- Start Synchronizations: Sync all the enabled options above from your Organization's Canvas into the Video Platform instantly.
- Click Save changes to apply all the changes.
Setting Up Canvas API Calls Notification
Admins can choose to set up a user to receive all the Canvas API call notifications.
-
In the Notifications section, enter the YuJa User ID you would like to receive notifications through.
- Click Save changes to apply all the changes.
Setting up Canvas API Linkage Settings
Administrators can configure Linkage Settings to provision courses and users from Canvas to the Lumina via the Canvas API.
-
Under Canvas Courses, check the Use Course Code and Term as backup fields if no Canvas Course ID is found box.
Note: To only search Video Platform courses provisioned through LTI, check the Ignore non-LTI YuJa courses when syncing Canvas Courses box.
- Under Canvas Users, select the Primary Linkage Attribute from the drop-down menu.
-
Check the Use user email and user's name as backup fields if no Canvas User ID is found box.
Note: To only search Video Platform users provisioned through LTI, check the Ignore non-LTI YuJa users when syncing Canvas Users box.
- Click Save changes to apply all the changes.