Moodle is the most widely used learning management systems in education. If you're part of an edtech company working with clients that use Moodle, you've probably been asked about how your app integrates with Moodle.

Moodle is a self-hosted and open source platform. Moodle supports integration through its Core APIs and through the LTI® standard (including LTI 1.3 and LTI Advantage). In this article, we'll cover some of the quirks of Moodle integration and how it can be surprisingly challenging.

Moodle Plugins

Like other LMSs, Moodle has APIs that can be accessed by integrated third-party application. However, Moodle's Core APIs can only be accessed through the installation of a plugin.

Moodle requires application developers to write a plugin that allows the app to interface with a Moodle environment. Thus plugin must be written in PHP and manually installed in a school's Moodle instance by the Moodle administrator.

Self-Hosted Moodle Environments

Moodle environments are self-hosted by the district or school. Thus, updates to Moodle installations must be pushed by IT administrators of the school. If an administrator does not make regular updates, it can affect the compatibility of your application with the LMS. This can cause problems if the installed Moodle environment does not support the most up-to-date version of LTI or set of Core APIs.


These challenges are just a subset of some of the issues you could run into while integrating with Moodle. LMS integrations are usually not as straight-forward as they might seem at first. In fact, you should take into account the differences and quirks of each platform before building out your own integrations.

If you're looking for some help in getting your app integrated with Canvas, we'd love to chat! Our team at Edlink has worked with several publishers and developers to get their platforms integrated with Moodle. In fact, the Edlink API can also get your app connected to other LMSs, including Schoology, Blackboard, Microsoft Teams, and others. To learn more about what we do and how we can help, please give us a shout 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.