Add your LMS or LRS to receive xAPI data

Mazetec is xAPI compatible and enables integration with your Learning Repository Store. xAPI allows Learning Management Systems, Learning Repository Stores, and Activity Providers to communicate with each other so a course author can chain together many different experience in differing systems, and yet see the learners progress through all of the systems.


You must be an organization admin to configure the xAPI integration settings.

Navigate to: Initials >> Organizational Settings >> xAPI Integration

Field Description
URL Endpoint URL of the Learning Management System (LMS) or Learning Repository Store (LRS) where you are sending the xAPI data. Provided by the LMS or LRS.
API Key The API key for the LMS or LRS Provided by the LMS or LRS.
API Secret The API Secret for the LMS or LRS. Provided by the LMS or LRS.
Update interval Batch intervals to send multiple xAPI statements in the same request, by default statements are batched several different intervals depending on your plan.

For details on xAPI Integration

Server-side Tracking

If you have a choice between sending the data from the learner’s browser using client side JavaScript versus sending the data server side from a web server, server side code is always the best option. Server side tracking is less vulnerable to both security and connectivity issues.

API Error Handling Requirements

This might mean resending the request as individual statements to identify the problem statement, logging the error, and/or alerting a human. In particular, the implementation should be built to handle the following error codes when sending statements:

Error Code Status Description
200 OK This indicates a successful request.
204 No Content​ This indicates a successful request.
400 Bad Request​ There is something wrong with the structure of one or more of the statements or with the request package itself. Normally, the response will state the issue at hand.
401 Unauthorized The authorization header does not match an authorized set of credentials.
403 Forbidden The credentials match, but those credentials are not authorized to make that request.
404 Not Found Most likely the endpoint is configured incorrectly. This also can be caused by a bad internet connection or other network issue.
413 Request entity too large The request was larger than allowed by the LRS. Consider breaking the statements into smaller batches.
429 Too Many Requests​ The application has sent too many requests in a short space of time.
500 Internal Server Error ​ These responses can sometimes happen in response to bad requests that are wrong in ways that the LRS's validation has missed.
503 Service Unavailable Indicates a period of downtime or overloaded servers.
504 Gateway Timeout Indicates a period of downtime or overloaded servers.
Last modified on May 23, 2021