Does Canvas Support LTI® 1.3?
The short answer
Yes. Canvas supports LTI® 1.3 and all three LTI® Advantage services, and has done for several years. It is also one of the more flexible platforms to register with, offering three routes rather than one.
Instructure's own reference is the Canvas LTI launch overview, which is worth reading alongside the specification itself from 1EdTech Consortium, Inc.
How registration works
Canvas offers all of these, in decreasing order of convenience:
- Dynamic registration. An administrator pastes one URL and the two systems exchange everything else. The least error-prone option, and the one to ask for first.
- Automatic JSON registration. You supply a configuration URL and Canvas reads the tool's settings from it, creating a developer key. Still far better than typing values by hand.
- Manual entry. Every field entered individually. Available, and the most likely to go wrong.
Registration in Canvas produces a developer key, which is where the client ID comes from. An administrator creates it at the account level and then installs the tool into the courses or sub-accounts that need it. Creating the key is not the same as installing the tool, and stopping after the first step is a common reason a launch never appears.
The Canvas-specific thing that catches people
The issuer is not the URL you would expect. Canvas frequently sends
https://canvas.instructure.com as the issuer rather than the institution's own
Canvas hostname, including for institutions on their own domain.
A registration keyed on the institution's URL will therefore fail to match the
launch, usually with an error saying the platform is not registered. If a Canvas
registration is not working and everything looks correct, this is the first thing
to check — try both the institution's URL and https://canvas.instructure.com.
Self-hosting Canvas for development
Canvas is open source, and running your own instance to develop against is common. Two warnings that will save time.
The Bitnami Canvas image on AWS does not ship with the provisions LTI® needs, and getting it working takes modification. A large share of the "Canvas will not work" reports we see trace back to it.
Self-hosted Canvas also needs secure session cookies configured correctly, or it will not create user sessions inside an iframe — which presents as the user being bounced back to the login screen repeatedly. See the error message reference for the fix.
If you need a Canvas instance and do not want to run one, Instructure's partner programme provides a hosted test instance.
Canvas-specific documentation worth having open
- LTI launch overview — Instructure's description of the flow
- Using window.postMessage in LTI tools — relevant if you are working around third-party cookie restrictions
- Assignment tools and grade passback — Canvas's account of AGS
Setting it up
The Canvas setup guide has the current step-by-step process, including screenshots of where each value goes.
Common questions
Does Canvas support LTI® Advantage?
Yes. Canvas supports deep linking, assignment and grade services, and names and role provisioning, though what a given course grants can still vary with how the tool was installed.
What is a Canvas developer key?
It is the registration record Canvas creates for a tool, and the source of the client ID. An administrator creates it at the account level, then installs the tool where it is needed.
Why does my Canvas registration say the platform is unregistered?
Most often the issuer. Canvas often sends https://canvas.instructure.com rather than the institution's own hostname, so a registration keyed on the latter will not match.
