Skip to main content
Instructure Canvas LMS logo

Overview

Add Instructure Canvas LMS to any ModuleX agent or workflow. Learning management system integration for Instructure Canvas — course, assignment, and user management via the Canvas REST API (https://{your-domain}/api/v1).
Categories: Education · Learning Management · Auth: Canvas OAuth Token + Domain · Actions: 5

Authentication

Canvas OAuth Token + Domain

Authenticate using a Canvas access token and your instance domain. Canvas LMS is self-hosted, so both the domain and token are required.
1

Step 1

Log into your Canvas instance.
2

Step 2

Go to Account > Settings > Approved Integrations (or generate a new access token).
3

Step 3

Copy your access token and note your Canvas domain (e.g. myschool.instructure.com).

Required Credentials

Available Actions

Response

Parameters

string
required
The ID of the user whose assignments to list.
string
required
The ID of the course to list assignments from.

Response

Parameters

string
required
The ID of the user whose courses to list.

Response

Parameters

string
required
The ID of the course to search within.
string
required
The search query string.

Response

Parameters

string
required
The ID of the course containing the assignment.
string
required
The ID of the assignment to update.
string
The new name of the assignment.
string
The new description of the assignment (supports HTML).
string
Submission type: online_quiz, none, on_paper, discussion_topic, external_tool, online_upload, online_text_entry, online_url, media_recording, student_annotation.
boolean
Whether to notify students of the update.
integer
Maximum points possible on the assignment.
string
Grading strategy: pass_fail, percent, letter_grade, gpa_scale, points, not_graded.
string
Due date/time in ISO 8601 format (e.g. 2014-10-21T18:48:00Z).
boolean
Whether to omit this assignment from the student’s final grade.
integer
Number of submission attempts allowed (-1 for unlimited).

Response

Limits & Quotas

  • Rate limits: Canvas enforces per-user rate limits (typically 700 requests per 10 minutes for the default configuration, varies by institution).
  • Pagination: List endpoints may return paginated results; current implementation fetches the first page.
  • Error model: Non-2xx responses and timeouts are caught and returned as success=False + error rather than raising.