A Failure to Launch
Your learners are all ready for that new course you just finished. You finally get it done and you (hopefully) load it on the Learning Management System (LMS) testing server for one last check before you put it up on the distribution server.
That’s when it happens! Your test returns the error “Unable to Find API Adapter“.
Aargh! What’s Happening?
code in your course that communicates with the LMS can’t start that communication because it can’t find the Application Programming Interface
or API adapter.
The API adapter is kind of a liaison between the course and the LMS that makes a standard set of commands available that allows the course to ask for or send information to the LMS. It is usually provided and made available by the LMS using a standard name to make it easy.
Without connecting to the API adapter, the course cannot make any requests for information nor can the LMS provide them. That means no bookmarking, no recording progress or completion, no assessment scores – nothing.
Why Does This Happen?
There are many reasons this could be happening with your course, but usually, it boils down to one of three causes. To understand each of them better, let’s first look at what happens when a course is launched and attempts to communicate with the LMS.
All this builds one on the other. If the course cannot find the API adapter, it all comes to a screeching halt.
What Are the Reasons It Can’t Find the API Adapter?
The Course is Looking for the Wrong Adapter
Most of the code that provides for all the communication is pre-created to do things a certain way. In other words, since the process is intended to work in a very structured way there is rarely a need to change it.
The API adapter has a standard name so the course knows what to look for. For SCORM 1.2 courses it looks for “API” and for SCORM 2004 it looks for “API_1484_11”.
What that means is that the course is automatically looking for something with a known name in a known location. If it’s not there, you get the error.
The Course is Looking in the Wrong Place for the API Adapter
As mentioned earlier, the LMS launches the course in either a window or frameset depending on how it’s configured. The course, as created, also may or may not contain its own frameset. The APIWrapper looks for the adapter in a particular place based on an expected configuration between course files and the LMS launcher. If the configuration is not what it expects, then it ends up looking in the wrong place. If the file name it looks for is correct, then check for where the APIWrapper is looking for the file.
The LMS is Not Putting the API Adapter in the Right Place
It could also be the case that the LMS is just not putting the API Adapter in a place where the course can find it or not exposing the API Adapter at all. This is the LEAST LIKELY possibility, especially if the LMS is SCORM conformant. Part of the job of SCORM is to tell the LMS how and where to “expose” the API Adapter and it’s consistent.
The way to test this is to run another SCORM conformant course. If it runs, then the LMS likely isn’t your problem.
Frustrating But a Simple Fix
As you can see the issue can be on the content side, the LMS side, or can simply be developer error.
The API adapter error may seem daunting at first, but as demonstrated here it usually is a pretty easy fix that just requires a little investigative work.
Still having issues? You can always call us at 321-296-8166 or email us at firstname.lastname@example.org.