Get started with xAPI in my content

You create learning content to sell or to use within your organization. How can you implement xAPI in that content?

Step 1: Publish to xAPI

Most eLearning content gets made in authoring tools. If you’re creating bespoke learning experiences beyond what’s possible in most authoring tools, you’ll want to scroll down to the Get innovative heading below.

The good news for authoring tool users is that your authoring tool probably already supports xAPI. Adoption is almost ubiquitous amongst authoring tool vendors and if your tool doesn’t support xAPI publishing, then you might want to consider using a different tool; there are plenty of great options.

Using xAPI for traditional e-learning courses with slides, interactions and quizzes is very straightforward. Just select the right publishing option and complete the settings and you’ve got a xAPI conformant course. If you have a large existing library of SCORM or AICC content the you don’t want to republish, that’s fine too; there are other options.

Get the activity id right

One common mistake made when publishing from authoring tools is the activity id setting. Your authoring tool should have an activity id setting for the course, but it’s not always obvious what should be included here. The following simple guidelines are a little stricter than the spec requires, but are close enough for people who aren’t spec geeks and want to keep things simple!

  • The activity id should be a web address, starting with http:// or https://
  • That web address should be within a website controlled by the organisation creating or commissioning the content, whether that’s an organization or a content vendor.
  • You don’t have to put anything at this address, it doesn’t need to be the address where the content is hosted; the point is to make sure the id is universally unique.
  • Ideally the address should be something meaningful when you read it, making it easier for you to identify the course from the id.
  • The activity id should be unique for each course. If you substantially change a course to the point that it’s materially different, you should use a new id. This will separate reporting data for the new course from the old. It’s your call where you draw the line, but generally if you change an assessment question, it’s a new course.
  • You should keep a record of the activity ids you use to refer to later.

Here are some examples:


For the more technically inclined, see this more technical explanation.

Step 2: Stretch your authoring tool

Once you’re all set with getting detailed slide and question data out of your authoring tool, you might consider pushing the tool beyond its default features by sending and receiving custom data via xAPI. This requires a little programming, but opens up the following possibilities:

  • Recording custom events within a learning experience such as the learner’s use of a custom interaction or simulation.
  • Saving settings or preferences from course to course.
  • Linking up experiences so what happens in another learning experience affects your course or vice versa.
  • Team learning experiences so what one learner does affects another’s experience.
  • Multi-device experiences where what the learner does on one course designed for mobile affects another course designed for desktop.

These possibilities are explained in more detail in the Nine applications of the Experience API webinar recording.

The coding guides below take you through how to customize your authoring tool to achieve these features. All of these assume a JavaScript-based authoring tool as most tools are today:

We can help you to work through these guides if you get stuck.

Step 3: Get innovative

xAPI really shines when you’re producing more innovative learning content and experiences that don’t fit the SCORM mindset and can’t be created in the same kinds of authoring tools that were designed for SCORM. That might be a serious game, a virtual reality simulation, or a transmedia blended learning experience linking face to face and digital elements. Whatever the learning experience you want to create, you can created it and then use xAPI to track it.

For more innovative solutions like this you should:

  • Take extra care in your statement design. Use or create a recipe and ask us for feedback and advice.
  • Make full use of the resources and documentation on our site, especially the code libraries.
  • Test your solution against three well established LRSs.

If you are planning something innovative, we’d love to hear from you about your project and see how we can help.

What’s next

To continue to learn about how you can get started in your content you can:

Excited but overwhelmed?

If you want to get to step 2 or 3 with your content but need a little extra help, please do get in touch.

We can even help if step 1 is too much!

Contact us