Skip to main content

Setting Up Canvas API Integration

How to configure grade and roster syncing with Canvas.

Written by Seth Killian

Looking for our LTI 1.3 integration? Check out how to set up an LTI 1.3 Integration in Canvas.

If you use the LTI 1.3 Canvas integration, then you can skip this article.

If you currently use LTI 1.1 and want to migrate to LTI 1.3, please reach out to our support team through live chat or at [email protected].

Beyond the standard Canvas LTI Integration — which lets students Single Sign-On from their Canvas course into their Lingco course — Lingco's Canvas API integration lets instructors sync grading and roster information between the two systems.

Developer Key

To complete the API integration, you must first create a Developer Key within your Canvas account. Navigate to the Admin panel, to your school account, and then to the Developer Keys page.

Once there, click + Developer Key and choose + API Key.

Enter the settings for the developer key:

  • Key Name [1]: Lingco Classroom

  • Owner Email [2]: [email protected]

  • Redirect URI (Legacy) [4]: Leave Blank

  • Vendor Code (LTI 2) [5]: Leave Blank

  • Icon URL [6]: Leave Blank

  • Notes [7]: Optional — e.g. the reason the key was created

  • Test Cluster Only [8]: Leave unchecked


Enforcing Scopes (Optional)

If your institution restricts API access by enforcing specific scopes on Developer Keys, you will need to enable the exact endpoints that Lingco utilizes. Under the Scopes section of your key configuration, turn on the following endpoints grouped by their respective categories:

Assignment Groups

  • GET|/api/v1/courses/:course_id/assignment_groups

Assignments

  • GET|/api/v1/courses/:course_id/assignments

  • GET|/api/v1/courses/:course_id/assignments/:id

  • POST|/api/v1/courses/:course_id/assignments

  • PUT|/api/v1/courses/:course_id/assignments/:id

  • DELETE|/api/v1/courses/:course_id/assignments/:id

Courses

  • GET|/api/v1/courses

External Tools

  • GET|/api/v1/courses/:course_id/external_tools

  • POST|/api/v1/courses/:course_id/external_tools

  • PUT|/api/v1/courses/:course_id/external_tools/:external_tool_id

  • DELETE|/api/v1/courses/:course_id/external_tools/:external_tool_id

Modules

  • GET|/api/v1/courses/:course_id/modules

Sections

  • GET|/api/v1/courses/:course_id/sections

Submissions

  • PUT|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/:user_id

  • POST|/api/v1/courses/:course_id/assignments/:assignment_id/submissions/update_grades

Tabs

  • GET|/api/v1/courses/:course_id/tabs

Users / Enrollments

  • GET|/api/v1/courses/:course_id/users


Finalizing the Installation

After saving the key, turn the state from Off to On to enable it for use.

Once the key has been created, reach out to our engineering team either through the live chat or at [email protected] to finalize the installation. Please provide them with the following details:

  • App ID (client ID)

  • Developer Key

  • Canvas URL domain

Did this answer your question?