What is xAPI?

xAPI (the Experience API, also called Tin Can) is an open e-learning specification for recording learning experiences as statements such as "Priya answered Question 3". Statements are sent to a Learning Record Store (LRS), where reporting tools can query them through a standard API.

Last updated:

How an xAPI statement works

Every statement says who did what, and can add how it went and in what context.

PartWhat it recordsExample
ActorWho did itPriya Nair
VerbWhat they didanswered
ObjectWhat they did it toQuestion 3
Result (optional)How it wentCorrect, the option chosen, 33 seconds
Context (optional)The situationThe course, the lesson and the attempt
{
  "actor":  { "name": "Priya Nair", "mbox": "mailto:priya@example.com" },
  "verb":   { "id": "http://adlnet.gov/expapi/verbs/answered",
              "display": { "en": "answered" } },
  "object": { "id": "https://example.com/course/question-3" },
  "result": { "success": true, "response": "report-to-warden",
              "duration": "PT33S" }
}

Where statements go: the Learning Record Store

A Learning Record Store (LRS) receives, stores and returns xAPI statements. It can be a stand-alone system or built into an LMS. Reporting tools, dashboards and BI tools read learning data from the LRS through the same standard API, so the data isn't locked into one product. When your LRS is independent of your LMS, you can change LMS and keep your learning history.

What xAPI can record

  • Every answer, including the wrong option a learner picked
  • Each decision in a branching scenario, and the ending reached
  • Each rating on a Likert scale, such as how strongly a learner agrees
  • Each hotspot opened, and each link followed to another scene, in a 360° virtual tour
  • Video and audio: plays, pauses, seeks and how much was watched
  • Assessment attempts, scores and pass or fail
  • Learning outside courses, such as simulations, apps and observed practice at work

xAPI versions and profiles

xAPI 1.0.3 is the version most systems support. xAPI 2.0 is published by IEEE as standard 9274.1.1. An xAPI profile sets the verbs, activity types and rules for a kind of learning, so statements from different sources mean the same thing. cmi5 is the profile that defines how an LMS launches and tracks an xAPI course.

How xAPI Course Builder uses xAPI

xAPI Course Builder is an authoring tool, not an LMS or an LRS. Courses you export as an xAPI or cmi5 package generate statements that follow the xAPI specification and a published xAPI profile, and every export includes a list of its activities. Statements are sent when the course is launched, to the Learning Record Store your organisation chooses.

Still on SCORM? See how xAPI compares with SCORM.

Frequently asked questions

Is xAPI the same as Tin Can?

Yes. Tin Can was the name of the project that developed it, and the specification was released as the Experience API, or xAPI. Both names refer to the same specification.

Do I need a Learning Record Store to use xAPI?

Yes. xAPI statements are sent to a Learning Record Store, which stores them and returns them to reporting tools. An LRS can be a stand-alone system or built into an LMS.

Does xAPI replace SCORM?

xAPI records far more than SCORM, but on its own it doesn't define how an LMS launches a course. cmi5 adds those launch rules, so xAPI with cmi5 is the standards-based replacement for SCORM in an LMS.

Can xAPI track learning outside an LMS?

Yes. Any system that can send statements to an LRS can record learning, including e-learning, simulations, mobile apps and workplace observations. SCORM only tracks courses an LMS launches.

Who maintains xAPI?

xAPI was developed under the Advanced Distributed Learning (ADL) Initiative. Version 2.0 is published by IEEE as standard 9274.1.1.

Related pages

Build your first AI‑generated course today

Start with the material you already have. Turn it into an interactive course, then export it as xAPI or cmi5 for your LMS.