The LTI Standard Integration for Canvas
The LTI standard (or, Learning Tools Interoperability) is from 1EdTech Consortium (formerly, IMS Global Learning Consortium) that several LMSs adopted to provide interoperability. Products that are LTI-compliant can work with any LMS that is also LTI-compliant, as long as the LMS supports the same LTI specification.
Canvas supports the most recent release of the LTI standard: LTI 1.3 and LTI Advantage Specification. Canvas allows users to use LTI Launch. This typical launch process lets LTI-compliant apps launch in an iframe in Canvas. Since Canvas supports LTI Advantage, the app can use the improved grade passback and enrollment provisioning services offered by LTI Advantage.
Many Canvas LTI-compliant apps can be found at Instructure's EduAppCenter portal. This portal also contains information about configuring and building LTI apps for Canvas and other LMSs, such as Moodle, Blackboard, and Brightspace.
API Integration for Canvas
API integration allows products to directly communicate with Canvas through the proprietary Canvas API. Users can authenticate into an external product using their Canvas credentials through an OAuth 2.0 workflow. Once the product and Canvas authenticate the user, then the product can act on behalf of the user. The product can perform functions, such as sending back grades to the user gradebook or creating new assignments, in Canvas programmatically via the Canvas API. This is all done while the user is on the product and not in Canvas.
Canvas has two different sets of APIs that developers can use to build integrations: the Canvas REST API and the Canvas GraphQL API. The Canvas GraphQL API is more recent and new features from Canvas will be primarily developed in GraphQL. However, the GraphQL API does not currently include all of the same requests that the REST API covers. For example, scopes that are enforced via a Canvas developer key only address REST API requests.
Should I Use API or LTI to Create a Canvas Integration?
The type of integration that developers should build depends on the needs of institutions from edtech organizations. Some schools particularly need LTI integration with their Canvas environments. Others may be looking for a solution that includes features that are better supported by API integration, such as school or district-wide rostering and assignment creation. Thus, having solutions for both situations can prove to be valuable when trying to work with a multitude of schools.
Read More on Canvas Integrations?
Here are other articles we’ve written on Canvas to help you on your journey:
- Where to Start with Canvas Integration?
- What Exactly Are Canvas Developer Keys?
- The Challenges of Integrating with Canvas
- What to Know About Single Sign-On for Education
- Single Sign-On in Edtech: 6 Reasons Why You Need To Give Schools Multiple Options for SSO
Learn More about Edlink
If you're looking for a partner who can help guide you through developing Canvas integrations (like these), then let’s introduce ourselves. We’re Edlink!