The Learning Tools Interoperability (LTI®) protocol is a standard for integration of rich learning applications within educational environments. ref
Implementing the LTI® 1.3 protocol and all of it's services can be a very difficult, time consuming task, but using LTIaaS any project can be easily turned into a fully LTI® 1.3 compliant learning tool, with minimal alterations to the project's codebase.
LTIaaS works as a service that sits between an application and a LMS (like Moodle or Canvas), handling LTI® communications and giving the application access to all of the LTI® services and functionalities through a very simple to use RESTfull API.
A Quick-Start Guide¶
Here are the steps that are required to get a learning tool integrated into an LMS using LTIaaS:
1. Create An Account¶
Using the LTIaaS Portal, set up an account. As part of this process, you will configure LTIaaS to launch your tool with a launch URL of your choosing (for example: https://mytool.com/launch). This URL is the main entrypoint into your learning tool.
2. Register Your LTIaaS Tool¶
The next step is to register your LTIaaS learning tool with an LMS. LTIaaS has several guides describing how to do this with the most popular LMSes.
3. Launch Your LTIaaS Tool¶
From within the LMS, the learning tool needs to be made accessible to the users (i.e students). This is typically done by adding the tool to a course within the LMS, but each LMS supports many different custom placements for tools.
Once the tool has been exposed to the user, the link for the tool must be clicked for that tool within the LMS.
Note that LMSes require the link for the tool to be clicked to launch the tool. There is no way to auto-display tool content as a widget on an LMS home page for example.
4. Use The LTIaaS API¶
As seen in the figure below, when your tool launches:
- LTIaaS does an OAuth with the LMS and then redirects the user to the URL registered during your onboarding configuration. LTIaaS will also append an
?ltik=...query parameter to the launch URL, a signed JWT identifying the current launch context.
- You can use the
ltikJWT token (and your API Key) to make a request to the idtoken endpoint to get information about the launch context. i.e. the user name/email, LMS name, and other basic information about the specific session for the specific user.
- You can use the
ltikJWT token (and your API Key) to make requests to the grades or memberships APIs to send/get the information you want to/from the LMS.
Note: When making API calls, we recommend that you make them all from your applications's back-end so as to not risk exposing your API key.