(Originally Published on eLearning Industry.)
API is a term that gets used a lot when talking about LMS software. Companies use the number of APIs they have as a reason their software is great, but why? And how? And under what conditions exactly?
We know that getting into high-tech programming talk is not always exciting to development professionals who want to focus on learning, but they should know the basics about APIs so they can make smart decisions about what their company needs from APIs and API features.
What’s an API?
API stands for Application Programming Interface. In short, it’s a protocol that allows websites to move data from one system to another. In your everyday life, you see this when you, say, search for plane tickets. APIs allow the data from various airplane websites to show up in an aggregated place. It’s channeling the data from multiple systems into one.
When looking at the APIs that a system may have, another word used to describe them is “integrations”. This word is more intuitive – when you see that the flight ticket website integrates with airlines’ systems, you can imagine what that data might be and why. So when you see either word, understand they are likely discussing the same thing.
What’s the Difference Between a REST API and a SOAP API?
Companies often brag about the number of integrations – or APIs – that they have. They are trying to inform you about how many different systems their LMS can plug into. If they say, “we have 150 APIs” then they plug into 150 different systems, whether its an HR system, virtual classroom software, or more.
But here’s the kicker…you also need to ask – “Are those REST APIs or SOAP APIs?” These two different types of APIs interact with your LMS very differently, so to understand how certain integrations will truly behave or benefit your workflow, you must understand the difference between these types of APIs.
SOAP is a little bit older than REST and REST has become way more common amongst developers. But SOAP still has situations where it’s the best choice.
REST stands for “Representational State Transfer”. They are made to be simple, and as a result they are often also static, with uniform interfaces. It’s built on a client-server principle that makes trips between two information sources. When you imagine a REST API, imagine a wall outlet that you can plug into. They may be simple, but their simplicity makes them fast and easy to use.
SOAP stands for “Simple Object Protocol”. It’s considered to be the more secure option out of the two, so it’s commonly chosen when security is a concern. It has web servicers (WS) security and support for identify verification. One great application is to use it to handle transaction information. It’s also more flexible. It can be used with other protocols, technologies, and web standards. This means that it works really well in extended enterprise environments, making it a great choice for many corporate training programs.
What about xAPI? How Does that API fit in?
xAPI (sometimes referred to as Tin Can) also transfers data between systems, but not in a way that’s relevant to your average APIs. xAPI has more to do with Learner Record Stores and other protocols attempting to extend the learning environment and pull data from areas outside of an LMS. So don’t worry about it when you’re thinking about web integrations.
What are the Most Important Integrations for E-Learning?
This depends on the nature of your training program or business model, but here are some of the most widely used API connections:
HRIS, payroll, and other HR software: One of the most useful integrations is with your HR systems. The right setup can mean that employees will automatically be assigned to training when enrolled in the HR system. This makes onboarding seamless and painless for administrators. It also makes it simple for the end user if you set up single sign-on support.
Virtual classrooms: Integrating with GoToWebinar, WebEx, or whatever preferred virtual classroom software you’d like makes it simple to store data about the way learners interact with these events. You can look at rosters, view attendance, and see it alongside other user data with the click of a button.
Customer Relationship Management (CRM): Especially in ecommerce environments, being able to integrate with CRM software can simplify managing customers and tracking sales data.