Overview
The Canvas API integration connects your Nectir AI Workspace to Canvas, enabling you to import course materials like pages, assignments, files, discussion topics, and quizzes directly into your AI Assistants’ knowledge base.This guide covers the API integration method. If you’re looking to embed Nectir AI directly inside Canvas courses via LTI, see the Canvas LTI Guided Setup instead.
Prerequisites
- Canvas Admin access at the account level (to create Developer Keys)
- Nectir AI Workspace Owner role
Before You Begin
You’ll need three browser tabs open:- Canvas with admin access at the account level
- Nectir AI with the Workspace you want to integrate
- This support article to follow along with the steps below
Part 1: Create a Developer Key in Canvas
Navigate to Developer Keys
In Canvas, click Admin in the left sidebar, select your account, then click Developer Keys in the account navigation.
Create a New API Key
Click the + Developer Key button in the top right, then select + API Key from the dropdown.
Configure Key Settings
In the Key Settings form, fill in the following:All other fields (Owner Email, Icon URL, Notes, etc.) can be left blank.
- Key Name: Enter a descriptive name (e.g.,
Nectir AI API Key) - Redirect URIs: Enter the following URI exactly:
Configure API Scopes
Keep the Enforce Scopes toggle turned ON (it’s on by default).Check the Read only checkbox at the top of the scopes list. This grants read-only access to Canvas data, which is all Nectir AI needs.

Advanced: Select Only the Required Scopes
Advanced: Select Only the Required Scopes
If your institution’s security policy requires least-privilege access, you can select only the specific scopes Nectir AI needs instead of checking Read only. Enable each of the following scopes:
| Canvas Category | Scope | What Nectir Uses It For |
|---|---|---|
| Accounts | GET /api/v1/accounts | Fetch Canvas accounts during Workspace setup |
| Accounts | GET /api/v1/accounts/:account_id/sub_accounts | Discover account hierarchy during setup |
| Accounts | GET /api/v1/accounts/:account_id/courses | List courses under a specific account |
| Courses | GET /api/v1/courses | List the user’s courses for the course selector |
| Courses - Modules | GET /api/v1/courses/:course_id/modules | Fetch course module structure for import |
| Courses - Modules | GET /api/v1/courses/:course_id/modules/:module_id/items | Fetch items within a module for import |
| Courses - Files | GET /api/v1/courses/:course_id/files | List course files for import |
| Courses - Pages | GET /api/v1/courses/:course_id/pages | List wiki pages for import |
| Courses - Pages | GET /api/v1/courses/:course_id/pages/:url_or_id | Fetch a page’s full content for import |
| Courses - Assignments | GET /api/v1/courses/:course_id/assignments | List assignments for import |
| Courses - Assignments | GET /api/v1/courses/:course_id/assignments/:id | Fetch an assignment’s full content for import |
| Courses - Discussion Topics | GET /api/v1/courses/:course_id/discussion_topics | List discussion topics for import |
| Courses - Discussion Topics | GET /api/v1/courses/:course_id/discussion_topics/:topic_id | Fetch a discussion topic’s full content for import |
| Courses - Quizzes | GET /api/v1/courses/:course_id/quizzes | List quizzes for import |
| Courses - Quizzes | GET /api/v1/courses/:course_id/quizzes/:id | Fetch a quiz’s details for import |
| Courses - Quizzes | GET /api/v1/courses/:course_id/quizzes/:quiz_id/questions | Fetch quiz questions for import |
| Files | GET /api/v1/files/:id | Fetch file metadata and download URL for import |
All scopes are read-only (GET). Nectir AI never creates, modifies, or deletes any data in Canvas.
Part 2: Connect Canvas API in Nectir AI
Open LMS Integration Settings
In Nectir AI, click the gear icon next to your Workspace name, then select LMS integration in the settings sidebar.
Enter Your Credentials
Fill in the three credential fields one at a time:


-
Canvas instance URL: Enter your Canvas URL (e.g.,
https://yourschool.instructure.com) - API key Client ID: Switch to your Canvas tab and find the Client ID — the number shown under the Details column in the Developer Keys listing. Copy it and paste it into Nectir AI.

- API key Client Secret: Back in Canvas, click Show Key next to the Client ID to reveal the secret. Copy it and paste it into Nectir AI.


Save and Test Connection
Click Save and test connection. You will be redirected to a Canvas OAuth authorization screen.
Click Authorize to grant Nectir AI read-only access to your Canvas data. You will be redirected back to Nectir AI automatically.


Your Canvas API integration is now active. Users can now import their Canvas course into their Assistant’s knowledge base automatically.
Troubleshooting
Connection test fails
Connection test fails
- Verify your Canvas URL is correct and includes
https://(e.g.,https://yourschool.instructure.com) - Confirm the Client ID and Client Secret are copied exactly with no extra spaces
- Check that the developer key is enabled (green toggle) in Canvas Developer Keys
Invalid redirect URI error
Invalid redirect URI error
Ensure the Redirect URI in your Canvas developer key is exactly:Check for trailing spaces, missing characters, or incorrect protocol (
http vs https).Permission errors when importing content
Permission errors when importing content
Verify that all required scopes are enabled on your developer key in Canvas. Either the Read only checkbox should be checked, or the individual scopes listed in Configure API Scopes should be enabled.
Can't find Developer Keys in Canvas
Can't find Developer Keys in Canvas
The Developer Keys page is only available to Canvas administrators at the account level. If you don’t see it in the Admin sidebar, contact your institution’s Canvas administrator to request access or have them create the key for you.
Next Steps
Add from Canvas
Learn how to browse and import Canvas course content into your Assistant’s knowledge base
Canvas LTI Setup
Set up the LTI integration to embed Nectir AI directly inside Canvas courses
