Canvas LMS REST API Documentation We have relocated to Instructure Developer Documentation Portal 🎉 Please update your bookmarks This page will automatically redirect after July 1, 2026
OAuth2 - Canvas LMS REST API Documentation OAuth2 is a protocol designed to let third-party applications authenticate to perform actions as a user, without getting the user's password Canvas uses OAuth2 (specifically RFC-6749) for authentication and authorization of the Canvas API Additionally, Canvas uses OAuth2 for LTI Advantage service authentication (as described in the IMS Security Framework) Accessing the Canvas API Storing
Canvas LMS REST API Documentation Canvas LMS includes a REST API for accessing and modifying data externally from the main application, in your own programs and scripts This documentation describes the resources that make up the API
Enrollments - Canvas LMS REST API Documentation Depending on the URL given, return a paginated list of either (1) all of the enrollments in a course, (2) all of the enrollments in a section or (3) all of a user's enrollments This includes student, teacher, TA, and observer enrollments If a user has multiple enrollments in a context (e g as a teacher and a student or in multiple course sections), each enrollment will be listed separately
SIS Import Format Documentation - Canvas LMS REST API Documentation SIS Import Format Documentation Instructure Canvas can integrate with an institution's Student Information Services (SIS) in several ways The simplest way involves providing Canvas with several CSV files describing users, courses, and enrollments These files can be zipped together and uploaded to the Account admin area Standard CSV rules apply:
Courses - Canvas LMS REST API Documentation The records include the 'last_login' field which contains a timestamp of the last time that user logged into canvas The querying user must have the 'View usage reports' permission
Users - Canvas LMS REST API Documentation Please note our global identifiers might change if your Canvas instance goes through shard migration process, in this case your current shardId in the global identifier will change to a new shardId Local identifiers do not change after shard migration and stay unique in the context of the Canvas account
Manually Configuring LTI Advantage Tools - Canvas The deployment_id in Canvas is exposed after a tool has been deployed using the client_id Configuring the Tool in Canvas With LTI Advantage, Canvas moved to using Developer Keys to store tool configuration information After a developer key is created and enabled, tools can be deployed to accounts sub-accounts or courses