The Beginner's Guide To LMS Integrations

The Beginner's Guide To LMS Integrations
Summary: This article provides a beginner’s guide to LMS integrations. The goal is to equip non-technical training managers with the basic vocabulary for evaluating the technical integration requirements of an LMS.

How To Face The Challenge Of LMS Integrations

The long-term success of an LMS implementation is often as much about technology integrations as it is about delivering learning content. During the vendor selection process, many buyers focus primarily on the learning experience, and are not equipped to ask the deep questions about technical integrations. A vendor that offers “APIs” is by no means a guarantee of a smooth integration for you. Neither is the statement that two systems will “integrate”, without further diving into the details of your use case and needs.

The Functional Integration Components

As preparation, we suggest first thinking through the following three integration components for your organization:

  1. Content.
    Where will your content be hosted? Will you be uploading and creating and uploading content to be hosted directly by the LMS? Or will you be integrating and embedding content from external resources like Google Docs, FTP servers, Box, YouTube, cloud-based labs, and other websites?
  2. Users.
    How will users log into the LMS? Will they self-register or will they be invited to training? Should they be able to view a catalog prior to registration? Will they reuse login credentials from another application? Will they pay for training, and if so, what is the expected workflow?
  3. Data.
    What user data is needed (e.g. department, company, job title) and how will the LMS obtain it? Should new course registration data be sent to your company’s HR, CRM, sales, and marketing systems? What about course progress, completion data and certifications? For paid training, how should financial data integrate with internal accounting systems?

The questions above illustrate the potential complexities of a seemingly simple question like “does your LMS integrate with Google?” The LMS vendor could interpret this question as any of the following:

  • Users being able to login with Google Plus or Google Apps for Work credentials
  • Courses pulling in embedded Google Docs
  • Sending course registration data to a Google Spreadsheet
  • Using a Google Group as the discussion forum
  • Tracking web analytics with a Google Analytics account
  • Conversion tracking for paid ads on Google Adwords
  • And the list goes on!

The Technical Concepts

Thinking through your needs of LMS integrations is the first step to asking the right questions during the LMS selection process. Once you’re ready, here are the 4 basic technical concepts you need to know.

  1. Single Sign On (SSO).
    Single Sign On refers to the ability of users to login using their credentials from another application. This is convenient for users because it reduces friction and is one less password for them to remember. The application which is responsible for holding the credentials is called the “identity provider,” whereas the receiving application (usually the LMS) is called the “service provider”. To implement Single Sign On, both systems need to be enabled as the correct provider and with the same protocol. Common protocols include JSON web tokens (JWT), OpenID, OAuth2, and SAML 2.0. SAML 2.0 usually covers Salesforce.com logins and Microsoft Active Directory (via Federation Services). Otherwise, SSO will often require some work from your own development team as it’s not common for applications to already be set up as identity providers.
  2. Application Programming Interface (API).
    APIs is a generic software term for the connection between different technical systems. Two software systems can share data with each other using APIs. APIs will generally be either REST or SOAP based. REST APIs are a newer standard and generally considered easier to integrate with, but there are many older software systems that still use SOAP. In addition to the API standard used, it’s important to get documentation to understand whether the API supports the specific operations you need. Common API tasks include adding users, grouping users, adding course enrollments, and getting course progress by user. Once you know your requirements, you can review the vendor’s documentation to ensure your needs are covered.
  3. Webhooks.
    Webhooks are set up to ‘push’ data, whereas APIs are set up to ‘pull’ data. For example, let’s say you have 10K leads in Salesforce.com. With APIs, in order to get course updates, Salesforce needs to call (‘pull’) the LMS for all 10K records. This creates heavier dependencies between the systems and can only be synced periodically. Webhooks, on the other hand, are a ‘push’ model where course updates can be queued as they occur. Using the same example, the LMS can post events to a webhook and your developers can update Salesforce much more flexibly.
  4. Javascript tracking.
    Many web and marketing tools use Javascript tracking scripts for analytics, including Google Analytics, Mixpanel, Optimizely, Hubspot, Marketo, Scout Analytics and more. Javascript tracking is an easy cut-and-paste code snippet that automatically communicates with other systems without further integration. To use these tools, your LMS will need to be able to insert the Javascript at the appropriate places on all training pages (usually in the header or footer). Paid advertising also requires the use of a conversion pixel or event that executes only when a course is purchased, for correct attribution back to the campaign.

Performing due diligence on your LMS integrations will be much more effective if you have a strong understanding of your functional and technical needs first. Some integrations may work out-of-the-box, especially if your LMS has implemented standard SSO protocols or is integrated with third party services like Okta and Zapier that provide common connections. New integration points can theoretically be built later, but unanticipated requirements may cause the project to go significantly over budget or deadline if your LMS vendor isn’t aligned with your needs. Use the guide above to ensure a successful and smooth LMS implementation and launch.