← All integrations

Canvas LMS

209 operations6 webhooks

Learning management system for courses, assignments, grades, and educational content.

Supported operations

  • Close Notification For UserDestructive

    Close an account notification for the current user

  • Create Account NotificationWrite

    Creates a global notification within a Canvas account

  • Get Account Graph QlWrite

    Call Canvas GraphQL (/api/graphql); supply the query document and variables in input.body

  • Get Account Help LinksRead-only

    Retrieves help links configured for the specified Canvas account

  • Get Account NotificationsRead-only

    Retrieve global account notifications for the current user

  • Get Accounts That Users Can Create Courses InRead-only

    Retrieves Canvas accounts where the current user can create courses

  • Get Single AccountRead-only

    Retrieve information on an individual account by ID

Supported triggers

  • Assignment Graded

    Canvas Live Event when an assignment grade changes

  • New Assignment Submission

    Canvas Live Event when a new assignment submission is created

  • New Course Created

    Canvas Live Event when a course is created

  • New Discussion Message

    Canvas Live Event when a discussion entry is created

  • New Discussion Topic

    Canvas Live Event when a discussion topic is created

  • New File Uploaded

    Canvas Live Event when a file attachment is created

FAQ

Install corsair and @corsair-dev/canvas, add the Canvas LMS plugin, and connect with an API key or OAuth. Then call methods like corsair.canvas.api.accounts.closeNotificationForUser() from your app. Corsair verifies webhooks, stores tokens, and syncs data per tenant.

Yes. Canvas LMS supports an API key or OAuth. Use credentials or OAuth scopes that match what you automate. Create them in the Canvas LMS developer console, then paste into Corsair or connect through managed auth in Hub.

Yes. One Corsair client can hit Canvas LMS, GitHub, Notion, Stripe, and the rest. Trigger Canvas LMS from a webhook, push updates to Slack, or chain actions across plugins. Same tenant context across integrations, plain TypeScript.

Teams use Corsair for learning management system for courses, assignments, grades, and educational content. Common builds include sync jobs, admin tooling, and agents that call Canvas LMS APIs from your backend. Webhook handlers react to Canvas LMS events and fan out to Slack, email, or other plugins in the same tenant. Local DB entities let you query synced Canvas LMS records without hitting the API on every read.

The SDK is open source. Self-host and you pay Corsair nothing for the integration layer. Hub bills for hosted auth and execution, not per Canvas LMS API call. Hub has a generous free tier. For hobby projects you can probably run the whole thing on free. Paid plans start to matter with more tenants or heavier traffic.

We maintain @corsair-dev/canvas in the open repo. When Canvas LMS ships API changes, upgrade the package. Your call sites stay typed. You should not need to rewrite the integration layer each time.

No. Corsair does not read your Canvas LMS data or hold individual access credentials. Credentials stay in your database. API calls run on your instance. We do not store Canvas LMS data on your behalf.