Veracity Learning Version 1.5 Released

Veracity Learning Version 1.5 Released

Veracity is proud to announce the release of Veracity Learning v1.5. This release includes bug fixes and performance improvements, plus a few new features.

New Features

API Access

You can now automate many of the functions of your LRS. The API supports basic operations on learners, content, API access keys and Launch.

LTI Launch

Ever wanted to implement TinCan Launch or xAPI Launch in your content, but your LMS doesn't support launch mechanisms? As an alternative, if your LMS does not support these, Veracity Learning can connect to your LMS via the IMS Learning Tools Interoperability (LTI) Specification in order to initiate an xAPI session. In fact, even if your LMS supports Tincan Launch, you can use our LTI integration instead as it's more widely supported across LMS products. We'll generate unique access keys on the fly for enhanced security.

Correlations in Aggregation

We've added a new custom stage to our Aggregation endpoints. This stage is designed to help you find correlation between different courses, actors or objects. You can even compute complex metrics, then find correlations between them. This new stage is available in both the Aggregation API and the Aggregation dashboard widget.


In the past, self hosted installs required a proxy to serve SSL connections. This is no longer required, and Veracity Learning can serve the SSL certificates itself. Set the sslCert setting to the path to your certificate file, and sslKey to the private key file. You'll also want to make sure that the protocol setting is https. If all these are set up correctly, the server will serve SSL over HTTP2. The HTTP2 implementation will transparently fallback on HTTP 1 for clients that require it.

New Charts

We've added a few additional charts to display success, completion, and responses. You'll now find these on the Activity dashboard whenever there is relevant data to display. You can also call these up from the custom dashboard widgets screen.

Automated Install experimental

If you're using Ubuntu or any of it's derivatives, you can try our automated install of the dependencies. Run

sudo ./lrs2-linux -install

This script will attempt to download and install MongoDB, Java, ElasticSearch, then install the LRS as a service. Be careful running this script in production! It is intended for development installs, and should not be considered the best or most secure installation possible.

Version 2 of the Advanced Search API

Our existing Advanced Search API attempted to reflect the MongoDB search interfaces, while simplifying them in some ways. Unfortunately, this simplification of the search language makes several valid MongoDB queries impossible. V2 is optional, but allows for the exact same query format as MongoDB native. When using this API, you'll need to append the $statement. path to your query keys, because it is no longer appended automatically. This also makes it possible to query over the meta fields like $relatedAgents or $voided, which were inaccessible before.


  • Canonical display setting in the Statement Viewer
  • The JSON upload can now support files larger than the available memory on the server
  • The aggregation and advanced search v2 APIs can now automatically escape extension values in queries
  • Account deletion is not self service
  • Content/Activity records can now optionally skip the automatic statement signing
  • Users must set their account to "Public" before they will appear in a user search for LRS sharing
  • Tincan packages that include an external Launch url can still be uploaded
  • The analytics package can now optionally show all graphs that have been hidden due to lack of data
  • Additional graphs "click through" to sub-dashboards
  • Rate limit informational headers in the APIs

Breaking Changes

  • The Aggregation documentation made reference of a $regex operator. However, the under the hood implementation expected the name to be $regexp. The API has been updated to match the documentation.
  • In order to make room for a nicer URL for the new API, the learner portal address has changed. For servers using subdomains, the address is not lrsname.servername.tld/portal/. For non subdomain configs, it will be servername.tld/ui/lrs/lrsname/portal/.

As usual, please reach out if you have questions, comments, or experience any issues updating. The download for the free Lite version is also updated. You should be able to simply overwrite the old executable. There are no additional migrations steps.