External Tools Introduction

Canvas, like many LMSs, supports loading external resources inline using the IMS LTI standard. These tools can be configured on a course or account level, and can be added to course modules or used to create custom assignments (see the LTI Outcomes service for more information on that). Canvas supports some additional integration points using LTI to offer a more integrated experience and to allow for more customization of the Canvas product, even in a cloud environment. This is accomplished by configuring additional settings on external tools used inside of Canvas.

Because tools can be configured at any level in the system heirarchy, they can be as general or specific as needed. The Chemistry Department can add chemistry-specific tools without those tools cluttering everyone else's interfaces. Or, a single teacher who is trying out some new web service can do so without needing the tool to be set up at the account level.

Types of Tool Integrations

Canvas currently supports the following types of tool extensions:

External tool assignments, with grades passed back from the tool to Canvas:

This type of integration is part of the LTI 1.1 specification, and is important in that it allows external services to take care of things that can be graded automatically, or outside the LMS scope.

Example use cases might include:

Adding a link/tab to the course navigation:

Example use cases might include:

Adding a link/tab to the account navigation:

Example use cases might include:

Adding a link/tab to the user profile navigation:

Example use cases might include:

Selecting content to add to a variety of locations:

Example use cases might include:

How to Configure/Import Integrated Tools

Tools extensions can be configured using LTI configuration XML as specified in the IMS Common Cartridge specification, or using the external tools API. Configuration XML contains all non-account-specific settings (everything except the consumer key and shared secret, which must always be entered manually). The user can retrieve the info from a standard URL that you provide (recommended), or paste in the XML that you provide. For more information on this configuration, see the "Examples" link.

For information on how to programmatically configured external tools, so users don't have to copy and paste URLs or XML, please see the Canvas external tools API.