Blog Post

Articles
2 MIN READ

An Introduction to xAPI

CommunityTeam's avatar
9 years ago

When you’re getting started with e-learning, getting to know some of the basic terminology can be confusing, particularly the arena of e-learning standards. Standards are critical to understand, but they sure aren’t sexy.

E-learning uses standards such as SCORM and xAPI to ensure that different kinds of online learning content can be tracked and reported to a learning management platform. SCORM was designed to make sure that online learning courses could pass basic info, such as score and completion status to a learning management system (LMS). xAPI was developed on the same basic concept but takes it a step further.

To help folks get comfortable with e-learning standards, we wrote this handy introduction to SCORM, and pretty quickly we heard requests to do an explainer on xAPI. At E-Learning Heroes, your wish is our command! Here’s what you need to know.

What is xAPI?

xAPI is an application programming interface (hence API) that allows different types of learning activities to be tracked in a central location.

Let’s first define “application programming interface.” An API is a protocol that lets different software programs communicate and share information with each other. For example, when you set up Twitter to automatically update your Facebook account each time you post a tweet, Twitter is sending info to Facebook via its API.

While SCORM is specifically a set of standards that allows e-learning courses and LMSs to communicate, xAPI is an API that allows other software to track many different types of learning activities.

xAPI still allows you to use uniform standards for e-learning to communicate information from e-learning courses to LMSs. But it also enables you to store different types of learning experiences in what’s called a learning record store (LRS). This broader definition of e-learning standards makes room for innovation in what kinds of learning activities can be tracked.

For example, an LMS could employ xAPI to create a browser extension that allows learners to track what articles, videos, or other content they’ve consumed through their browser. That means you can report learning that occurs outside of the LMS back to the LMS. Cool, right?

How Do Articulate Apps Work with xAPI?

So I bet you’re wondering, how do I know if I can or should publish to xAPI? You can publish to xAPI if your LMS supports it. And if your LMS supports xAPI, we do recommend publishing to that standard. We generally find that course authors get the best results by publishing to the most current standard supported by their LMS.

If you’re creating e-learning with Articulate authoring apps, it’s a cinch to create xAPI–compliant content. Learn more here:

More Resources

Dying to learn more about the xAPI? The xAPI website has tons of great resources. We’d recommend getting started with these:

Published 9 years ago
Version 1.0
  • PunamParab's avatar
    PunamParab
    Community Member
    Thanks for this article, Nicole. I was actually on a look out for Tin Can API articles. The examples you have included made it easier for me to understand.
  • Great introduction to Tin Can API. It really helped clarify the similarities and differences between it and SCORM. Thanks!
  • Good stuff Nicole. Wondering if you could elaborate on the steps for building a "Tin Can API to create a browser extension that allows learners to track what articles, videos, or other content they’ve consumed through their browser."

    Thanks!
  • Is there any way to summarize how Rise and Storyline currently interact with xAPI?

    From the description Rise can publish to xAPI, but is limited communicating the same kind of data as a SCORM export. It would not track completion of individual components, or the state of components. Storyline appears to transmit more data, but from the description of the categories I am not sure what the practical implications are.

    What I'm primarily interested in assessing, is whether the authoring environments can be used to track more complex interactive learning experiences such as serious games... with completion and performance on specific tasks, or even access of external documents tracked in the LMS.

  • AkritiSharma's avatar
    AkritiSharma
    Community Member
    Hi,
    I want to track button click in Articulate SL-360, for example displaying a layer, using TinCan API. I saw following link but there is not verb to track button click.
    https://articulate.com/support/article/Implementing-Tin-Can-API-to-Support-Articulate-Content

    When Articulate connect to LRS then it creates a connection instance to pass statements.
    Can we have access to that instance to use in "Execute JavaScript" panel?
    Something like xAPI.sendStatement(...) function?
    Then I can pass my xAPI statements from "Execute javascript" panel, in addition to Usual Articulate statements.


  • Thanks for the article! Super helpful to get the basic difference between SCORM and xAPI.
  • A client wants me to remove all xAPI calls from a storyline file. I've removed all the triggers but when I test in SCORMCloud I find that there is still some code reporting. Can you help guide me as to where I can find that remaining code and remove it?