Documentation
API REFERENCE

API Reference

Base URL: https://lrs.edu.games

Every request except /xapi/about needs an Authorization header and X-Experience-API-Version: 1.0.3. The LRS accepts two authorization schemes:

  • Bearer launch token — what a game running inside the edu.games player (or the edugames.dev sandbox) uses. The player mints it server-side when a session starts and delivers it in the launch context as a complete auth value; it expires after 2 hours and is bound to one game, one credential, one registration and one signed actor identity. The LRS stores that actor on every statement — a client-supplied actor is ignored.
  • Basic key:secretAuthorization: Basic base64(key:secret) with the per-game credential from the dev portal. For server-to-server integrations, scripts and local testing only; never ship it in a browser build.

Details and a credential smoke test are in Authentication. Every write endpoint is rate limited per credential — see Rate Limits.

GETPOSTPUT
/xapi/statements
Submit and query xAPI statements
GETPUTDELETE
/xapi/activities/state
Manage learner state documents
GET
/xapi/agents
Retrieve agent (learner) information
GETPUTDELETE
/xapi/agents/profile
Agent profile documents
GET
/xapi/activities
Retrieve activity definitions
GETPUTDELETE
/xapi/activities/profile
Activity profile documents
GET
/xapi/about
LRS version — no auth required; see Authentication for the credential check
Rate limits & quotas
Per-minute limits for every endpoint, batch and body caps, upload quotas, and what a 429 looks like →
Instrumenting with Claude CodeStatements