vMira
Canvas logo

Connect Canvas to vMira

Chat with Canvas and automate it — create account notification in Canvas, on demand or on a schedule. Connect with your own credentials, then use it across web, WhatsApp, Telegram, Instagram, Messenger and LINE.

Use it anywhere you chat

Run Canvas from the chat you already use.

Connect Canvas once and use it from WhatsApp, Instagram, Telegram, Messenger, LINE — or the web. One account, same history and connected apps across every surface.

Online Courses

What Canvas does — and what Mira does with it.

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

573 chat actions6 event triggersConnect with your credentialsLeast-privilege & revocableOnline CoursesEducation

From any chat

What Mira can do with Canvas.

87 Canvas actions, run in plain language from the web or any messaging app — WhatsApp, Instagram, Telegram, Messenger or LINE. Just ask; Mira maps it to the right action and runs it on your account.

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 appointment group

Creates a new appointment group in canvas for schedulable time slots within specified course or group contexts.

Create an assignment

Creates a new assignment within a specified course in canvas lms.

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 le...

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 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 spec...

Create a course

Creates a new course in canvas within a specified account, with comprehensive configuration options.

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 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 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 Folder

Creates a new folder in canvas within a specified context (e.g., course, user) and optional parent folder; ensure the context and any parent folder (specified by id or path, not...

Create Module

Creates a new organizational module within a specified canvas lms course, with options for availability, sequencing, and prerequisites.

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 pub...

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 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 fo...

Delete appointment group

Permanently deletes an existing appointment group by its id; associated appointments may also be canceled or affected.

Delete an assignment

Soft-deletes a specific assignment within a course, returning the assignment object with its `workflow state` updated to 'deleted'.

Delete a folder

Permanently deletes an existing folder specified by its unique id.

Delete quiz

Permanently deletes the quiz identified by `quiz id` from the course identified by `course id`; this action cannot be undone.

Get current grades

Fetches current, aggregated grade data from canvas analytics for a specified account id.

Get term grade data

Retrieves department-level aggregated grade data for a specific academic term within a canvas account.

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.

Edit a quiz

Modifies an existing canvas quiz; only attributes with provided values in the request are updated.

Export content

Use to initiate an asynchronous export of content (e.g., common cartridge, qti, zip) from an existing canvas course, returning an export id and progress 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 pagina...

Get Canvas accounts

Retrieves all canvas accounts accessible to the authenticated user.

Get all assignments

Retrieves assignments for a specified canvas course.

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 assignment

Retrieves detailed information for a specific assignment within a given course in canvas.

Get Assignment Rubric

Fetches the detailed rubric for a specified assignment within a canvas course; fails if the assignment has no associated rubric.

Get Course Activity

Retrieves daily activity analytics, such as page views and participation events, for a specified canvas course.

Get Current User

Retrieves detailed information about the currently authenticated user from the canvas lms.

Get department-level completed statistics

Retrieves numeric statistics for all completed courses for a specified canvas account id; the account must exist.

Get department level current statistics

Fetches a snapshot of current numerical statistics for a canvas account, requiring its valid 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 g...

Get department level term statistics

Retrieves department-level academic term statistics (e.g., enrollment, activity, grades) for a specified account and term in canvas, provided analytics data is available.

Get enrollment by ID

Retrieves a specific enrollment by its id within a given account.

Get gradebook history days

Retrieves a chronological list of dates with grading activity and the active graders for a specified course.

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 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 report status

Retrieves the status of a previously initiated report in a canvas account, specified by its type and id.

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 `...

Get single submission

Retrieves a specific submission for an assignment made by a particular user within a designated course.

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...

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 course progress

Retrieves the academic progress of a specific user within a given course.

Get user participation analytics

Retrieves page view activity and participation details for a specific student enrolled in a designated course.

Get User Profile

Retrieves profile information for an existing canvas user.

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.

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 all folders

Retrieves the first page of folders for a specified canvas course id; this action is scoped to courses only.

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 submissions

Retrieves submissions for a specific assignment within a course, optionally including related resources or grouping by student group for group assignments. supports pagination t...

List Available Reports

Lists available reports (including those that can be or have been generated) for a valid canvas account id.

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 communication messages

Retrieves communication messages from canvas.

List communication channels

Retrieves a list of communication channels associated with a specific user in canvas.

List content exports

Retrieves a paginated list of content exports from canvas for a specified, existing course.

List courses

Retrieves a list of the current user's courses from canvas, optionally filtered by enrollment type and state.

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 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 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 Topics

Retrieves a paginated list of discussion topics or announcements for a specified course.

List Files

Fetches metadata (id, name, size, type, urls) for all files within a specified canvas course.

List folders

Retrieves a list of immediate sub-folders within the specified `folder id`.

List pages for a course

Retrieves a list of wiki pages associated with a specific, existing course in canvas.

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 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 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...

List users in account

Use this action to retrieve all users associated with a specific, existing canvas account id.

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.

Retrieve enrollment term

Retrieves detailed information for a specific enrollment term within a given root account in canvas.

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 d...

Translate File Reference

Resolves a file's migration id to its current representation within a specific canvas course.

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 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 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 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 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...

Update User Settings

Updates a canvas user's preferences for various interface elements and content interaction behaviors.

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 duplica...

Upload submission file

Uploads a submission file for an assignment in a canvas course for a specified `user id`; this user must be enrolled, the assignment open for them, and 'masquerade' permissions...

Chat or automate

Put Canvas on autopilot.

Ask once, or set it and forget it. Turn Canvas actions into recurring vMira workflows — scheduled runs and Canvas event triggers that run on their own and deliver straight to your chat on any platform.

Every morning

Mira create account notification and sends the result to your chat.

When a Canvas event fires

Mira kicks off a workflow automatically — Canvas ships 6 event triggers.

On any schedule

Mira chains several Canvas actions into one recurring workflow, delivered wherever you chat.

Try asking

Things to ask Mira about Canvas.

Create account notification in Canvas

Create appointment group in Canvas

Create an assignment in Canvas

Create assignment override in Canvas

Create Calendar Event in Canvas

Connect in a few steps

How to connect Canvas to vMira.

01

Open a chat

On the web app or in WhatsApp, Telegram, Instagram or Messenger.

02

Ask for Canvas

Tell Mira what you want done — e.g. “Create account notification in Canvas.”

03

Add your credentials

Connect Canvas with your own API key or OAuth app — Mira stores it securely and acts on your behalf, revocable anytime.

FAQ

Canvas + vMira, in brief.

Can I connect Canvas to AI?

Yes. Connect Canvas to vMira and run it from any chat with your own credentials. Mira turns your plain-language request into the right Canvas action and runs it on your account.

What can Mira do with Canvas?

87 Canvas actions — including Create account notification, Create appointment group, Create an assignment. Just ask in plain language once it is connected.

Can I automate Canvas or run it on a schedule?

Yes. Beyond one-off asks, build recurring vMira workflows — scheduled runs and Canvas event triggers that chain Canvas actions and deliver the result to your chat automatically.

Which apps can I use Canvas from?

The web at vmira.ai and inside WhatsApp, Instagram, Telegram, Messenger and LINE — one account, with your history and connected apps following you across every surface.

Is Canvas on vMira free?

You can start free. Paid plans (from $4/mo) raise the limits and unlock heavier use, the top models, and more workflow runs. The same account works on the web and every messaging app.

Half the price

Every AI. Up to 200× the usage. From $4 a month.

See plans