# Canvas Modules API

**Canonical:** https://apis.io/apis/canvas/canvas-modules-api/  
**Provider:** Canvas — https://apis.io/providers/canvas/  
**Base URL:** https://canvas.instructure.com/api/v1  
**Documentation:** https://canvas.instructure.com/doc/api/

Canvas Modules API is one of 145 APIs that [Canvas](https://apis.io/providers/canvas/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Modules. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, a GitHub repository, an API reference, and rate-limit docs.

The Modules API from Canvas — 10 operation(s) for modules.

## Operations (17)

| Method | Path | Summary |
|---|---|---|
| GET | `/v1/courses/{course_id}/modules` | List modules |
| POST | `/v1/courses/{course_id}/modules` | Create a module |
| GET | `/v1/courses/{course_id}/modules/{id}` | Show module |
| PUT | `/v1/courses/{course_id}/modules/{id}` | Update a module |
| DELETE | `/v1/courses/{course_id}/modules/{id}` | Delete module |
| PUT | `/v1/courses/{course_id}/modules/{id}/relock` | Re-lock module progressions |
| GET | `/v1/courses/{course_id}/modules/{module_id}/items` | List module items |
| POST | `/v1/courses/{course_id}/modules/{module_id}/items` | Create a module item |
| GET | `/v1/courses/{course_id}/modules/{module_id}/items/{id}` | Show module item |
| PUT | `/v1/courses/{course_id}/modules/{module_id}/items/{id}` | Update a module item |
| DELETE | `/v1/courses/{course_id}/modules/{module_id}/items/{id}` | Delete module item |
| POST | `/v1/courses/{course_id}/modules/{module_id}/items/{id}/select_mastery_path` | Select a mastery path |
| PUT | `/v1/courses/{course_id}/modules/{module_id}/items/{id}/done` | Mark module item as done/not done |
| GET | `/v1/courses/{course_id}/module_item_sequence` | Get module item sequence |
| POST | `/v1/courses/{course_id}/modules/{module_id}/items/{id}/mark_read` | Mark module item read |
| GET | `/v1/courses/{course_id}/modules/{context_module_id}/assignment_overrides` | List a module's overrides |
| PUT | `/v1/courses/{course_id}/modules/{context_module_id}/assignment_overrides` | Update a module's overrides |

## Machine-readable artifacts (11)

- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/openapi/canvas-modules-api-openapi.yml
- **Documentation** — https://canvas.instructure.com/doc/api/
- **Authentication** — https://canvas.instructure.com/doc/api/file.oauth.html
- **Pagination** — https://canvas.instructure.com/doc/api/file.pagination.html
- **GitHubRepository** — https://github.com/instructure/canvas-lms
- **APIReference** — https://canvas.instructure.com/doc/api/
- **Swagger** — https://canvas.instructure.com/doc/api/api-docs.json
- **RateLimits** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/rate-limits/canvas-rate-limits.yml
- **OAuthScopes** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/scopes/canvas-scopes.yml
- **ErrorCatalog** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/errors/canvas-problem-types.yml
- **DataModel** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/data-model/canvas-data-model.yml

## Other Canvas APIs (12)

- [Canvas LMS GraphQL API](https://apis.io/apis/canvas/canvas-lms-graphql-api/)
- [Canvas LTI Integrations](https://apis.io/apis/canvas/canvas-lti-integrations/)
- [Canvas Courses API](https://apis.io/apis/canvas/canvas-courses-api/)
- [Canvas Access Tokens API](https://apis.io/apis/canvas/canvas-access-tokens-api/)
- [Canvas Accessibility Course Scans API](https://apis.io/apis/canvas/canvas-accessibility-course-scans-api/)
- [Canvas Accessibility Course Statistics API](https://apis.io/apis/canvas/canvas-accessibility-course-statistics-api/)
- [Canvas Account Calendars API](https://apis.io/apis/canvas/canvas-account-calendars-api/)
- [Canvas Account Domain Lookups API](https://apis.io/apis/canvas/canvas-account-domain-lookups-api/)
- [Canvas Account Notifications API](https://apis.io/apis/canvas/canvas-account-notifications-api/)
- [Canvas Account Reports API](https://apis.io/apis/canvas/canvas-account-reports-api/)
- [Canvas Accounts API](https://apis.io/apis/canvas/canvas-accounts-api/)
- [Canvas Accounts (Lti) API](https://apis.io/apis/canvas/canvas-accounts-lti-api/)

## Tags

Modules

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/canvas/canvas-modules-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/canvas/.
