How to launch a lesson externally with a learner ID?

Ok, so here’s the setup:

  • We’ve created courses and lesson using Evolve
  • We’ve exported this in HTML5, with the xAPI external LRS setup
  • We’re launching courses from within our system using the URL of a particular lesson

How can we launch that URL with requiring the user to login? We’d like to pass in user identification (such as a token or ID/e-mail) that already exists to be passed with the users results to the external LRS.

Hey @robcap ,

Evolve courses support xAPI launch using the URL. Basically the user info is available as part of the query params in the course window’s url. This article explains launching xAPi content in detail

You could also check out how Scorm Cloud are doing this by loading up your course on there and looking at the url of the displayed course.



Super! Thanks for your help. I thought the xAPI launch was the solution, but I couldn’t see how. That link really helps!



1 Like

Gald we could help @robcap

Hi again.

So it looks like this is actually a really un-secure solution and could be a deal breaker for us. This allows anyone to begin a course using any email address as they just edit the URL.

Is there a better way to launch that does not use URL params?

@SalAli @Matt_C thanks :slight_smile:

Hi @robcap

This is more of a question for xAPI rather than Evolve as we’ve just implemented it as per spec - If we did it any other way, it wouldn’t be xAPI.

The email address is just one parameter you can choose to pass, I believe ScormCloud uses IDs.

Without an LMS or LRS integration as part of the launch process, email address (or some other obvious identifier) is recommended. I guess it’s a convenience VS security decision you’ll have to make.

I guess your other (less friendly) option is to pass in an ID which is unique to each user. Once the data is in the LRS, you could create some sort of mapping there for your ID so you can identify which user did what.

If you have a launcher in mind you’d like us to use, let us know. Currently, the ADL one mentioned in that post isn’t working (as far as we’ve tried).



Ideally the ADL launcher as recommended would be preferred. It at least allows us to launch the course using an authenticated token, ensuring that the course cannot be accessed by random users, or by entering any users email in the URL.

Currently we’re investigating if its possible to proxy the connection to the LRS in order to authenticate a token here and pass user details to the LRS, but its not an ideal way of solving the problem.

Hi @robcap

Did you ever figure out a solution for this? Did the ADL launcher work for you?

I am simply having trouble getting an actor set through the url, like the HT2 article talked about in the unsecured method.


I found a solution via the xAPI-launch from Watershed. While this doesn’t have the security that I think @robcap was looking for, this might be helpful for some else looking at exploring Evolve and xAPI output without an LMS.

community post


1 Like

Thanks @Bjorn_Pederson! I was able to use the xAPI launcher to build a POC for hosting xAPI course on AWS connected to Watershed’s free LRS.

I’ve been able to get the learner’s interactions to be logged in the LRS, e.g. opening the course and answering MCQs but I’ve noticed that with MCQs their answers are not being logged. Does anyone here have experience with this and know how I could get MCQ responses to be logged?

fyi @Matt_C


Hey @Niall_Sheridan

Responce to xAPI development in Evolve.

There is a plugin for Chrome by Riptide call the “Elements xAPI inspector” which captures the xAPI enroute and analyzes them. Along those lines, I think that something could be built out that listens for submission events within an MCQ and grabs and modifies the statement right before the TinCan.js gets ready to send it. I mean in theory that is how it would/could work.

But I do totally agree that the current state of the xAPI statements, while meeting the standard, are rather lacking in detail.

Thanks @Bjorn_Pederson that’s useful for testing. I’ve just spotted your product idea to add tracking of answers and have told @appitierre I’d find it very useful too.


I’m also not seeing learner’s specific interactions (e.g. what they answered to a question). I’ve been testing in scorm cloud.

That was the case I was experiencing before. I don’t think they have started to develop the xAPI statemens yet beyond the barebones.

Did you ever see learner’s specific interactions in SCORM? We don’t see them, just that they completed the assessment and how long was spent.

Adapt used to send the SCORM interaction data to Moodle but Evolve does not, I’m really hoping they implement this soon!

Evolve can send all the interactions, but only via their own LMS Exceed.