Connecting the Dots: Understanding API vs LTI Integrations
Imagine you want to use a new learning app alongside your school's learning management system (LMS), like Canvas or Blackboard. This article explains how these two systems can work together, focusing on two common methods: API and LTI integrations.
Think of integrations as "bridges" between different two different systems. In this case, will take a learning app and an LMS. Integrations would allow your LMS and the new app to share information securely, making things easier for educators and students with integrated functionality like single sign-on, rostering, content sync, and grade passback. Here's a simple breakdown of those two integration methods to connect to LMS providers:
API (Application Programming Interface) Integrations
Going back to the idea of a bridge, each LMS has its own unique API "bridge" that products like learning apps can "build to" and "connect". Just like bridges, these integrations can be built using very secure methods or not-as-secure methods. Additionally, these connections are usually more tailored and specific for their purpose. For example, if one LMS API "bridge" has the capability to transfer XYZ data sets, then a learning app can build their side of the API "bridge" to transfer XYZ data sets. However, just like bridges, LMS APIs are not all built the same way. This means an edtech developer would need to continue building custom "bridges" to connect with several LMS providers.
API: Can offer more customizable solutions and additional security methods, but isn't easily replicable.
LTI (Learning Tools Interoperability) Specification Integrations
One way to imagine what an LTI-specification integration is, is to go back to the idea of a bridge. The LTI specification is a type of bridge (read: a type of API integration) that has a more specific (or standardized) roadway built into it. To connect to an LMS, a learning app would need to make sure it has a bridge built and then also build its half of the LTI specification "roadway" to the LMS. This LTI specification "roadway" ensures a certain type of security in data transfer, however, additional security measures cannot be placed on top. Plus, if a bridge is built "wide enough" to transfer several different types of data that might be needed, the LTI specification "roadway" limits data transfer to only specific data sets and types.
Even though the "roadway" may come with some requirements on how to build it, LMS providers and learning apps usually build the specification in slightly different ways which causes frustration when the two ends don't connect seamlessly. Imagine being told to build a bridge and roadway which needs to have 6 pillars. But it isn't clear:
- if your side has to have all 6 pillars,
- if the other side needs to have all 6 pillars, or
- if the pillars need to be distributed (in some way!) between both ends.
In full context, each new LTI specification version requires both LMS providers and learning apps to rebuild their "roadways". And then some LMS providers don't host a way for learning apps to integrate using the LTI specification (like Google Classroom and Microsoft Teams) at all.
LTI Specification: Can offer some data transfer and "built-in" security, but limits customization and experiences.
Choosing the Right "Bridge"
In our opinion, we suggest that you ask learning apps to provide integrations for your learning institution. It is important for districts to have integrated functionality to keep up with the modern world. One way you could make sure that happens is by focusing on the functionality you could get from the app instead of asking about an integration method. In that way, you can be very clear about what your situation requires or is looking for, without jumping too far into technical jargon. You could ask questions like:
- Will my teachers be able to SSO using credentials from their LMS?
- Will my teachers have their accounts and their students' accounts created without having to set up accounts manually?
- Will grades show up without having to copy and paste them?
By getting a clear understanding of a vendor's functionality you can put the focus on the most important part of any integration - functionality (read: does it work?). This way you can gain integrations and also capitalize on the best way to use a vendor's product that is more tailored to your needs.
Got Questions?
I'd be happy to chat:
Comments