Canvas · OpenAPI Overlay 1.0.0

API Evangelist enhancements for Canvas LMS Courses API

4 actions 4 updates update extends openapi/canvas-courses-api-openapi.yml
Derived by API Evangelist Built from the contracts Canvas publishes. Canvas did not publish this file.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-providerx-apievangelist-sourcex-apievangelist-source-formatx-apievangelist-harvestedx-apievangelist-artifactsx-agentic-readinessx-notex-deprecation-source

Targets 3

$.info
$.servers
$.paths.*.*[?(@.deprecated == true)]

OpenAPI Overlay

Raw ↑
overlay: 1.0.0
info:
  title: API Evangelist enhancements for Canvas LMS Courses API
  version: 1.0.0
extends: openapi/canvas-courses-api-openapi.yml
actions:
- target: $.info
  update:
    x-apievangelist-provider: canvas
    x-apievangelist-source: https://canvas.instructure.com/doc/api/api-docs.json
    x-apievangelist-source-format: Swagger 1.2
    x-apievangelist-harvested: '2026-09-05'
    x-apievangelist-artifacts:
      conventions: conventions/canvas-conventions.yml
      errors: errors/canvas-problem-types.yml
      rate_limits: rate-limits/canvas-rate-limits.yml
      scopes: scopes/canvas-scopes.yml
      authentication: authentication/canvas-authentication.yml
      lifecycle: lifecycle/canvas-lifecycle.yml
      conformance: conformance/canvas-conformance.yml
      events: asyncapi/canvas-live-events-webhooks.yml
      data_model: data-model/canvas-data-model.yml
      skills: skills/_index.yml
- target: $.info
  update:
    x-agentic-readiness:
      idempotency: none — no idempotency key anywhere in 566 mutating operations
      reversibility: documented — reversal operations exist, no windows are published
      rate_limit_signal: X-Request-Cost / X-Rate-Limit-Remaining, 429 on exhaustion
      error_catalog: not published by the provider
      source: conventions/canvas-conventions.yml
- target: $.servers
  update:
    x-note: Canvas is multi-tenant and self-hostable. canvas.instructure.com is Instructure's own Free-for-Teacher
      instance, not "the" Canvas host — every institution runs its own, plus a .beta and .test sibling. Always parameterise
      the host.
- target: $.paths.*.*[?(@.deprecated == true)]
  update:
    x-deprecation-source: Instructure declares deprecation per operation in the first-party Swagger 1.2 (`deprecated`
      + `deprecation_description`); it emits no RFC 8594 Sunset/Deprecation headers.

Work with this as data

Every overlay here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for openapi overlays

4 MCP tools reach this
  • find_overlaysBrowse and filter every overlay in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/canvas-canvas-courses-api-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.