Canvas Integration Guide
Introduction
Below you will find an example of the our Canvas integration guide that you can review.
AEFIS will supply you with a customized guide for your institution that you will be able to complete the integration with.
AEFIS Canvas Setup
(v10 – 11/20/2020)
This document covers requirements for AEFIS / Canvas integration. A Canvas Administrator working with an AEFIS
integration technician can complete requirements. There may be additional personnel required for unforeseen circumstances such as client network or server restrictions.
Data Feed requirements
- In the Course Section file of data feed set to AEFIS one of the two following IDs need to be included:
- SIS ID: This is the preferred ID
- Course ID: This is the ID that can be found in the Course URL directly after courses
AEFIS LTI Tool
The AEFIS LTI Tool allows students and instructors the ability to view an AEFIS course syllabus within a related course and complete assessment forms.
Please choose if you are going to use an LTI 1.1 or LTI 1.3 integration with AEFIS, follow the chosen LTI method’s guide from the links below then return to this guide to complete the API integration
AEFIS Canvas API Integration Data Requirements
AEFIS Canvas integration data requirements detail the data required from the client LMS and SIS to relate both within the AEFIS System.
Canvas Data
The AEFIS System expects links from the Canvas LMS that contain SIS ID or Course ID. Since the SIS ID or Course ID is specific to Canvas, the Canvas SIS ID or Course ID for each course will need to be included in the SIS import data with related course sections.
AEFIS Canvas API Developer Key
A Canvas Developer Key is a required part of the Oauth2 process where instructors can grant permission to import related data from Canvas into AEFIS for assessment.
Canvas API Developer Key
Institutions will need to generate a developer key from within their canvas installation or hosted canvas. A Canvas administrator should do this using the following steps:
- In Canvas, select the appropriate managed account from the “Courses” menu. Then select “Developer Keys” (usually located near Admin Tools).
- Select “Add Developer Key” and choose API Key.

3. Enter the following in the Key Settings dialog:
Key Name: AEFIS Canvas Integration
Owner Email: [email protected]
Tool ID: [leave blank]
Redirect URI (Legacy): https://<AEFIS_URL>/index.cfm/page/AefisLmsIntegration.authCallback
Redirect URIs: [leave blank]
Vendor Code (LTI 2): [leave blank]
Icon URL: https://<AEFIS_URL>/assets/images/logos/[email protected]
4. Select “Save Key”, verify the key you just created appears in the list, and switch the State to ON
a.If you require that the developer key enforces scopes, please see the list on the next page for the required scopes of the integration.
5. Please send your Canvas URL, the Developer key ID, and Key securely to your AEFIS integration contact. Also, please note in that communication if you setup the developer key with scopes or not.
Scopes for AEFIS integration:
If you require that the developer keys in your Canvas LMS enforce scopes, please make sure to set all the following scopes in the developer key that you created above.
Required:
Make sure that you check the box for Allow Include Parameters located directly under Enforce Scopes.

Assignments >
url:GET|/api/v1/courses/:course_id/assignments
Courses >
url:GET|/api/v1/courses
url:GET|/api/v1/courses/:id
url:GET|/api/v1/courses/:course_id/users
Enrollments >
url:GET|/api/v1/courses/:course_id/enrollments
OAuth2 >
/auth/userinfo
Submissions >
url:GET|/api/v1/courses/:course_id/assignments/:assignment_id/submissions
url:GET|/api/v1/courses/:course_id/students/submissions
Optional: Add the following scopes if the institution plans on assessing Quiz data in AEFIS
Quiz Reports >
url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/reports
url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/reports/:id
url:POST|/api/v1/courses/:course_id/quizzes/:quiz_id/reports
Note: AEFIS requires the above POST API scope to make the following API call so that AEFIS can retrieve quiz grades and answers in a batch format which allows AEFIS to avoid making multiple individual calls per student to pull quiz grades and answers.
https://<Canvas URL>/api/v1/courses/<Coures ID>/quizzes/<Quiz ID>/reports?quiz_report[report_type]=student_analysis&access_token=XXXX
Quiz Questions >
url:GET|/api/v1/courses/:course_id/quizzes/:quiz_id/questions
Optional: Add the following scope if the institution plans on posting grades back to LMS
Update Grades >
url:POST|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/update_grades
Before you proceed with the Canvas System Account step please be sure to supply your AEFIS Onboarding contact the information from step 5 of the Canvas Developer Key step above. They will contact you and let you know when to proceed.
AEFIS Canvas Service Account
This section will walk you through creating a service account for the REST API calls AEFIS will use to gather information from your institution’s Canvas environment to AEFIS for assessment purposes. A Canvas Administrator and AEFIS Institutional Admin at your institution will need to complete the following.
This new service account feature is available in AEFIS version 3.45 and above.
Create the service account in Canvas:
The following should be completed by a Canvas Administrator
First, you will need to create an account in the institution’s Canvas environment. How you create this account is up to you, it can be a local Canvas account or a university account depending on your policies. We only ask that you use the same setup format as the rest of your users, i.e. if users canvas login information includes email address and SIS ID the service account should be setup the same way.
Once you create the account make note of the following, as you will need the information to create the account in AEFIS:
- First Name
- Last Name
- Username
- Email Address
- This does not need to be a real email address, as long as you use the same email address when you create the account in AEFIS
- SIS ID
- This does not need to be a real SIS ID, as long as you use the same email address when you create the account in AEFIS
Create service role for service account in Canvas:
Second, you will need to create a new role in Canvas for the service account you created above.
To complete this please follow the steps below:
- Click Admin
- Click Permissions
- Click Account Roles
- Click Add Role
- Type a name for the role i.e. AEFIS Service Role or something similar of your choosing
- Click Save
- Enable the following permissions on the new role
- Required:
- Course Content – view
- Courses – view list
- Grades – view all grades
- Users – view login IDs
- Users – view primary email address
- SIS Data – read
- Optional:
- Assignments and Quizzes – add / edit / delete – Add this permission if the institution plans on assessing Quiz data in AEFIS
- Required:
- Save the role
Apply the service role to the service account in Canvas:
The last step in Canvas is to apply the new service role to the service account by doing the following:
- Click Admin
- Click Settings
- Click Admins
- Click Add Account Admins
- In the Add More drop down menu choose the service role you created above
- Type the email address of the server account you created above
- Click Continue

- Click OK Looks Good, Add This 1 User
Create the service account in AEFIS:
The following should be completed by a AEFIS Institutional Admin
First, you will need to create the service account that was created in Canvas on your AEFIS application.
Once you have logged on to AEFIS complete the following to add the service account:
- Click the hamburger menu on the top left of AEFIS
- Scroll down to the Admin Tools section of the menu
- Click User Accounts
- Click ADD USER towards the top right
- Choose University User
- Click Next
- Fill in the User Details with the service account information from Canvas above
- Email Address
- First Name
- Last Name
- University ID
- If the Service account you created does not have SIS ID in Canvas you can place the email address here.
- Username
- Password – If you chose a Local User please enter a password for the account
- Click Next
- From the drop down menu choose Institutional Admin
- Click Add Role

- Click Edit Parent Objects

- Click the your Institution under Available Institutions on the left
- Click the arrow pointing right to move it to Selected Institutions
- Click OK

- Click Save User
- Stay on the user’s page for the final step
Authorize the service account from AEFIS on Canvas:
The following can be completed by a Canvas Administrator or AEFIS Institution Administrator if the AEFIS Institution Administrator can Act as the service account in AEFIS
The last step is to do the REST API authorization with Canvas using the service account.
NOTE: If you are currently logged into Canvas logout and log back in as Canvas service account
- Locate the service account you created Canvas
- Act as the service account
- Open a Course in Canvas that also exists in AEFIS
- Click AEFIS Tools in the Course Menu
- Once the AEFIS opens in the i-frame click the launch icon pictured below to open AEFIS in a new tab

- You should see the image below, if not click the hazard icon towards the top right of the page
- Click GO TO AUTHORIZATION

- Make sure that the highlighted area in the image below displays information about the Canvas service account.

- Click Authorize
- You will be redirected to back to AEFIS