If you follow Edlink, you should know that developing API integrations for edtech platforms is our bread and butter. Building an integration through an LMS' API can provide serious advantages and make your app much more interoperable. There are several functions that your app can complete through an API integration that would not be possible through the LTI® standard.

However, API integration is not without its downsides. Here are five tips that you should keep in mind when considering building your own API integrations.

1. APIs are not standardized

The API for each LMS is proprietary. This means that each API is different for each LMS. Without the use of an intermediary (e.g. the Edlink API), you cannot reuse an API integration that you wrote for one platform with another. This is dissimilar to LTI, where an LTI app can be used across different learning management systems that support the standard.

2. There can be multiple versions of the LMS' API

Some LMSs have certain API functions that are separated from the main version of the API. For example, the API calls for creating assignments in Microsoft Teams are in beta. This means that any integrated application that uses this API could break in the future if Microsoft were to change the API.

Additionally, Canvas offers both a REST API and a GraphQL API that apps can use to integrate with Canvas environments. Canvas has said that the GraphQL API will be the primary focus for development in the future. However, there are many parts of Canvas that are not yet compatible with the GraphQL API. Thus, your app may need to use both the REST API and GraphQL API depending on the integration.

3. API integration often requires buy-in from school administrators

Many LMSs require a form of administrative approval in order to integrate with the platform. For example, Microsoft Teams and Canvas integrations require an administrator to authorize access to a third-party application. Additionally, this authorization process isn't straightforward and you may need to provide guidance to administrators to make the connection to your app.

4. APIs may not fully work for certain self-hosted environments

Certain LMSs, such as Canvas and Blackboard, have many schools that use a self-hosted version of the LMS. This means that IT administrators at the school manage when the LMS receives updates and how the LMS is configured. You may find that some school LMS environments lack the updates necessary to support some functions of the API, which obviously can hurt your integration.

5. API Keys are very sensitive

Some LMSs, such as Canvas and Brightspace, require admins to generate developer keys for third-party applications to connect through their API. These keys are very powerful and can allow access to sensitive data in the LMS. If the keys are not transmitted and stored securely, it can present a huge vulnerability. Thus, you have to have a way to make sure this is done properly if you want to integrate with Brightspace or Canvas.


While there are many benefits to integrating your app with an LMS via its API, you can see that there are many challenges you have to keep in mind. Writing and managing API integrations to multiple LMS can be taxing. This is why Edlink was created!

The Edlink platform supports API integrations with all of the major learning management systems, including Schoology, Canvas, Google Classroom, Microsoft Teams, and more. If you'd like to learn how Edlink can help your edtech app, we'd love to talk! Shoot us a message at accounts@ed.link or at our support page.

Learning Tools Interoperability® (LTI®) is a trademark of the IMS Global Learning Consortium, Inc. (www.imsglobal.org). Edlink LTI integrations are not certified by the IMS Global Learning Consortium, Inc.