Connect Canvas to Definable AI

Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms

About Canvas

Canvas is a productivity tool. Connect it to Definable AI with one-click OAuth2 — no API keys or custom code required.

What you can automate with Canvas

Use Definable AI's agent platform to trigger workflows from Canvas, process results with 50+ AI models, and sync data across 900+ connected apps.

Tools & Actions (579 available)

  • Abort Quiz Report Generation: Aborts the generation of a quiz report or removes a previously generated one. Use when you need to cancel a report generation request or clean up an old report.
  • Add conversation message: Tool to add a message to an existing Canvas conversation. Use when sending a follow-up message to a conversation thread with specified recipients.
  • Add course to favorites: Tool to add a course to the current user's favorites. Use when you need to favorite a course for the authenticated user. If the course is already in the user's favorites, nothing happens.
  • Add group to favorites: Tool to add a group to the current user's favorites. Use when you need to mark a group as favorite for the authenticated user. If the group is already in the user's favorites, nothing happens.
  • Add last attended date: Tool to add or update the last attended date for a student enrollment in a course. Use when tracking student attendance by recording the last date a student attended the course.
  • Add recipients to conversation: Tool to add recipients to an existing group conversation. Use when you need to add new participants to an ongoing conversation. Response includes the latest message showing who was added.
  • Add users to content share: Tool to send a previously created content share to additional users. Use when you need to add more recipients to an existing content share.
  • Answer quiz questions: Tool to provide or update answers to quiz questions for a quiz submission. Use when submitting answers for a quiz attempt. Requires a valid validation_token from quiz submission creation and the latest attempt number.
  • Assign unassigned members to group category: Tool to assign unassigned members to groups within a group category. Use when you need to distribute users who are not yet in any group within the category. Returns a Progress object for async tracking by default, or group memberships when sync=true.
  • Batch create overrides in a course: Tool to batch create assignment overrides for multiple assignments in a course. Use when creating multiple overrides at once in a transactional manner (all succeed or none are created). Each override requires assignment_id and one of student_ids, group_id, or course_section_id.
  • Batch retrieve assignment overrides: Tool to batch retrieve assignment overrides in a course. Use when you need to retrieve multiple assignment overrides at once by providing paired lists of override IDs and assignment IDs. Returns null for overrides that were not found or target sections/groups/students not visible to the current user.
  • Bulk update custom gradebook column data: Bulk updates custom gradebook column data for multiple students. Use when you need to set or update content in custom columns for multiple student/column combinations in a single operation.
  • Clear Course Nicknames: Tool to remove all stored course nicknames for the current user. Use when you need to clear all custom course name preferences.
  • Close notification for user: Tool to excuse/close an account notification for the current user. Use when the current user no longer wants to see a specific notification. If the `remove` parameter is set to true, the notification is permanently destroyed for all users (admin action).
  • Conclude, deactivate, or delete an enrollment: Tool to conclude, deactivate, or delete an enrollment in a Canvas course. Use when you need to end or remove a user's enrollment. If the task argument isn't given, the enrollment will be concluded.
  • Copy File to Folder: Copies an existing Canvas file to a specified destination folder. Use when you need to duplicate a file to another location.
  • Copy Folder: Tool to copy a folder to another folder in Canvas. Use when you need to duplicate a folder structure with its contents to a destination folder.
  • Create Bookmark: Creates a new bookmark for the authenticated user. Use when you need to save a shortcut link to a Canvas page or external resource for quick access.
  • Create Calendar Event: Creates a calendar event with options for recurrence (finite `rrule` series only), section-specific timings, and blackout dates within a specified context.
  • Create Course Grading Standard: Tool to create a new grading standard in a Canvas course. Use when you need to define a custom grading scale with grade labels and percentage thresholds for a specific course.
  • Create External Feed: Creates a new external RSS or Atom feed for a Canvas course. Use when you need to import external content into a course feed.
  • Create External Feed for Group: Tool to create a new external RSS or Atom feed for a Canvas group. Use when you need to import external content into a group feed.
  • Create Files: Tool to initiate file upload to Canvas (Step 1 of 3-step process). Use when you need to upload a file to a course, user folder, group, or account. This action returns upload_url and upload_params needed for the actual file upload. After calling this, POST the file data to the upload_url with the returned parameters, then follow any redirect to complete the upload.
  • Create Folder in Group: Tool to create a folder within a Canvas group. Use when you need to organize files in a group context.
  • Create Learning Outcome: Tool to create a new learning outcome in Canvas using GraphQL. Use when you need to define a new learning objective or competency within an outcome group.
  • Create Module: Creates a new organizational module within a specified Canvas LMS course, with options for availability, sequencing, and prerequisites.
  • Create Module Item: Create and return a new module item within a Canvas course module. Use when you need to add content (assignments, pages, quizzes, files, discussions, external links, or subheaders) to an existing module.
  • Create Question Group: Tool to create one or more question groups for a quiz. Use when you need to organize quiz questions into groups for random selection.
  • Create Quiz: Creates a new quiz with various settings in a specified existing Canvas course; `assignment_group_id` applies only to graded quiz types.
  • Create Quiz Report: Tool to create a quiz report in Canvas. Generates either a student analysis or item analysis report for a quiz. If a matching report already exists and is current, it will be returned instead.
  • Create Rubric: Tool to create a rubric in a Canvas course. Use when you need structured assessment criteria and optional association after confirming course context.
  • Create Single Poll: Tool to create a new poll for the current user in Canvas. Use when you need to create a poll with a question and optional description.
  • Create Single Poll Session: Tool to create a new poll session for a poll in Canvas. Use when you need to create a poll session associated with a specific course or course section.
  • Create Subgroup in Course: Creates a new empty subgroup under the outcome group with the given title and description. Use when you need to add a new subgroup to organize outcomes within a course's outcome group hierarchy.
  • Create User Token: Tool to create a new access token for a Canvas user. Use when you need to generate an API access token for authentication purposes.
  • Create Users Custom Data: Tool to create or update custom data for a Canvas user within a specified namespace. Use when you need to store application-specific JSON data for a user. The namespace parameter (ns) is required to prevent data collisions between different applications.
  • Create a content migration for group: Tool to create a content migration in a Canvas group. Use when you need to import content into a group from various sources. If the migration requires a file upload, the actual processing starts once the file upload completes.
  • Create a course: Creates a new course in Canvas within a specified account, with comprehensive configuration options.
  • Create a custom gradebook column: Creates a new custom gradebook column in a course. Use when you need to add custom tracking fields like participation scores or extra credit to the gradebook.
  • Create a group: Tool to create a new community group directly. Use when you need to create a group without specifying a group category. Groups created using this endpoint will be community groups.
  • Create a group category in a course: Creates a new group category within a specified Canvas course. Use when you need to organize student groups for projects, study sessions, or collaborative activities within a course.
  • Create a group set: Tool to create a new group set (group category) in a Canvas course or account. Use when organizing students into project teams or study groups.
  • Create a membership: Tool to join or request to join a group, depending on the join level of the group. Use when you need to add a user to a Canvas group. If the membership or join request already exists, it is simply returned.
  • Create a page for a course: Creates a new wiki page in a specified Canvas course, with options for title, HTML body, editing permissions, publication, and designation as front page (which also requires publication).
  • Create a page for a group: Creates a new wiki page in a specified Canvas group. Use when you need to create documentation, notes, or collaborative content for a group.
  • Create a planner note: Create a planner note for the current user. Use when adding a personal to-do item or reminder to the Canvas planner.
  • Create a planner override: Tool to create a planner override for the current user. Use when marking planner items as complete or dismissing them from the opportunities list.
  • Create a quiz question: Creates a new question for an existing quiz within a course; if `answers` are provided, their structure must align with `question_type`, and any `quiz_group_id` must be valid for an existing group in the quiz.
  • Create a single poll choice: Tool to create one or more poll choices for an existing poll in Canvas. Use when you need to add answer options to a poll.
  • Create a single poll submission: Tool to create a new poll submission for a poll session. Use when submitting a user's choice(s) for an active poll. The poll session must be published before submissions can be created.
  • Create a user content migration: Tool to create a content migration for a Canvas user. Use when you need to import content into a user's files from various sources (zip files, cartridges, etc.). If the migration requires a file upload, the actual processing starts once the file upload completes.
  • Create account notification: Creates a global notification within a Canvas account, ensuring `end_at` is after `start_at` and any specified `notification_roles` are valid.
  • Create an LTI resource link: Creates a new LTI Resource Link in a Canvas course. Use when integrating LTI 1.3 external tools that can be launched or embedded in rich content.
  • Create an assignment: Creates a new assignment within a specified course in Canvas LMS.
  • Create appointment group: Creates a new appointment group in Canvas for schedulable time slots within specified course or group contexts.
  • Create assignment group: Create a new assignment group for a course. Use when you need to add a new assignment group to organize assignments in a Canvas course.
  • Create assignment override: Creates an assignment override to adjust due/unlock/lock dates for an assignment in a course, targeting specific students (requires `title`), a group, or a course section; at least one target (`student_ids`, `group_id`, or `course_section_id`) is required.
  • Create assignment via GraphQL: Tool to create a new assignment in a Canvas course using the GraphQL API. Use when you need to create assignments with detailed configuration options including peer reviews, moderated grading, or assignment overrides.
  • Create blackout date for course: Tool to create a blackout date for the given course context. Use when you need to define a period during which certain activities are restricted or unavailable for a specific course.
  • Create communication channel: Creates a new communication channel (e.g., email, SMS, push) for an existing Canvas user to receive notifications.
  • Create content share: Shares a Canvas content item to specified users, if the sender has necessary permissions and receiver IDs are valid.
  • Create conversation: Use to send messages in Canvas by creating a new conversation or adding to an existing one; an existing conversation with the same recipients (and matching scope/filter, if specified) may be reused unless `force_new` is true.
  • Create conversation via GraphQL: Tool to create a new conversation (message) between users in Canvas via GraphQL. Use when initiating a new conversation thread with specified recipients.
  • Create discussion entry: Tool to create a new entry in a Canvas discussion topic. Use when posting a message with optional attachments to a discussion topic.
  • Create discussion entry (GraphQL): Tool to create a new entry in a Canvas discussion topic via GraphQL. Use when posting a message or reply to a discussion topic with optional file attachments.
  • Create discussion topic: Creates a new discussion topic in a specified Canvas course, allowing comprehensive configuration of its content, type, publication settings, engagement features, and associations.
  • Create discussion topic (GraphQL): Tool to create a new discussion topic in a course or group using the Canvas GraphQL API. Use when creating discussion topics with the GraphQL interface.
  • Create ePub export: Tool to initiate an ePub export for a course. Use when you need to export course content in ePub format. Track progress using the Progress API URL returned in the response.
  • Create enrollment: Enrolls a user in a Canvas course with a specified role and status; `associated_user_id` is required if `enrollment_type` is 'ObserverEnrollment'.
  • Create external tool: Tool to create an external tool in a Canvas account. Use when you need to integrate an LTI tool or external application. If a client_id is supplied, Canvas will attempt to create a context external tool using the LTI 1.3 standard.
  • Create external tool in course: Tool to create an external tool in the specified course. Use when you need to integrate an LTI tool or external application within a course context. If a client_id is supplied, Canvas will attempt to create a context external tool using the LTI 1.3 standard.
  • Create folder: Tool to create a folder in the specified context. Use when you need to create a new folder for organizing files in Canvas for a user.
  • Create group discussion topic: Tool to create a new discussion topic in a Canvas group. Use when creating a discussion for group collaboration or communication.
  • Create group in set: Tool to create a new group within a Canvas group set. Use when adding a new group to an existing group category.
  • Create module (GraphQL): Tool to create a new module in a Canvas course via GraphQL. Use when creating a module with basic settings (name) through the GraphQL API.
  • Create or Update Timetable Events: Tool to create or update timetable events for a course or course section. Use when you need to set up a complete schedule of events directly, rather than generating them from a timetable pattern. If a code is provided for an event, existing events with that code will be updated; otherwise, new events are created.
  • Create quiz submission (start quiz): Tool to start taking a quiz by creating a quiz submission. Use when a student needs to begin a quiz-taking session. Returns the quiz submission with workflow_state indicating the session status (e.g., 'preview' for teacher previews).
  • Create submission draft: Tool to create a draft submission for an assignment in Canvas via GraphQL. Use when a student needs to save work in progress before final submission, or when pre-populating submission content.
  • Create user inbox label: Tool to create new user inbox labels in Canvas. Use when organizing inbox messages with custom labels.
  • Create users self content shares: Tool to create a content share for the authenticated user (self). Use when the authenticated user wants to share course content with other users.
  • Create/Link an outcome in course: Tool to link an existing outcome or create a new outcome within a course outcome group. Use when associating outcomes with outcome groups in a Canvas course context. If outcome_id is provided, links the existing outcome; otherwise creates a new outcome with the provided details (title, description, ratings, mastery_points).
  • Delete a calendar event: Delete a calendar event from Canvas and return the deleted event details. Use when you need to remove a calendar event, optionally providing a cancellation reason for participants.
  • Delete a communication channel: Deletes an existing communication channel for a user. Use when you need to remove an email, SMS, or push notification channel from a user's account.
  • Delete a custom gradebook column: Permanently deletes a custom gradebook column and its associated data from a course. This action cannot be undone.
  • Delete a discussion entry: Tool to delete a discussion entry. The entry must have been created by the current user, or the current user must have admin rights to the discussion. Use when removing an entry from a discussion topic. The entry will be marked deleted, and user_id and message will be cleared.
  • Delete a folder: Permanently deletes an existing folder specified by its unique ID.
  • Delete a group: Deletes a group and removes all members. Use when you need to permanently delete a Canvas group by its ID.
  • Delete a group discussion entry: Tool to delete a discussion entry in a group discussion. The entry must have been created by the current user, or the current user must have admin rights to the discussion. Use when removing an entry from a group discussion topic. The entry will be marked deleted, and user_id and message will be cleared.
  • Delete a planner note: Delete a planner note for the current user. Use when removing a personal to-do item from the Canvas planner.
  • Delete a planner override: Delete a planner override for the current user. Use when removing customizations or dismissals from planner items.
  • Delete a poll choice: Tool to delete a poll choice from a Canvas poll. Use when you need to remove a specific choice option from an existing poll. Returns a 204 No Content response if the deletion was successful.
  • Delete a poll session: Tool to permanently delete a poll session from a poll. Use when you need to remove a poll session. Returns a 204 No Content response on successful deletion.
  • Delete an access token: Tool to delete an access token for a Canvas user. Use when you need to revoke or remove an API access token. The ID can be the actual database ID of the token, or the 'token_hint' value.
  • Delete an assignment: Soft-deletes a specific assignment within a course, returning the assignment object with its `workflow_state` updated to 'deleted'.
  • Delete an external tool: Remove the specified external tool from a course. Use when you need to delete an external tool integration.
  • Delete an outcome group (courses): Deletes an outcome group from a course. Deleting an outcome group also deletes all descendant outcome groups and outcome links. Linked outcomes are only deleted if all links to the outcome were deleted. Aligned outcomes cannot be deleted; if all remaining links to an aligned outcome are in this group's descendants, the deletion will fail.
  • Delete appointment group: Permanently deletes an existing appointment group by its ID; associated appointments may also be canceled or affected.
  • Delete assignment override: Deletes an assignment override and returns its former details. Use when you need to remove date exceptions or special accommodations that were previously set for specific students, groups, or sections.
  • Delete blackout date: Tool to delete a blackout date for the given course context. Use when you need to remove a previously scheduled blackout period.
  • Delete bookmark: Deletes a bookmark from the current user's bookmarks. Use when you need to remove a saved bookmark.
  • Delete comment bank item: Tool to delete a comment bank item from Canvas. Use when you need to remove a previously saved grading comment that is no longer needed.
  • Delete communication channel by type and address: Deletes a communication channel by type and address. Use when you need to remove a specific email, SMS, or push notification channel from a user's account using the channel type and address instead of the channel ID.
  • Delete conversation messages: Tool to delete specific messages from a Canvas conversation. Use when you need to remove one or more messages from a conversation thread by their message IDs.
  • Delete conversations: Tool to delete one or more Canvas conversations. Use when permanently removing conversation threads. Returns the deleted conversation IDs on success.
  • Delete custom data: Tool to delete custom user data for a given namespace. Use when you need to remove arbitrary JSON data stored for a user in a specific namespace. Without a scope parameter, all custom data in the namespace is deleted.
  • Delete custom grade status: Tool to delete a custom grade status from Canvas. Use when removing a custom grade status that is no longer needed.
  • Delete discussion entry: Tool to delete a discussion entry. Use when removing an entry from a discussion. Returns the deleted entry details.
  • Delete discussion topic (GraphQL): Tool to delete a discussion topic in Canvas via GraphQL. Returns the deleted discussion topic ID upon successful deletion.
  • Delete external feed from group: Deletes the external feed from the specified group. Use when removing an RSS/Atom feed that was previously configured for the group.
  • Delete file: Tool to remove a file from Canvas. Use when comprehensive, irretrievable destruction of the file is needed. Set `replace` to true to destroy file previews and replace contents with a placeholder (requires special permissions).
  • Delete group discussion topic: Deletes the discussion topic from a group. This will also delete the assignment, if it's an assignment discussion.
  • Delete messages from conversation: Tool to delete messages from a Canvas conversation. Note that this only affects this user's view of the conversation. If all messages are deleted, the conversation will be removed as well.
  • Delete outcome links: Tool to delete links between outcomes and content in Canvas. Use when removing outcome associations from course content.
  • Delete page for a group: Deletes a wiki page from a Canvas group. Use when you need to remove a specific page from a group's wiki.
  • Delete poll: Permanently deletes the poll identified by `id`; returns 204 No Content if successful.
  • Delete quiz: Permanently deletes the quiz identified by `quiz_id` from the course identified by `course_id`; this action cannot be undone.
  • Delete submission draft: Tool to delete a submission draft in Canvas via GraphQL. Use when removing a draft submission that has not been finalized.
  • Delete user custom data scope: Tool to delete custom user data at a specific scope path. Use when you need to remove data stored at a particular location within the JSON structure for a user's custom data namespace.
  • Delete user inbox label: Tool to delete user inbox labels in Canvas. Use when you need to remove one or more custom inbox labels from the current user's inbox.
  • Delete users self content shares: Removes a content share from the user's list. Note that this does not delete other users' copies of the content share.
  • Duplicate group discussion topic: Tool to duplicate an existing discussion topic in a Canvas group. Use when you need to create a copy of a group discussion topic with all its settings and content.
  • Edit User: Modifies an existing Canvas user's profile and settings. Use to update name, email, timezone, bio, pronouns, and other profile fields. To modify login credentials, use the logins API instead.
  • Edit a conversation: Tool to update attributes for a single conversation in Canvas. Use when you need to star/unstar, subscribe/unsubscribe, or change the workflow state (read, unread, archived) of a specific conversation.
  • Edit a quiz: Modifies an existing Canvas quiz; only attributes with provided values in the request are updated.
  • Edit assignment: Updates an existing assignment in a Canvas course (identified by `course_id` and `assignment_id`); only attributes explicitly provided in the request are modified.
  • Export content: Initiates an asynchronous export of course content from Canvas. Returns an export job ID and progress URL that can be used to track the export status and retrieve the exported file once complete. Supports exporting full courses (Common Cartridge), quizzes (QTI), or files (ZIP).
  • Export group content: Tool to begin a content export job for a group. Groups only support ZIP format exports of files and folders. Returns an export job with a progress_url to track the export status using the Progress API. Once complete, the exported file can be downloaded via the attachment URL.
  • Export user content: Tool to begin a content export job for a user. Use when you need to export user content from Canvas in Common Cartridge, QTI, or ZIP format. Track progress using the Progress API via the progress_url returned in the response. Once complete, download the exported file via the attachment URL.
  • Fetch Data: Fetches a specific category of Canvas data (e.g., accounts, courses, users) by setting exactly one `get_*` boolean flag to true and providing any associated IDs. Supports pagination with per_page (default 100, max 100) and page (default 1) parameters to fetch large datasets.
  • Find recipients: Find valid recipients (users, courses and groups) that the current user can send messages to. Use when searching for message recipients or looking up specific users/contexts by id.
  • Get Account Notifications: Tool to retrieve global account notifications for the current user in Canvas LMS. Use when you need to check announcements, alerts, or system-wide messages that admins have posted to the account.
  • Get Accounts That Users Can Create Courses In: Retrieves Canvas accounts where the current user has permission to create courses; typically returns results only for administrators.
  • Get All Outcome Groups for Context: Tool to retrieve all outcome groups for an account context in Canvas. Use when you need to list learning outcome groups.
  • Get All Outcome Links for Context: Retrieves all outcome links for a Canvas account context. Use when you need to fetch the relationships between outcomes and outcome groups within an account.
  • Get All Outcome Links for Context (Courses): Retrieves all outcome links for a Canvas course context. Use when you need to fetch the relationships between outcomes and outcome groups within a course.
  • Get All ePortfolios for User: Tool to retrieve all ePortfolios for a specified user from Canvas LMS. Use when you need to list a user's ePortfolio collection.
  • Get Assignment Rubric: Fetches the detailed rubric for a specified assignment within a Canvas course; fails if the assignment has no associated rubric.
  • Get Audit Logs: Tool to access Canvas audit logs for a specified asset using the GraphQL API. Use when retrieving mutation logs to track changes and operations performed on accounts, courses, or users.
  • Get Authentication Provider: Retrieves a specific authentication provider configuration for a Canvas account. Use when you need to view the configuration details of a specific authentication provider.
  • Get Blueprint Subscription Migrations: Retrieves blueprint subscription migrations for a Canvas course. Use when you need to list sync operations from a blueprint course to an associated course.
  • Get Bookmark: Retrieves the details for a specific bookmark by ID. Use when you need to fetch information about a particular bookmark for the authenticated user.
  • Get Course Activity: Retrieves daily activity analytics, such as page views and participation events, for a specified Canvas course.
  • Get Course Permissions: Returns permission information for the calling user in the given course. Use when you need to check what actions the authenticated user is authorized to perform in a specific course.
  • Get Current User: Retrieves detailed information about the currently authenticated user from the Canvas LMS.
  • Get Custom Color: Tool to retrieve the custom color that a user has saved for a specific course or context in Canvas. Use when you need to fetch user-specific color preferences for a course or other context.
  • Get Custom Colors: Tool to retrieve all custom colors saved by a user in Canvas LMS. Use when you need to fetch color customizations for courses or other Canvas objects.
  • Get Dashboard Positions: Tool to retrieve all dashboard positions saved for a user. Use when you need to see the current order of dashboard cards for a specific user.
  • Get Enrollment Invitations: Tool to retrieve pending enrollment invitations for the current user. Use when you need to check course invitations that the user has not yet accepted or rejected.
  • Get Folder By ID: Retrieves the details for a specific folder by its ID. Use 'root' as the ID to get the root folder for a context.
  • Get Full Topic for Groups: Tool to retrieve the full cached structure of a group discussion topic. Use when you need all entries, their authors, and message bodies in a hierarchical format. Note: May require that the user has posted in the topic; if required and the user has not posted, will respond with 403 Forbidden.
  • Get Global Outcome Group: Retrieves a global outcome group by ID from Canvas. Use when you need to get details about a specific global learning outcome group.
  • Get Group Activity Stream Summary: Retrieves a summary of the current user's group-specific activity stream. Returns counts and unread counts for different activity types within the specified group.
  • Get Group Folder: Retrieves the details for a folder within a Canvas group. Use 'root' as the folder ID to get the root folder for the group context.
  • Get Group Permissions: Returns permission information for the calling user in the given group. Use when you need to check what actions the authenticated user is authorized to perform in a specific group.
  • Get Internal Settings: Tool to retrieve all internal settings from Canvas using the GraphQL API. Use when you need to query system-level configuration settings.
  • Get Kaltura config: Tool to return the config information for the Kaltura plugin in JSON format. Use when you need to check Kaltura integration status or retrieve Kaltura service endpoints.
  • Get Legacy Node: Tool to fetch Canvas objects using REST-style numeric identifiers via GraphQL. Use when you have a legacy numeric ID and need to retrieve the corresponding object data through the GraphQL API.
  • Get Module Item: Tool to retrieve information about a specific module item by ID using the Canvas GraphQL API. Use when fetching details about a module item including its content, parent module, and metadata.
  • Get Module Item Sequence: Tool to find the module item sequence for a given asset in a Canvas course. Returns the current item, previous and next items in the sequence, and applicable mastery path rules. Use when you need to understand the navigation context of a course asset.
  • Get Outcome Results: Tool to get outcome results for users and outcomes in a course context. Use when you need to retrieve learning outcome assessment results for students.
  • Get Page for a Course: Retrieves a specific content page (wiki or content page) by its URL or numeric ID from a specified Canvas course.
  • Get Quiz Statistics: Tool to fetch the latest quiz statistics for a Canvas quiz. Use when you need statistical data about quiz submissions, including per-question metrics and aggregate submission statistics.
  • Get Quota Information: Retrieves the total and used storage quota for a Canvas user. Use when you need to check storage space availability or usage.
  • Get Root Outcome Group for Course: Retrieves the root outcome group for a specified course context. Use when you need to access the top-level outcome group hierarchy for a course.
  • Get Rubric Assessments Read State: Tool to check whether new rubric comments/grading made on a submission have been seen by the student being assessed. Use when you need to verify if a student has reviewed their rubric feedback.
  • Get Rubrics Upload Template: Tool to retrieve a CSV template file for importing rubrics into Canvas. Use when you need the template format for bulk rubric imports.
  • Get Single User: Retrieves detailed information for a single user in a Canvas course. Accepts the same include[] parameters as the list users endpoint and returns a single user with the same fields.
  • Get Status of Last Report: Tool to retrieve the status of the last generated report for a specific course in Canvas. Use when you need to check the completion status, download URL, or progress of a course report.
  • Get Unread Count: Tool to get the number of unread conversations for the current user. Use when you need to check how many unread conversations the authenticated user has.
  • Get User Avatars: Tool to retrieve available avatar options for a Canvas user. Use when you need to list all avatar choices for a user, including uploaded images and default options.
  • Get User Profile: Retrieves profile information for an existing Canvas user.
  • Get User Token: Retrieves detailed information about a specific access token for a Canvas user. Use when you need to inspect token properties like expiration, scopes, or workflow state.
  • Get Users Custom Data Scope: Tool to retrieve custom data stored for a Canvas user within a specified namespace and optional scope. Use when you need to fetch application-specific data that was previously stored for a user. The namespace parameter (ns) is required to prevent data collisions between different applications.
  • Get a content migration for group: Tool to retrieve data on an individual content migration from a Canvas group. Use when you need to check the status, progress, or details of a specific group migration.
  • Get a content migration for user: Tool to retrieve data on an individual content migration from a Canvas user. Use when you need to check the status, progress, or details of a specific user migration.
  • Get a group: Retrieves detailed information for a single Canvas group by its ID. Use when you need to get information about a specific group including optional permissions and tab configurations.
  • Get a late policy: Tool to retrieve the late policy for a Canvas course. Use when you need to check the course's policy for handling late and missing submissions.
  • Get a quiz report: Retrieves the data for a single quiz report. Use when you need to check the status or download a previously generated quiz report.
  • Get a single account: Retrieve information on an individual account by ID or SIS account ID. Use when you need detailed account information for a specific account.
  • Get a single assignment override: Retrieves details of the assignment override with the given id for a specific assignment in a course.
  • Get a single conversation: Tool to retrieve detailed information for a single conversation including all messages and extended participant information. Use when you need complete conversation data beyond what's available in list responses.
  • Get a single course: Retrieves detailed information for a specific Canvas course using its `course_id`, which must be valid, and allows for including additional data fields in the response via the `include` parameter.
  • Get a single course from account: Tool to retrieve information on a single course from a Canvas account. Use when you need to get detailed course information including optional data like teachers, term, permissions, or course progress.
  • Get a single discussion topic: Tool to retrieve detailed information about a single discussion topic in a Canvas course. Use when you need to fetch data for a specific discussion topic by its ID.
  • Get a single external tool: Tool to retrieve detailed information for a specific external tool within a Canvas course. Use when you need to get configuration details, settings, or metadata for an external tool in a course context.
  • Get a single external tool: Tool to retrieve detailed information for a specific external tool within a Canvas account. Use when you need to get configuration details, settings, or metadata for an external tool.
  • Get a single grading standard in course context: Retrieves a single grading standard for the given course context that is visible to the user. Use when you need to view the complete configuration and grading scheme of a specific grading standard within a course.
  • Get a single group: Tool to retrieve data for a single Canvas group by its group_id. Use when you need to get detailed information about a specific group, including optional permissions and tabs.
  • Get a single group discussion topic: Tool to retrieve detailed information about a single discussion topic within a Canvas group. Use when you need to fetch data for a specific discussion topic by its ID from a group context.
  • Get a single group membership: Tool to retrieve a single group membership by its membership_id or user_id. Use when you need to check membership status, moderator privileges, or workflow state for a specific user in a group.
  • Get a single group membership by user ID: Tool to retrieve a single group membership by user_id. Use when you need to check membership status, moderator privileges, or workflow state for a specific user in a group.
  • Get a single poll: Tool to retrieve a single poll by its ID from Canvas. Use when you need to fetch detailed information about a specific poll including its question, description, creation time, and aggregated results.
  • Get a single poll choice: Tool to retrieve a single poll choice by its ID from a Canvas poll. Use when you need to fetch detailed information about a specific poll choice option including its text, position, and correctness status.
  • Get a single quiz: Retrieves detailed information for a specific quiz in a Canvas course. Use when you need to view quiz settings, questions count, due dates, or other quiz metadata.
  • Get a user's most recently graded submissions: Retrieves a user's most recently graded submissions. Use 'self' as the user ID to get graded submissions for the authenticated user.
  • Get account (GraphQL): Tool to retrieve account information by ID or SIS ID using the Canvas GraphQL API. Use when you need to fetch account details via GraphQL interface.
  • Get account help links: Retrieves help links configured for the specified Canvas account. Use when you need to access help resources available to users in an account.
  • Get accounts outcome groups: Tool to retrieve a specific outcome group from a Canvas account. Use when you need to fetch details about a specific outcome group including its title, description, parent group, and management URLs.
  • Get aligned assignments for an outcome: Retrieves outcome alignments for a student or assignment within a course. Use when you need to see which assignments are aligned to learning outcomes, optionally filtered by student or assignment.
  • Get all outcome groups for course: Tool to retrieve all outcome groups for a course context in Canvas. Use when you need to list learning outcome groups for a specific course.
  • Get all peer reviews for section assignment: Retrieves all peer reviews for a specific assignment within a Canvas section. Use when you need to view all peer review assignments for an entire section's assignment.
  • Get all peer reviews for section submission: Retrieves all peer reviews for a specific submission within a Canvas section assignment. Use when you need to view peer reviewers assigned to a student's submission in a specific section.
  • Get all peer reviews for submission: Retrieves all peer reviews for a specific submission within a Canvas assignment. Use when you need to view peer reviewers assigned to a student's submission.
  • Get all users: Retrieves a list of users for a specified Canvas `account_id` (use 'self' for the current user's root account), supporting filtering, sorting, and pagination.
  • Get an assignment group: Retrieves the assignment group with the given id from a Canvas course. Use when you need to get details about a specific assignment group, including its name, position, weight, and optionally associated assignments.
  • Get assignment: Retrieves detailed information for a specific assignment within a given course in Canvas.
  • Get assignment (GraphQL): Tool to retrieve information about a specific assignment by ID using the Canvas GraphQL API. Returns assignment details including submissions connection.
  • Get assignment group: Tool to retrieve information about a specific assignment group by ID. Use when you need to fetch details about an assignment group including its name, position, weight, and state.
  • Get assignment submission summary: Retrieves submission summary counts for a specific assignment. Returns the number of submissions categorized as graded, ungraded, and not submitted based on gradeable students.
  • Get assignments for a specific course (requires course_id): Retrieves assignments for a specific Canvas course. IMPORTANT: This action requires a course_id parameter - it does NOT retrieve assignments globally across all courses. You must first obtain a valid course_id (e.g., from CANVAS_LIST_COURSES) and provide it to retrieve that course's assignments.
  • Get brand variables: Tool to retrieve all brand configuration variables for the Canvas account. Use when you need to access theme colors, logos, watermarks, or other branding customization settings.
  • Get content share: Retrieves detailed information about a single content share by ID for a specified user. Use when you need to view the details of a specific shared content item.
  • Get content shares unread count: Tool to retrieve the count of unread content shares for the authenticated user. Use when you need to check how many content shares have not been read yet.
  • Get course: Tool to retrieve information about a specific course by ID using the Canvas GraphQL API. Use when querying course details with either GraphQL or numeric identifiers.
  • Get course activity stream: Tool to retrieve the current user's course-specific activity stream, paginated. Use when you need to see recent activities in a specific course such as new discussions, announcements, assignments, and submissions.
  • Get course activity stream summary: Tool to retrieve a summary of the current user's course-specific activity stream. Returns aggregated counts by activity type (discussions, conversations, messages, etc.) for the specified course. Use when you need an overview of activity in a specific course.
  • Get course nickname: Retrieves the nickname for a specific Canvas course. Use when you need to get the user-defined alternate name for a course.
  • Get course root folder: Tool to retrieve the root folder for a course. Use when you need to access the root folder from a course context by using 'root' as the folder identifier.
  • Get course settings: Tool to retrieve settings for a specific Canvas course. Use when you need to check configuration options like student permissions, grading settings, or display preferences for a course.
  • Get courses (GraphQL): Tool to get all courses viewable by the current user using the Canvas GraphQL API. Use when retrieving the list of courses accessible to the authenticated user.
  • Get courses folders by path: Tool to retrieve folder hierarchy by resolving a path within a Canvas course. Use when you need to traverse a folder path or verify a folder exists at a specific location.
  • Get courses outcome groups: Retrieves a specific outcome group for a course. Use when you need to fetch detailed information about an outcome group.
  • Get courses preview HTML: Tool to retrieve sanitized preview of HTML content for a Canvas course. Use when you need to validate or preview how HTML content will be rendered in Canvas before publishing.
  • Get current grades: Fetches current, aggregated grade data from Canvas analytics for a specified account ID.
  • Get department level completed grades: Retrieves the distribution of final grades (0-100, binned to whole numbers) for all completed courses in a Canvas account, where each data point represents one student's final grade in one course.
  • Get department level current statistics: Fetches a snapshot of current numerical statistics for a Canvas account, requiring its valid ID.
  • Get department level term statistics: Retrieves department-level statistics for a specific academic term, including counts of courses, teachers, students, discussion topics, media objects, attachments, and assignments. Requires the Canvas Analytics feature to be enabled.
  • Get department-level completed statistics: Retrieves department-level numeric statistics for all completed (concluded) courses within the default term for a specified Canvas account. Returns aggregate counts including courses, subaccounts, enrollments, discussion topics, media objects, attachments, and assignments. Note: Requires Canvas Analytics to be enabled on the instance.
  • Get document annotations read state: Retrieves the read state of document annotations for a student's submission. Use when checking if a student has viewed feedback annotations on their submitted document.
  • Get enrollment by ID: Retrieves a specific enrollment by its ID within a given account.
  • Get feature flag for account: Tool to retrieve a specific feature flag for a given Canvas account. The flag may be defined on the account, or it may be inherited from a parent account. Check context_id and context_type fields to determine the source; if these fields are missing, the flag represents the global Canvas default.
  • Get feature flag for course: Get the feature flag that applies to a given Course. The flag may be defined on the course, or it may be inherited from a parent account. Check the context_id and context_type of the returned object to determine which is the case.
  • Get file: Tool to retrieve detailed metadata for a specific Canvas file by its ID. Use when you need information about a single file including its name, size, content type, URLs, and optionally the user who uploaded it.
  • Get folder: Retrieves details for a specific folder within a Canvas course. Use 'root' as the folder ID to get the root folder for the course context.
  • Get gradebook history days: Retrieves a chronological list of dates with grading activity and the active graders for a specified course.
  • Get group activity stream: Tool to retrieve the current user's group-specific activity stream, paginated. Use when you need to see recent activities in a specific group such as new discussions, announcements, and other group-related activities.
  • Get groups preview HTML: Tool to process and sanitize HTML content for a Canvas group. Use when you need to preview or validate HTML content before displaying it in a group context. Canvas will apply security filters and sanitization to the provided HTML.
  • Get learning outcome: Tool to retrieve learning outcome information by ID using the Canvas GraphQL API. Use when you need to fetch details about a specific learning outcome including its title and description.
  • Get learning outcome group: Tool to retrieve learning outcome group information by ID via GraphQL. Use when you need to fetch details about a specific learning outcome group including its title and description.
  • Get manually-created courses sub-account: Tool to retrieve the manually-created courses sub-account for the domain root account. Use when you need to identify the sub-account that contains courses created manually (as opposed to SIS-imported courses).
  • Get my inbox settings: Tool to retrieve inbox settings for the current user in Canvas. Use when you need to check the authenticated user's signature settings or out-of-office configuration.
  • Get next appointment: Retrieves the next available appointment from Canvas appointment groups. Returns a single-element array if an appointment is available, or an empty array if none are available.
  • Get node by ID: Tool to fetch Canvas objects by their GraphQL global identifier using the node query. Follows the Relay Object Identification spec and works for most Canvas object types including courses, users, assignments, and more.
  • Get notification preference: Fetches the notification preference for a specific notification on a given communication channel. Use to check how often a user wants to receive a particular type of notification.
  • Get notification preference by type and address: Fetches the notification preference for a specific notification on a given communication channel using channel type and address. Use when you need to check how often a user receives notifications for a particular event type on a specific communication channel.
  • Get outcome calculation method: Tool to retrieve outcome calculation method information by ID using the Canvas GraphQL API. Use when you need to fetch details about how outcomes are calculated for assessments.
  • Get outcome proficiency (GraphQL): Tool to retrieve outcome proficiency information for an account using the Canvas GraphQL API. Use when you need to fetch proficiency ratings and configuration for learning outcomes via GraphQL interface.
  • Get outcome result rollups: Tool to retrieve outcome result rollups for users and outcomes in a specified course context. Use when you need to analyze learning outcome performance data, either for individual users or as a course aggregate.
  • Get proficiency ratings for course: Retrieves course-level proficiency ratings for learning outcomes. If not defined for the requested course, it will return proficiency ratings from the account or nearest super-account with ratings defined. Use when you need to view the performance level definitions used for grading outcomes in a specific course.
  • Get public inline preview URL: Tool to determine the URL for inline preview of a Canvas file. Use when you need to access the public URL of a file.
  • Get quiz submission: Tool to get the quiz submission for the current user in a specific quiz. Use when you need to retrieve submission details for the authenticated user.
  • Get quiz submissions: Retrieves all submissions for a specific quiz within a course; ensure `course_id` and `quiz_id` are valid and the quiz belongs to the course.
  • Get quota information for group: Returns the total and used storage quota for the group. Use this to check available storage space and monitor usage for a specific group.
  • Get received content shares: Retrieves content shares received by the authenticated user. Returns a paginated list of content that other users have shared with you. Only linked observers and administrators may view other users' content shares.
  • Get report status: Retrieves the status of a previously initiated report in a Canvas account, specified by its type and ID.
  • Get rubric: Tool to retrieve rubric information by ID using the Canvas GraphQL API. Use when you need to fetch detailed rubric data including criteria, points, and configuration settings.
  • Get running batches: Tool to retrieve any currently running conversation batches for the current user. Use when checking the status of bulk private messages that were sent asynchronously.
  • Get section assignment submission summary: Retrieves submission summary counts for a specific assignment within a section. Returns the number of submissions categorized as graded, ungraded, and not submitted based on gradeable students in the section.
  • Get section information: Retrieves detailed information for a specific Canvas section within a course. Use when you need section details including optional student lists, enrollment data, or permissions.
  • Get section information by ID: Retrieves detailed information for a specific Canvas section by section ID alone. Use when you have the section ID but not the course ID, or when you need section details with optional student lists, enrollment data, or permissions.
  • Get sessionless launch URL for external tool: Returns a sessionless launch URL for an external tool in Canvas. Prefers the resource_link_lookup_uuid parameter, but defaults to id, url, or launch_type if not provided. Use when you need to generate a launch URL for an external tool without requiring a user session.
  • Get sessionless launch URL for external tool in course: Returns a sessionless launch URL for an external tool in a Canvas course. Prefers the resource_link_lookup_uuid parameter, but defaults to id, url, or launch_type if not provided. Use when you need to generate a launch URL for an external tool in a specific course without requiring a user session.
  • Get single calendar event: Tool to retrieve a single calendar event or assignment by ID from Canvas. Use when you need detailed information about a specific calendar item.
  • Get single quiz submission: Tool to retrieve a single quiz submission by ID. Use when you need details about a specific student's quiz attempt. Returns submission status, score, timing, and optionally related assignment, quiz, or user data.
  • Get single submission: Retrieves a specific submission for an assignment made by a particular user within a designated course.
  • Get single submission by section: Retrieves a specific submission for an assignment made by a particular user within a designated section. Use when you have section_id instead of course_id.
  • Get sub-accounts of an account: List accounts that are sub-accounts of the given account. Use when you need to retrieve the organizational hierarchy of Canvas accounts.
  • Get submission: Tool to retrieve submission information by ID using the Canvas GraphQL API. Use when you need to fetch submission details including state, attempt number, and associated user/assignment data.
  • Get submission files: Retrieves files from a student's Canvas assignment submission, processing text, binary, and ZIP files, and providing S3 download URLs if S3 integration is active and uploads are successful.
  • Get term: Tool to retrieve information about a specific academic term by ID using the Canvas REST API. Use when you need to get details about an enrollment term.
  • Get term grade data: Retrieves department-level aggregated grade data for a specific academic term within a Canvas account.
  • Get terms of service: Tool to retrieve the terms of service for a Canvas account. Use when you need to access the terms of service content, acceptance requirements, or registration settings for an account.
  • Get uploaded media folder for user: Tool to retrieve the details for a designated upload folder that the user has rights to upload media to, creating it if it doesn't exist. Use when you need to access or manage the media upload folder for a specific course.
  • Get uploaded media folder for user (groups): Tool to retrieve the details for a designated upload folder that the user has rights to upload media to within a group, creating it if it doesn't exist. Use when you need to access or manage the media upload folder for a specific group.
  • Get user activity stream summary: Tool to retrieve a summary of the current user's global activity stream. Returns aggregated counts by activity type (discussions, conversations, messages, etc.) across all courses. Use when you need an overview of the user's activity across their entire Canvas account.
  • Get user assignment analytics: Fetches detailed assignment-level analytics for a specific student in a designated course, including submission details and class performance statistics.
  • Get user content export: Tool to retrieve information about a specific content export job for a user. Use when you need to check the status of a user's export and get the download URL when the export completes.
  • Get user course progress: Retrieves the academic progress of a specific user within a given course.
  • Get user file: Tool to retrieve detailed metadata for a specific file owned by a user. Use when you need information about a file in a user's context, including its name, size, content type, URLs, and optionally the user who uploaded it.
  • Get user folder: Tool to retrieve details for a specific folder in a user's Canvas file space. Use 'root' as the folder ID to get the root folder, or 'self' as user_id for the current authenticated user.
  • Get user migration issue: Tool to retrieve detailed information about a specific migration issue for a user in Canvas. Use when you need to investigate issues that occurred during a user's content migration process.
  • Get user participation analytics: Retrieves page view activity and participation details for a specific student enrolled in a designated course.
  • Get user's self content shares: Retrieves a specific content share by ID for the authenticated user. Use when you need detailed information about a single content share.
  • Get users self files: Tool to retrieve all files for the currently authenticated user. Use when you need to list files in the user's personal file storage. Supports filtering by content type, searching by filename, and sorting options.
  • Get visible course navigation tools: Tool to get external tools with course_navigation placement that are visible to the requesting user. Use when you need to see which external tools appear in the course navigation menu for one or more courses.
  • Get visible course navigation tools: Retrieves external tools with course_navigation placement that are visible in the course navigation for a specific course. Use when you need to see which external tools appear in the course navigation menu for a given course.
  • Grade or comment on a submission: Updates a student's assignment submission with a grade, comment, sticker, or status change; requires `course_id`, `assignment_id`, `user_id`, and at least one update field.
  • Grade or comment on submission (sections): Update grades and/or add comments to a student's assignment submission. Use when you need to provide feedback or scoring. Requires permission to manage grades when updating grades or rubric assessments.
  • Hide all stream items: Tool to hide all activity stream items for the current user. Use when the user wants to clear their entire activity stream.
  • Hide assignment grades for sections: Tool to hide assignment grades for specific sections in Canvas. Use when you need to conceal grades from students in particular course sections, typically during grading periods or before releasing final grades.
  • Hide stream item: Tool to hide a stream item from the user's activity stream. Use when you want to remove a specific activity item from view.
  • Import an outcome group (courses): Tool to import an outcome group into a Canvas course. Creates a new subgroup with the same title and description as the source, then creates links to the same outcomes and recursively imports subgroups. Use when duplicating outcome groups within or across courses. Set async=true for large imports to track progress.
  • Invite others to a group: Tool to send invitations to all supplied email addresses which will allow the receivers to join the group. Use when you need to add new members to a Canvas group via email invitation.
  • Leave a group: Tool to leave a group by removing the specified membership. Use when you need to remove a user from a group they are allowed to leave. Note: Some groups, such as sets of course groups created by teachers, cannot be left.
  • Leave group: Tool to leave a group if allowed. Use when a user needs to exit a group membership. Note that some groups, such as course groups created by teachers, cannot be left by members.
  • List Accounts for Course Admins: Retrieves Canvas accounts visible to the current user due to their course-level administrative roles; no request parameters are needed.
  • List Announcements: Tool to retrieve paginated list of announcements for specified courses and date range. Use when you need to fetch course announcements with optional filtering by dates and inclusion of additional context.
  • List Authentication Events for User: Tool to list authentication events (logins and logouts) for a given user from Canvas LMS audit logs. Use when you need to track user authentication activity or investigate login/logout history. Events are stored for one year and returned in descending chronological order.
  • List Available Reports: Lists available reports (including those that can be or have been generated) for a valid Canvas account ID.
  • List Available Tabs for User: Tool to retrieve a paginated list of navigation tabs available in a user context. Use when you need to discover what tabs (like Home, Assignments, Grades, etc.) are accessible for a specific user.
  • List Available Tabs for a Course: Tool to retrieve navigation tabs for a Canvas course. Use when you need to see available navigation options for a specific course.
  • List Available Tabs for a Course: Tool to retrieve navigation tabs for a Canvas course. Use when you need to see available navigation options for a specific course.
  • List Available Tabs for a Group: Tool to retrieve navigation tabs for a Canvas group. Use when you need to see available navigation options for a specific group.
  • List Blueprint Imports: Tool to list blueprint migrations imported into a course associated with a blueprint. Use when you need to see a paginated list of sync operations from a blueprint course to an associated course, starting with the most recent.
  • List Bookmarks: Returns the paginated list of bookmarks for the authenticated user. Use when you need to retrieve all bookmarks saved by the current user.
  • List Canvas accounts: Retrieves Canvas accounts accessible to the authenticated user (typically only account administrators receive non-empty results; students and teachers usually get empty lists).
  • List Conferences for Current User: Tool to retrieve the paginated list of conferences for all courses and groups the current user belongs to. Use when you need to get conferences for the authenticated user.
  • List Conversations: Tool to retrieve the paginated list of conversations for the current user, most recent ones first. Use when you need to fetch user conversations with optional filtering by scope (unread, starred, archived, sent) and context (courses, groups, users).
  • List Course Enrollments: Tool to retrieve enrollments for a specific course. Use when you need to query all enrollments (student, teacher, TA, observer) in a course with optional filtering by type, state, or user.
  • List Course Nicknames: Tool to retrieve all course nicknames set by the current user. Use when you need to see all custom course name preferences.
  • List Course Subgroups: Tool to retrieve a paginated list of immediate OutcomeGroup children of an outcome group in a course. Use when you need to explore the hierarchical structure of learning outcomes within a specific course.
  • List Course TODO Items: Returns the current user's course-specific todo items. Use this to get assignments that need grading or submission for a specific course. For full documentation, see the API documentation for user todo items in the Users API.
  • List Course Users: Retrieves a paginated list of users for a given Canvas `course_id` (which must be an existing course), supporting various filtering, sorting, and data inclusion options.
  • List Courses for a User: Retrieves a list of courses in Canvas for a specified `user_id`, requiring observer or admin permissions to view courses for others.
  • List Discussion Entries: Tool to retrieve paginated discussion entries for a specific discussion topic in a course. Use when needing to list all posts and replies under a given topic, supports pagination.
  • List Discussion Entry List: Tool to retrieve a paginated list of discussion entries by their ids from a group discussion topic. Use when needing to fetch specific entries given their identifiers. May require that the user has posted in the topic; if required and user has not posted, returns 403 Forbidden with body 'require_initial_post'.
  • List Discussion Topics: Retrieves a paginated list of discussion topics or announcements for a specified course.
  • List Enabled Features for a Course: Tool to retrieve a paginated list of enabled feature names for a Canvas course. Use when you need to check which optional features are currently active on a specific course.
  • List Enabled Features for a User: Tool to retrieve a paginated list of enabled feature names for a Canvas user. Use when you need to check which optional features are currently active for a specific user.
  • List Enrollment Terms: Tool to retrieve a paginated list of all enrollment terms in an account. Use when you need to query terms with filters like workflow state or search by name.
  • List Enrollments: Tool to retrieve a paginated list of enrollments for a course, section, or user. Use when you need to query enrollments with filters like type, state, or role.
  • List Entries By IDs: Tool to retrieve specific discussion entries by their IDs from a discussion topic. May require user to have posted if topic requires initial post (responds with 403 Forbidden if not met).
  • List Entry Replies: Tool to retrieve replies for a specific discussion entry in a course. Use when needing to list all replies to a particular discussion entry.
  • List Environment Settings: Retrieves global environment settings for the root Canvas account. Use when you need to access instance-wide configuration values.
  • List External Tools: Retrieves the paginated list of external tools for the specified Canvas account. Use to discover LTI tools available in the account context.
  • List Features for Course: Retrieves all feature flags for a Canvas course. Use when checking which features are available or enabled for a specific course.
  • List Features for User: Retrieves a paginated list of all features that apply to a given User. Use when checking which features are available or enabled for a specific user.
  • List Files: Fetches metadata (ID, name, size, type, URLs) for all files within a specified Canvas course.
  • List Global Subgroups: Tool to retrieve a paginated list of immediate OutcomeGroup children of a global outcome group. Use when you need to explore the hierarchical structure of global learning outcomes.
  • List Grading Standards Available in Context: Tool to retrieve grading standards available in a Canvas course context. Use when you need to list or view the grading schemes configured for a specific course.
  • List Group Entry Replies: Tool to retrieve paginated replies to a top-level entry in a group discussion topic. Use when needing to list all replies to a particular discussion entry in a group. May require that the user has posted in the topic depending on topic settings.
  • List Group Files: Tool to retrieve the paginated list of files for a specified group in Canvas. Use when you need to access or list files within a group context.
  • List Group Memberships: Tool to retrieve a paginated list of members in a Canvas group. Use when you need to query group memberships with optional workflow state filters.
  • List Groups in Account: Retrieves the paginated list of active groups in the specified Canvas account (use 'self' for current user's root account) that are visible to the user. Supports filtering by user membership and collaboration state.
  • List LTI Launch Definitions for Course: Retrieves LTI launch definitions for a Canvas course. Use to discover LTI app placements available in the course context. Note: If placements parameter is not provided, an empty list will be returned.
  • List Licenses: Retrieves a paginated list of licenses that can be applied to content in Canvas. Use when setting usage rights for files or determining available licensing options.
  • List Manageable Accounts: Retrieves Canvas accounts where the current user has permission to create or manage courses. Use when you need to see which accounts an admin can manage. List will be empty for students and teachers.
  • List Media Objects: Tool to list media objects associated with a Canvas course. Use when you need to retrieve video/audio attachments for a specific course.
  • List Media Objects 2: Tool to list media objects created by the user for a Canvas course. Use when you need to retrieve video/audio content associated with a specific course.
  • List Media Objects for Group: Tool to list media objects created by the user in a Canvas group. Use when you need to retrieve video/audio attachments for a specific group.
  • List Media Objects for Group: Tool to list media objects associated with a Canvas group. Use when you need to retrieve video/audio content for a specific group.
  • List Media Objects for User: Tool to list media objects created by the authenticated user. Use when you need to retrieve video/audio objects uploaded by the current user across all courses.
  • List Modules: Tool to retrieve a paginated list of modules in a Canvas course. Use when you need to see all modules in a course, including their structure, items, and completion requirements.
  • List My Admin Roles: Retrieves a paginated list of the current user's admin roles in a Canvas account. Use when you need to check what administrative permissions the authenticated user has within a specific account.
  • List Observees: Retrieves a paginated list of observees for a Canvas user. All users can list their own observees; administrators can list observees for other users.
  • List Planner Overrides: Retrieves planner overrides for the currently authenticated user. Planner overrides allow users to mark plannable items as complete or dismissed in the Canvas planner.
  • List Quizzes in Course: Retrieves a paginated list of quizzes for a specified, valid Canvas course, optionally filtering by a search term in the quiz title.
  • List Recent History for a User: Return a paginated list of the user's recent browsing history in Canvas. History entries are returned in descending order, newest to oldest. Use to track recently visited assignments, pages, discussions, and other Canvas items.
  • List Roles: Retrieves all available roles in a Canvas account. Use when verifying enrollment roles or mapping user capabilities.
  • List Section Enrollments: Tool to retrieve a paginated list of enrollments for a specific section. Use when you need to query section enrollments with filters like type, state, or role.
  • List Students: Tool to retrieve the paginated list of students enrolled in a Canvas course. Use when you need to get student information for a specific course. DEPRECATED: The Canvas API recommends using the course users endpoint with enrollment_type='student' instead.
  • List Subgroups: Retrieves a paginated list of immediate outcome subgroups for a specified outcome group. Use when you need to fetch the child outcome groups within an account's outcome group hierarchy.
  • List Topic Entries: Tool to retrieve paginated top-level entries in a group discussion topic. Use when needing to list discussion entries in a group. May respond with 403 Forbidden if the topic requires an initial post and the user has not posted.
  • List Upcoming Assignments Calendar Events: Tool to retrieve a paginated list of the current user's upcoming events and assignments. Use when you need to see what's coming up on the user's calendar, including both calendar events and assignment due dates.
  • List User Enrollments: Tool to retrieve a paginated list of all enrollments for a specific user. Use when you need to query a user's enrollments across courses, with filters like type, state, or term.
  • List User Files: Retrieves the paginated list of files for a specific user. Use when you need to access or enumerate files uploaded by or accessible to a user.
  • List User Logins: Tool to retrieve a paginated list of logins for a specific Canvas user. Use when you need to see all login credentials associated with a particular user ID.
  • List account notifications: Tool to retrieve all active global notifications for a Canvas account. Use when you need to check current announcements for the user. Closed notifications are excluded unless include_past is specified.
  • List all courses (GraphQL): Tool to retrieve all courses that the user is enrolled in using the Canvas GraphQL API. Returns information about courses on the user's dashboard.
  • List all folders: Retrieves the paginated list of all folders for a specified Canvas course. Returns a flat list containing the root folder and all nested subfolders. This action is scoped to courses only.
  • List all folders for group: Retrieves the paginated list of all folders for a specified Canvas group. Returns a flat list containing the root folder and all nested subfolders.
  • List all folders for user: Tool to retrieve the paginated list of all folders for a specified Canvas user. Returns a flat list containing the root folder and all nested subfolders. Use when you need to access or browse a user's folder structure.
  • List appointment groups: Retrieves a list of Canvas appointment groups based on specified filters; any provided `context_codes` must be valid and accessible by the user.
  • List assignment groups: Returns the paginated list of assignment groups for the current context. Use when you need to retrieve assignment groups for a course. The returned groups are sorted by their position field.
  • List assignment overrides: Tool to retrieve the paginated list of overrides for an assignment. Use when you need to see which sections, groups, or students have custom due dates or availability settings for a specific assignment.
  • List assignment submissions: Retrieves submissions for a specific assignment within a course, optionally including related resources or grouping by student group for group assignments. Supports pagination to retrieve more than the default 10 submissions.
  • List assignment submissions by section: Tool to list all submissions for an assignment within a specific section. Use when you need to retrieve submissions for a section-level assignment rather than a course-level assignment.
  • List assignments for assignment group: Tool to retrieve the paginated list of assignments for a specific assignment group within a course. Use when you need assignments grouped by assignment group rather than all assignments for a course.
  • List assignments for user in course: Tool to list assignments for a specific user in a Canvas course. Use when you need to retrieve assignments visible to a particular user, with optional filtering by due date, submission status, or search term. This endpoint respects user permissions and returns only assignments the specified user has rights to view.
  • List available account calendars: Returns a paginated list of account calendars available to the current user. Includes visible account calendars where the user has an account association.
  • List blackout dates for account: Retrieves the list of blackout dates for a Canvas account context. Blackout dates prevent scheduling assignments on specific dates in course pacing.
  • List blackout dates for course: Tool to retrieve the list of blackout dates for a Canvas course. Use when you need to check which dates are blocked for assignments in course pacing.
  • List calendar events for a user: Retrieves calendar events and assignments for a specific user from Canvas LMS, supporting extensive filtering options detailed in the request schema.
  • List calendar events for current user: Tool to retrieve the paginated list of calendar events or assignments for the current user. Use when you need to fetch upcoming events, assignments, or both with various filtering options like date ranges, context codes, and event types.
  • List closed poll sessions: Tool to retrieve a paginated list of all closed poll sessions available to the current user. Use when you need to see which poll sessions have been closed and their results.
  • List communication channels: Retrieves a list of communication channels associated with a specific user in Canvas.
  • List communication messages: Retrieves communication messages from Canvas.
  • List content exports: Lists all content export jobs for a course. Content exports are snapshots of course content that can be downloaded as Common Cartridge (IMSCC), QTI, or ZIP files. Returns exports in reverse chronological order (newest first), including their status, type, and download URLs when available.
  • List content exports for groups: Lists all content export jobs for a group. Content exports are snapshots of group content that can be downloaded as Common Cartridge (IMSCC), QTI, or ZIP files. Returns exports in reverse chronological order (newest first), including their status, type, and download URLs when available.
  • List content licenses for a course: Tool to retrieve a list of content licenses that can be applied to course content in Canvas. Use when you need to know what license options are available for a specific course.
  • List content migrations for groups: Lists all content migrations for a group. Content migrations allow importing group content from various sources like Common Cartridge files or external systems. Returns migrations with their current status, progress URLs, and any associated files or issues.
  • List content migrations for user: Tool to retrieve paginated content migrations for a specified user in Canvas. Use when you need to view the list of content migration operations initiated by or for a user.
  • List counts for todo items: Get counts of different todo items for the current user, including assignments needing grading and assignments needing submitting. Note: Only counts the first 100 todo items.
  • List course sections: Tool to retrieve a paginated list of sections for a specific course. Use when you need to get all sections or search for specific sections within a course.
  • List courses: Retrieves a list of the current user's courses from Canvas, optionally filtered by enrollment type and state.
  • List courses with their latest ePub export: Tool to list all courses a user is actively participating in and their latest ePub exports. Use when you need to see which courses have been exported and their export status.
  • List custom gradebook columns: Returns a paginated list of all custom gradebook columns for a course. Use when you need to retrieve custom columns that instructors have added to the gradebook.
  • List discussion topics for group: Tool to retrieve the paginated list of discussion topics for a specific group. Use when you need to list or browse discussion topics within a group context.
  • List entries for a column: Tool to retrieve entries from a custom gradebook column for a course. Use when you need to view data entered in custom columns. Note: Only returns entries for students with associated data; students without entries are excluded.
  • List environment features: Tool to return a hash of global feature options that pertain to the Canvas user interface. Use when you need to check which features are enabled in the Canvas environment.
  • List external feeds for group: Tool to retrieve the paginated list of external RSS feeds for a group. Use when you need to discover what external feeds are configured to automatically create announcements in a group.
  • List external tools for course: Tool to retrieve the paginated list of external tools for a course. Use when you need to discover LTI tools available in a course context.
  • List external tools for group: Tool to retrieve the paginated list of external tools for a group. Use when you need to discover LTI tools available in a group context.
  • List favorite courses: Tool to retrieve the paginated list of favorite courses for the current user. Use when you need to get the user's favorite courses. If the user has not chosen any favorites, then a selection of currently enrolled courses will be returned.
  • List favorite groups: Retrieves the paginated list of favorite groups for the current user. Use when you need to see which groups a user has favorited.
  • List files in folder: Tool to list files within a specific Canvas folder. Use when you need to retrieve files from a particular folder by its ID.
  • List folders: Retrieves a list of immediate sub-folders within the specified `folder_id`.
  • List gradeable students: Tool to retrieve a paginated list of students eligible to submit a specific assignment. Use when you need to identify which students can submit work for grading. The caller must have permission to view grades in the course.
  • List grading periods for a course: Returns the paginated list of grading periods for the current course. Use when you need to view grading period configurations for a specific course.
  • List group categories for a course: Tool to retrieve group categories in a course context. Use when you need to list all group categories for a specific course.
  • List group's users: Retrieves a paginated list of users in a Canvas group. Use when you need to see all members of a specific group.
  • List groups available in a context: Tool to retrieve the paginated list of active groups in a course context that are visible to the user. Use when you need to list all groups available in a specific course.
  • List licenses for a group: Tool to retrieve a paginated list of content licenses that can be applied to group content in Canvas. Use when you need to know what license options are available for a specific group.
  • List linked outcomes for course outcome group: Tool to retrieve a paginated list of the immediate OutcomeLink children of an outcome group in a course. Use when you need to list outcomes linked to a specific outcome group within a course context.
  • List linked outcomes for outcome group: Tool to retrieve a paginated list of the immediate OutcomeLink children of an outcome group. Use when you need to list outcomes linked to a specific outcome group within an account.
  • List migration issues: Retrieves paginated list of issues that occurred during a content migration. Use this to identify problems, warnings, or items requiring attention after importing content into Canvas. Issues are returned with details about their severity, current status, and links to investigate or resolve them.
  • List migration systems for group: Lists the currently available migration types for a Canvas group. Use this to determine which content import types are supported before creating a content migration. Migration types vary by Canvas instance and may include Common Cartridge, Canvas Cartridge, course copy, QTI, Moodle, and other importers.
  • List migration systems for user: Lists currently available migration types for importing content into a user's Canvas context. Use this to discover which migration systems are supported before creating a content migration.
  • List missing submissions for a user: List past-due assignments for which the student does not have a submission. The user making the request must either be the student, an admin, or a parent observer using the parent app. Use this to identify assignments that are overdue and still need to be completed.
  • List module items: Retrieves a paginated list of items (assignments, quizzes, pages, files, etc.) from a specific module in a Canvas course. Use when you need to see the contents and structure of a module.
  • List notification preference categories: Fetches all notification preference categories for a specific communication channel. Use this to discover which notification categories are available for configuring user notification preferences.
  • List notification preferences: Fetches all notification preferences for a given communication channel. Use when you need to see all notification settings for a specific user's communication channel.
  • List notification preferences: Tool to fetch all notification preferences for a given communication channel. Use when you need to retrieve how a user has configured notification delivery for a specific channel.
  • List observers for a user: Retrieves a paginated list of observers linked to a given user. All users can list their own observers using user_id='self'. Administrators can list other users' observers by providing the specific user_id.
  • List opened poll sessions: Tool to retrieve a paginated list of all opened poll sessions available to the current user. Use when you need to see which poll sessions are currently open.
  • List pages for a course: Retrieves a list of wiki pages associated with a specific, existing course in Canvas.
  • List pages for a group: Tool to retrieve a paginated list of wiki pages associated with a Canvas group. Use when you need to list pages for a specific group.
  • List planner items for a user: List a user's cross-course Planner items (assignments, discussions, quizzes, etc.) within a date range, including Planner override/completion state. Use this to retrieve items from the Canvas dashboard/to-do planner view.
  • List planner notes: Retrieve the paginated list of planner notes for the current authenticated user. Use to fetch personal to-do items and reminders from the Canvas planner.
  • List poll choices in a poll: Returns the paginated list of poll choices in a poll. Use when you need to retrieve all available choices for a specific poll.
  • List poll sessions for a poll: Tool to retrieve the paginated list of poll sessions for a specific poll. Use when you need to see all sessions associated with a particular poll.
  • List polls for current user: Retrieves the paginated list of polls for the current authenticated user. Use when you need to view all polls created by or accessible to the user.
  • List questions in a quiz: Returns the paginated list of QuizQuestions in this quiz. Use when you need to retrieve all questions for a quiz, or questions from a specific submission attempt.
  • List received content shares: Retrieves content shares received by the specified user from other users or courses within Canvas. Use 'self' as user_id to retrieve your own received shares.
  • List revisions for a group page: Tool to retrieve a paginated list of revisions for a specific page in a Canvas group. Use when you need to view the history of changes made to a group page. Callers must have update rights on the page to see its revision history.
  • List sent content shares: Retrieves content shares sent by the specified user to other users or courses within Canvas.
  • List submissions: Fetches gradebook history submissions for a specific course, assignment, grader, and date from Canvas.
  • List submissions for multiple assignments: Retrieves submissions from a Canvas course for specified assignments and/or students; the course must be accessible.
  • List submissions for multiple assignments in section: Tool to retrieve submissions from a Canvas section for specified assignments and/or students. Use when you need section-level submission data across multiple assignments.
  • List the activity stream: Retrieves the current user's global activity stream from Canvas, paginated. Returns recent activities across courses including discussions, conversations, messages, submissions, conferences, and announcements. Use to display user's recent Canvas activity or notifications.
  • List the activity stream: Tool to retrieve the current user's global activity stream, paginated. Use when you need to see recent activities, notifications, or updates across all courses and groups the user is enrolled in.
  • List the current user's TODO items: Retrieves a paginated list of the current user's todo items in Canvas. Use when you need to see pending tasks that require action, such as assignments needing submission or grading.
  • List uncollated submission versions: Retrieves a feed of uncollated submission versions from the Gradebook history for a course; any provided `assignment_id` must be valid for the course, and any `user_id` must be for a user enrolled in the course.
  • List user content exports: Tool to retrieve a paginated list of past and pending content export jobs for a user. Use when you need to view export history or check export status for a user. Exports are returned newest first.
  • List user logins: Retrieves a paginated list of user logins for the specified Canvas account. Use when you need to see all login credentials associated with an account.
  • List users in account: Retrieve users from a Canvas account with optional filtering and sorting. This action lists all users associated with a Canvas account. You can optionally: - Search for specific users by name, email, or ID (search_term) - Filter by enrollment type (student, teacher, ta, observer, designer) - Sort results by various fields (username, email, sis_id, last_login, id) - Control sort order (ascending or descending) Results are paginated. The account_id must belong to a valid, existing Canvas account.
  • List users in course: Tool to return the paginated list of users in a Canvas course. Use when you need to retrieve users enrolled in a specific course with optional enrollment details.
  • List users in group category: Retrieve a paginated list of users in a group category. Use when you need to see all users within a specific group category or filter for unassigned users.
  • List your groups: Returns a paginated list of active groups for the current user. Use this to retrieve all groups the authenticated user belongs to, optionally filtered by context type (Account or Course).
  • Mark all conversations as read: Tool to mark all conversations as read for the current user. Use when you need to mark all conversation messages in the inbox as read.
  • Mark all discussion topics as read: Mark the initial text of all discussion topics as read in a course. Use when you need to mark all discussion topics in a course as read for the current user.
  • Mark all entries as read: Tool to mark the discussion topic and all its entries as read. Use when you need to mark all entries in a discussion topic as read for the current user.
  • Mark all group discussion entries as read: Tool to mark the discussion topic and all its entries as read in a group. Use when you need to mark all entries in a group discussion topic as read for the current user.
  • Mark all group discussion entries as unread: Tool to mark the discussion topic and all its entries as unread for a group. Use when you need to flag an entire group discussion and all its replies as unread.
  • Mark all group discussion topics as read: Mark the initial text of all discussion topics as read in a group. Use when you need to mark all discussion topics in a group as read for the current user.
  • Mark bulk submissions as read: Marks multiple submissions as read in a single operation. Use when you need to mark several submissions as read at once instead of marking them individually.
  • Mark bulk submissions as read (section): Marks multiple submissions as read for a specific section. Use when you need to mark several submissions as read at once for a section instead of marking them individually.
  • Mark document annotations as read: Marks document annotations on a submitted assignment as read by the student. Use when a student has viewed feedback annotations on their submission. Only the student who owns the submission can mark annotations as read.
  • Mark document annotations as read (section): Tool to mark annotations on a submitted document as read by the student. Use when a student needs to acknowledge they have viewed feedback annotations on their submitted document. Note: Document annotations are automatically marked as read when viewed in Canvas web.
  • Mark group discussion entry as read: Tool to mark a discussion entry as read in a group context. Use when you need to change the read status of a specific discussion entry to read within a group discussion.
  • Mark group discussion entry as unread: Tool to mark a group discussion entry as unread. Use when you need to change the read status of a specific discussion entry in a group back to unread.
  • Mark group discussion topic as read: Marks the initial text of a discussion topic as read for the current user in a group. Use when you need to flag a group discussion topic as read to indicate it has been reviewed.
  • Mark group discussion topic as unread: Marks the initial text of a group discussion topic as unread for the current user. Use when you need to flag a group discussion topic as unread to track it for later review.
  • Mark module item as done/not done: Tool to mark a module item as done or not done. Use PUT method (action='done') to mark as done, and DELETE method (action='not_done') to mark as not done. This is used for 'must_mark_done' completion requirements.
  • Mark module item as read: Tool to mark a module item as read, fulfilling the 'must view' requirement. Use when accessing external content directly without using the html_url redirect that normally fulfills view requirements.
  • Mark rubric assessments as read: Tool to mark rubric comments/grading on a submission as read by the student. Use when a student needs to acknowledge they have viewed their rubric feedback. Note: Rubric assessments are automatically marked as read when viewed in Canvas web.
  • Mark rubric assessments as read (sections): Tool to mark rubric comments/grading on a submission as read by the student within a specific section. Use when a student needs to acknowledge they have viewed their rubric feedback. Only the student who owns the submission can use this endpoint.
  • Mark submission as read (sections): Marks a student's submission as read for a specific assignment within a section. Use when you need to mark a submission as read in the context of a section rather than a course.
  • Mark submission as unread: Marks a student's submission as unread for a specific assignment. Use when you need to reset the read status of a submission to unread.
  • Mark submission comments as read: Tool to mark submission comments as read in Canvas via GraphQL. Use when tracking which comments have been viewed or when updating read status for instructor feedback.
  • Post assignment grades for sections: Tool to post assignment grades for specific sections in Canvas. Use when you need to release grades to students in particular course sections.
  • Post discussion entry or reply: Posts a new entry or reply to a Canvas discussion topic. Creates either a top-level entry (when entry_id is omitted) or a nested reply to an existing entry (when entry_id is provided). The entry is posted immediately and becomes visible to discussion participants.
  • Post group discussion entry: Tool to create a new entry in a Canvas group discussion topic. Use when posting a message with optional attachment to a group discussion topic.
  • Post group discussion reply: Tool to post a reply to a discussion entry in a group. Use when you need to add a reply to an entry in a group discussion topic. May require that the user has posted in the topic.
  • Preview processed HTML: Tool to preview HTML content processed for a Canvas course. Use when you need to see how HTML will be rendered in Canvas after sanitization and link processing.
  • Preview processed HTML for group: Tool to preview HTML content processed for a specific Canvas group. Use when you need to see how HTML will be rendered after Canvas applies group-specific processing and security policies.
  • Query progress: Tool to return completion and status information about an asynchronous job in Canvas LMS. Use when you need to check the status of a long-running operation.
  • Rate group discussion entry: Tool to rate a discussion entry in a Canvas group. Use when you need to add or remove a rating (like/unlike) on a group discussion entry.
  • Redirect to Assignment Override for Section: Tool to retrieve the assignment override for a specific section. Use when you need to fetch override details for a particular section's assignment. Returns 404 if no override exists.
  • Redirect to Root Outcome Group for Context: Retrieves the root outcome group for a specified account context. Use when you need to access the top-level outcome group hierarchy for an account.
  • Remove Course Nickname: Tool to remove the nickname for a specific course. Use when you need to clear a custom course name and revert to using the actual course name.
  • Remove content share: Tool to remove a content share from your list. Use 'self' as the user_id to remove your own content shares. Note that this endpoint does not delete other users' copies of the content share.
  • Remove course from favorites: Tool to remove a course from the current user's favorites list. Use when you need to unfavorite a course for the authenticated user.
  • Remove feature flag for users: Remove feature flag for a given User. The flag must be defined directly on the User. After removal, the user will inherit feature flags from a higher account if any exist.
  • Remove group from favorites: Tool to remove a group from the current user's favorites. Use when you need to unfavorite a group for the authenticated user.
  • Remove usage rights from group files: Tool to remove copyright and license information from one or more files in a group. Use when you need to clear usage rights metadata from group files.
  • Remove usage rights from user files: Tool to remove copyright and license information from one or more files for a user. Use when you need to clear usage rights metadata from user files.
  • Reorder custom gradebook columns: Reorders custom gradebook columns in a course. Use when you need to change the display order of custom columns in the gradebook.
  • Reorder pinned topics for group: Tool to reorder pinned discussion topics in a Canvas group. Use when you need to change the display order of pinned topics in a group.
  • Reply to discussion entry: Tool to reply to a discussion entry. Use when you need to send a message to a discussion entry with optional attachments.
  • Reset Course Favorites: Tool to reset the current user's course favorites to the default automatically generated list of enrolled courses. Use when you need to restore default favorites.
  • Reset group favorites: Tool to reset the current user's group favorites to the default automatically generated list of enrolled groups. Use when you need to clear custom group favorites and restore the default selection.
  • Reset link verifier: Resets the link verifier for a file. Any existing links using the previous hard-coded verifier parameter will no longer automatically grant access. Requires manage files and become other users permissions.
  • Resolve Folder Path: Resolves a folder path and returns the complete hierarchy. Given the full path to a folder, returns a list of all Folders in the path hierarchy starting at the root folder and ending at the requested folder. Use when you need to navigate or verify folder structure within a user's files.
  • Resolve folder path: Resolves a folder path and returns all folders in the hierarchy from root to the requested folder. Use when you need to traverse a folder path or verify a folder exists at a specific path within a Canvas course.
  • Resolve group folder path: Tool to retrieve folder hierarchy by resolving a path within a Canvas group. Use when you need to traverse a folder path or verify a folder exists at a specific location within a group.
  • Retrieve All Quiz Reports: Retrieves a list of all available reports for a specified quiz. Use when you need to see what quiz reports exist or check their status.
  • Retrieve Internal Setting: Tool to retrieve a single internal setting by ID or name from Canvas LMS using the GraphQL API. Use when you need to fetch configuration or system settings.
  • Retrieve assignment overridden dates for Classic Quizzes: Retrieves the actual due-at, unlock-at, and lock-at dates for Classic Quizzes based on assignment overrides active for the current API user. Use this to get personalized quiz dates that reflect section overrides, group overrides, or individual student overrides.
  • Retrieve assignment overridden dates for New Quizzes: Retrieves the actual due-at, unlock-at, and lock-at dates for New Quizzes based on assignment overrides active for the current API user. Use this to get personalized quiz dates that reflect section overrides, group overrides, or individual student overrides.
  • Retrieve enrollment term: Retrieves detailed information for a specific enrollment term within a given root account in Canvas.
  • Revert Group Page to Revision: Tool to revert a Canvas group page to a prior revision. Use when you need to restore a group page to a previous version, undoing recent changes.
  • Save enabled account calendars: Tool to save user preferences for enabled account calendars and mark the feature as seen. Use when updating which account calendars a user has enabled or marking that the user has viewed the account calendars feature.
  • Set course nickname: Tool to set a nickname for a specific Canvas course. Use when you need to assign a custom name to a course that will appear in API outputs and the Canvas web interface.
  • Set extensions for student quiz submissions: Tool to set extensions for student quiz submissions in Canvas. Use when you need to grant students additional attempts, extra time, or date extensions for a quiz. Returns success status (200 OK if successful, 403 Forbidden if not allowed to extend quizzes for this course).
  • Set feature flag for course: Tool to set a feature flag for a given Course. Use when you need to enable or disable a Canvas feature at the course level. This call will fail if a parent account sets a feature flag for the same feature in any state other than "allowed".
  • Set feature flag for user: Tool to set a feature flag for a given User. Use when you need to enable or disable a Canvas feature at the user level. This call will fail if a parent account sets a feature flag for the same feature in any state other than "allowed".
  • Set friendly description: Tool to set a friendly description for a learning outcome in Canvas using GraphQL. Use when you need to add or update a user-friendly explanation for an outcome in a specific course or account context.
  • Set module item completion: Tool to mark a module item as complete or incomplete in Canvas using the REST API. Use when tracking student progress or updating module item completion status. Uses PUT method to mark as done, DELETE method to mark as not done.
  • Set override status: Tool to set an override status for a student's enrollment in Canvas. Use when applying or clearing a custom grade status for a student.
  • Set usage rights for group files: Sets copyright and license information for one or more files in a Canvas group. Use when you need to specify intellectual property rights for group materials.
  • Set usage rights for user files: Tool to set copyright and license information for one or more files in a user's account. Use when you need to specify intellectual property rights for user files.
  • Show Front Page for Group: Tool to retrieve the front page content for a specific Canvas group. Use when you need to access the main wiki page of a group.
  • Show Group Page Revision: Tool to retrieve the metadata and optionally content of the latest revision of a page in a Canvas group. Use when you need to view the most recent version of a group page. Note that retrieving historic versions requires edit rights.
  • Show Temporary Enrollment Status: Tool to retrieve the temporary enrollment status for a Canvas user. Use when you need to check if a user is providing or receiving temporary enrollments, or if they have permission to provide temporary enrollments.
  • Show User Details: Tool to retrieve detailed information about a specific Canvas user by ID. Use when you need to fetch profile data, permissions, and other user attributes for a given user.
  • Show a planner note: Retrieve a specific planner note for the current user. Use when fetching details of a personal to-do item from the Canvas planner.
  • Show a planner override: Retrieve a specific planner override for the current user. Use when you need to check the completion or dismissal status of a plannable item in the user's planner.
  • Show an observee: Tool to get information about an observed user. Use when you need to retrieve details about a user being observed by another user. Note that all users are allowed to view their own observees.
  • Show an outcome: Retrieves detailed information for a specific outcome in Canvas using its ID. Use when you need to view outcome details, ratings, or mastery settings.
  • Show content export: Retrieves information about a specific content export job for a course. Use this to check the status of an export and get the download URL when the export completes.
  • Show ePub export: Tool to retrieve information about a single ePub export for a course. Use this to check the status of an export and get the download URL when the export completes.
  • Show group content export: Retrieves information about a specific content export job for a group. Use this to check the status of an export and get the download URL when the export completes.
  • Show page for a group: Retrieves the content of a specific wiki page by its URL or numeric ID from a Canvas group. Use when you need to fetch the full content and metadata of a group's wiki page.
  • Show revision for group page: Tool to retrieve the metadata and optionally content of a specific revision of a group page. Use when you need to view a historic version of a page. Note that retrieving historic versions requires edit rights.
  • Start a Report: Initiates an asynchronous report generation for a Canvas account, using a valid report type for the account; the response confirms initiation and may include progress tracking details.
  • Submit assignment: Tool to make a submission for an assignment in Canvas. Use when a student needs to submit their work for an assignment. You must be enrolled as a student in the course/section to do this. All online turn-in submission types are supported (text, URL, file upload, media recording, LTI launch, student annotation).
  • Subscribe to a topic: Subscribe to a discussion topic to receive notifications about new entries. Use when you need to enable notifications for a specific discussion topic in a course.
  • Subscribe to a topic in group: Subscribe to a group discussion topic to receive notifications about new entries. On success, returns 204 No Content with an empty body.
  • Subscribe to discussion topic: Tool to subscribe or unsubscribe from a discussion topic to receive or stop receiving notifications. Use when managing discussion topic subscriptions via GraphQL.
  • Translate File Reference: Resolves a file's migration ID to its current representation within a specific Canvas course.
  • Unsubscribe from a topic in group: Unsubscribe from a group discussion topic to stop receiving notifications about new entries. On success, returns 204 No Content with an empty body.
  • Update Appointment Group: Updates an existing Canvas appointment group by its ID; only provided fields are modified, but `publish` defaults to `False` if omitted. The `appointment_group_id` must be valid.
  • Update Bookmark: Updates an existing bookmark for the authenticated user. Use when you need to modify the name, URL, position, or metadata of a bookmark.
  • Update Calendar Event: Tool to update an existing calendar event in Canvas. Use when you need to modify event details like title, description, timing, or location.
  • Update Custom Color: Tool to update the custom color for a user for a specific course or context in Canvas. Use when you need to set or modify user-specific color preferences for calendar and other UI elements.
  • Update Folder: Updates an existing folder's properties (name, position, lock state, visibility) specified by its unique ID. Use when modifying folder attributes.
  • Update Single Poll: Tool to update an existing poll belonging to the current user. Use when you need to modify a poll's question or description.
  • Update Single Poll Session: Tool to update an existing poll session for a poll in Canvas. Use when you need to modify a poll session's attributes such as making results public or changing the associated course section.
  • Update SpeedGrader settings: Tool to update SpeedGrader settings in Canvas via GraphQL. Use when you need to configure SpeedGrader options such as enabling grade-by-question mode.
  • Update User Settings: Updates a Canvas user's preferences for various interface elements and content interaction behaviors.
  • Update User Settings (GET): Tool to update an existing user's settings via GET request with query parameters. Use when you need to modify Canvas user preferences such as navigation display, notification behavior, or dashboard appearance.
  • Update User Token: Tool to update an existing access token for a Canvas user. Use when you need to modify token properties like purpose, expiration, scopes, or regenerate the token value.
  • Update Users Custom Data Scope: Store or update custom data for a Canvas user within a specified scope. Use this to persist application-specific user data in Canvas.
  • Update a content migration for user: Tool to update a content migration for a user in Canvas. Use when you need to modify migration settings, handle file upload problems, or configure selective imports. Note: migration_type cannot be changed, and most settings changes after the migration has started will have no effect.
  • Update a content share: Tool to mark a Canvas content share as read or unread. Use when updating the read state of a content share.
  • Update a custom gradebook column: Updates an existing custom gradebook column in a course. Use when you need to modify properties like title, position, visibility, or editability of a custom gradebook column.
  • Update a group content migration: Tool to update a content migration in a Canvas group. Use when you need to modify migration settings, handle file upload problems, configure selective imports, or specify which content to copy. Note: migration_type cannot be changed, and most settings changes after the migration has started will have no effect.
  • Update a membership: Tool to accept a membership request or add/remove moderator rights for a group member. Use when you need to approve a user's request to join a group or modify their moderator status.
  • Update a page for a group: Updates the title or contents of an existing wiki page in a Canvas group. Use when you need to modify group documentation, notes, or collaborative content.
  • Update a planner note: Update a planner note for the current user. Use when modifying an existing to-do item or reminder in the Canvas planner.
  • Update a planner override: Update a planner override's visibility and completion status for the current user. Use this to mark planner items as complete/incomplete or dismiss/show them in the opportunities list.
  • Update a single poll choice: Tool to update an existing poll choice for a poll in Canvas. Use when you need to modify the text, correctness status, or position of a poll choice.
  • Update an entry: Tool to update an existing discussion entry. Use when editing a discussion entry's message content. The entry must have been created by the current user, or the current user must have admin rights to the discussion.
  • Update comment bank item: Tool to update an existing comment bank item in Canvas. Use when modifying the text of a previously saved grading comment.
  • Update conversation participants: Tool to batch update conversation workflow states in Canvas. Use when you need to mark conversations as read/unread, star/unstar, archive, or delete multiple conversations at once.
  • Update course: Updates an existing course, specified by its ID, with new attributes or triggers a lifecycle event like 'conclude' or 'delete'.
  • Update course settings: Updates various settings for an existing course in Canvas, identified by `course_id`.
  • Update discussion entries read state: Tool to update read state for discussion entries. Use when marking discussion entries as read or unread.
  • Update discussion entry: Tool to update an existing discussion entry in Canvas via GraphQL. Use when editing the message content or file attachments of a previously posted discussion entry.
  • Update discussion entry participant: Tool to update a discussion entry participant's read state or rating. Use when marking entries as read/unread or changing ratings.
  • Update discussion read state: Tool to update the read state for a discussion topic in Canvas via GraphQL. Use when marking a discussion as read or unread for the current user.
  • Update discussion thread read state: Tool to update the read state of a discussion entry. Use when marking a discussion entry as read or unread.
  • Update discussion topic (GraphQL): Tool to update an existing discussion topic using the Canvas GraphQL API. Use when modifying the title or message of a discussion topic.
  • Update file: Modifies an existing file's name or relocates it to a new parent folder; the target folder, if specified, must be valid and in the file's original context.
  • Update group discussion entry: Tool to update an existing discussion entry in a Canvas group. Use when editing a group discussion entry's message content. The entry must have been created by the current user, or the current user must have admin rights to the discussion.
  • Update group discussion topic: Tool to update an existing discussion topic for a group. Use when modifying the title, message, publication settings, or engagement features of a group discussion topic.
  • Update multiple notification preferences: Update multiple notification preferences for a single communication channel at once. Use when you need to configure how often a user receives notifications for multiple event types on a specific communication channel.
  • Update multiple preferences by channel ID: Tool to change the preferences for multiple notifications for a single communication channel at once using the channel ID. Use when you need to configure how frequently (immediately, daily, weekly, or never) various notification types are sent to a specific communication channel.
  • Update notification preference: Tool to update the notification preference for a single notification on a specific communication channel. Use when changing how frequently a user receives a particular notification type.
  • Update notification preference by type and address: Tool to update the notification preference for a single notification on a communication channel identified by type and address. Use when changing how frequently a user receives a particular notification type on a specific channel.
  • Update notification preferences: Tool to update user notification preferences in Canvas using GraphQL. Use when configuring how and when a user receives notifications for specific categories through a communication channel.
  • Update page for a course: Updates an existing wiki page in a Canvas course; if setting as front page, it must also be or be made published.
  • Update preferences by category: Tool to change notification preferences for all notifications in a category for a single communication channel. Use when updating the frequency setting for an entire notification category at once.
  • Update quiz submission scores: Updates scores, comments for questions, and/or applies fudge points to a specific quiz submission attempt; the attempt must be completed and referenced by valid, existing course, quiz, and submission IDs.
  • Update rubric assessment read state: Tool to update rubric assessment read state for submissions in Canvas via GraphQL. Use when marking rubric assessments as read for specific submissions.
  • Update split screen view deeply nested alert: Tool to update the split screen view deeply nested alert setting for a user. Use when enabling or disabling the deeply nested alert warning in split screen view mode.
  • Update submission student-entered score: Tool to update the student-entered score (what-if score) for a submission. Use when a student wants to set or modify a hypothetical score to calculate potential grades.
  • Update submission what-if score: Tool to enter a what-if score for a submission and receive calculated grades. Grade calculation is costly, so use sparingly. Use when students want to test hypothetical scores to see their impact on overall grades.
  • Update user discussions splitscreen view: Tool to update user discussions splitscreen view setting via Canvas GraphQL API. Use when enabling or disabling the splitscreen view for discussions.
  • Update user text editor preference: Tool to update a user's text editor preference. Use when you need to change the default text editor for a user in Canvas.
  • Update users self content shares: Tool to update a content share for the authenticated user. Use when marking a content share as read or unread.
  • Update/Create Front Page for Groups: Tool to update or create the front page of a Canvas group wiki. Use when you need to modify the title or contents of the group front page.
  • Upload a course file: Uploads a file to an accessible Canvas course, optionally to a specific folder (created if a non-existent `parent_folder_path` is provided) and with defined behavior for duplicate filenames.
  • Upload a file to group: Initiates file upload to a Canvas group (Step 1 of 3-step workflow). Returns upload_url and upload_params needed for Step 2. Only users with 'Manage Files' permission can upload to groups.
  • Upload submission file: Uploads a file for an assignment submission in Canvas (step 1 of submitting); the returned file can later be included in an actual submission. The specified user must be enrolled in the course with access to the assignment. Use 'self' for `user_id` to upload as the authenticated user, or specify another user's ID (requires masquerade permissions).
  • Upsert custom grade status: Tool to create or update a custom grade status in Canvas. Use when you need to add a new custom grade status or modify an existing one.
  • Upsert standard grade status: Tool to create or update a standard grade status in Canvas. Use when customizing standard grade status labels and colors. Standard grade statuses include: late, missing, excused, and none.
  • Validate quiz access code: Validates a quiz access code by checking if it matches the configured access code for the quiz. Use when verifying student-provided access codes before allowing quiz access.

How to connect Canvas

  1. Sign in to Definable AI and go to Apps
  2. Search for Canvas and click Connect
  3. Authorize via OAuth2 — takes under 30 seconds
  4. Use Canvas actions in your AI agents and workflows