If your institution is part of a consortia/shares an instance of Canvas with other institutions or systems, you will need to set up the Canvas integration at a Sub-Account level so that only data for your institution will be pulled in.
You will need two separate Canvas Accounts to establish the integration. One is a Canvas Admin Account created at the sub-account level with specified permissions. This account will authorize the integration for Planning & Self-Study. The second Canvas account is a root admin account, which is used for creating the key containing the scopes. The scopes are the data endpoints Planning & Self-Study will be limited to for the purpose of the integration.
It is best practice for the designated accounts to be created for the integration. You may use existing Canvas admin accounts but if those accounts are deactivated (ie., someone departs your organization), the integration will need to be reauthorized.
How to setup the feature
- Create an account role within Canvas, specifying a set of permissions, and assign it as an administrator for the sub-account organization in the institution hierarchy. This action will facilitate the retrieval of all assessment data from Canvas to P&SS.
- Please follow the steps to create an account role in Canvas.
- Open Account. In Global Navigation, click the Admin link [1], then click the name of the account [2].
-
Open Permissions. In Account Navigation, click the Permissions link.
-
Open Account Roles. Click the Account Roles tab.
-
Add Role. Click the Add Role button.
-
Add Role Name. In the Role Name field, type the name of the new role.
-
Save Role. Click the Save button.
-
View Account Role. View the new account-level role.
- Open Account. In Global Navigation, click the Admin link [1], then click the name of the account [2].
- Upon creating a new account role in Canvas, provide the following permissions to the role.
-
Account-level settings - manage
-
Course Content - view
-
Courses - view list
-
Discussions - view
-
Feature Options - enable / disable
-
Grades - view all grades
-
Manage Assignments and Quizzes
-
Rubrics - add / edit / delete
-
SIS Data - read
-
Users - view list
-
Users - view login IDs
-
Users - view primary email address
-
- Make sure that the user of an account role (the one created by following the above steps 3a and 3b) is added as an account admin to the sub-account in Canvas. The user used to authorize the integration should be associated with only one sub-account.
- Please refer to the following steps on how to add a user as an account admin in Canvas.
-
Log in as an administrator in Canvas.
-
Go to the Admin side menu.
-
Select an account for which you are an admin. For Example: EvaluationKIT in the snapshot.
-
Go to Settings side menu.
-
Go to Settings > Admin tab.
-
Click on Account Admin button.
- Select the role (Select the role that is created using steps 3a and 3b) in Add More drop down. Add the email address of the user.
-
Click Continue.
-
Click "OK Looks Good, Add This 1 User."
-
- Please follow the steps to create an account role in Canvas.
The user will be added as an account admin.
Create API Developer Key & Enable scoping for a developer API key
This API key needs to be created by a user who is an admin at root level organization in Canvas. It’s a Canvas functionality that only an admin at root level can create a developer key.
By default, the scoping is disabled when creating a developer key. For the institutions, that had already set up their integrations, the scope option will be disabled. However, the scopes can be updated for a developer API key at any time.
-
In Account Navigation, click the Developer Keys link. Open Developer Keys
-
Click the Add Developer Key button. Add Developer Key
-
Click the Add API Key option. Add API Key
-
Enter any Key Name you’d like. Paste the URI from Step 1 of canvas integration fly-out into the field called “Redirect URIs”. Click on Save The Key button.
-
Find the key you just created. Copy the ID and Key from the Details column and paste them in Step 4 of canvas integration flyout.
-
To permit usage of all "includes" parameters for this key, click the Allow Include Parameters checkbox.
-
Search the endpoints that are required to fetch the necessary assessment data. To search for a specific endpoint, type the name of the endpoint in the Search Endpoints field. To see all available endpoints, scroll through the Endpoints table.
-
Save the API key.
-
Enable the API key.
This does not require any changes in the Planning & Self Study application. Once the scopes are enabled, we can utilize the key to make the connection to Canvas in P&SS.
Required API endpoints
Following are the API endpoints that must be selected in an API key. The below mentioned endpoints will fetch the Courses, Assignments, Quizzes, Discussions, Rubrics, and results data from Canvas.
- Accounts: GET|/api/v1/accounts
- Accounts: GET|/api/v1/accounts/:account_id/sub_accounts
- Accounts: GET|/api/v1/accounts/:account_id/courses
- Assignments: GET|/api/v1/courses/:course_id/assignments
- Enrollment Terms: GET|/api/v1/accounts/:account_id/terms
- Rubrics: GET|/api/v1/courses/:course_id/rubrics
- Rubrics: GET|/api/v1/courses/:course_id/rubrics/:id
- Rubrics: GET|/api/v1/accounts/:account_id/rubrics
- Sections: GET|/api/v1/courses/:course_id/sections
- Submissions: GET|/api/v1/courses/:course_id/students/submissions
- Users: GET|/api/v1/accounts/:account_id/users
Key things to consider when enabling scopes
- All the required endpoints must be selected in the key in order to make the integration work seamlessly. The integration will not work even if one of these endpoints is missed.
- Allow Include Parameters option must be selected in an API key. "Includes" parameters may grant access to additional data that is not included in the Endpoints table.
- Make sure that no additional endpoints are selected other than the required ones in an API key.
- Scopes must be enabled for the API key.
- If the scopes are removed, the refresh token will become invalid, causing the integration to disconnect. The user will need to reauthorize the integration after re-adding the necessary scopes.
- Make sure that the API key is in enabled state.
Use the API key to set-up integration in P&SS
Following are the steps to enable integration and align results from canvas when adding measure to an outcome and getting results as per our selection.
- In P&SS application navigate to Integrations page under Admin section.
- Click on Connect to Canvas LMS button in Canvas LMS card under Other Integrations section to open canvas integration flyout.
-
Click on the the button COPY URI.
-
Paste the URI from Step 1 into the field called “Redirect URIs” in the Canvas API key. Save the key.
-
Find the key you just created. Copy the ID and Key from the Details column in Canvas and paste them in ID and Key columns in P&SS.
-
Paste the institution’s canvas URL in Canvas URL field.
-
Click Authorize Canvas button.
-
A new tab opens up consisting the canvas application login page.
-
Login to the application using the credentials of account role user who is added at the sub-account level(with all the required set of permissions).
-
The user used here to authorize the integration should be associated with only one account.
-
Root account if institution is using their own Canvas instance,
-
or the relevant sub-account if institution is using a shared Canvas instance.
-
-
-
Click Authorize.
-
You will notice that a success message appears in the establish connection form.
-
Close the form. You will notice that a snackbar success message appears. You can also view the appropriate status for the integration.
Required Data Mapping
- In System Administration, the course section’s section ID (to be used as an SIS ID) is required. However, in Canvas, the SIS ID for the course is not a required field. The clients would need to ensure that this SIS ID is provided in the course so that the necessary mapping can be done (through a resolver).
- In System Administration & Canvas, the course/course section IDs must be unique so that the required mapping of these objects can be done in order to list the activities and their details in P&SS when aligning a measure from Canvas.
- The term is set to the default term for any course in Canvas when it’s created (if no term is selected when creating a course). The institutions need to ensure that they select a term for their courses.
- The student email address must be same in both Canvas and System Administration for mapping.