Managing clients


Introduction

Clients are the entry points of your LRS. They define the endpoints, credentials and permissions for each external application which needs to interact with the LRS APIs. A client always belongs to a store, so you need to define at the minimum 1 client per store. You may define several clients per store, especially if you have several sources of data for each store.

Managing clients

You can create, modify and delete clients from the Access > Clients page.

image

For each client, you have to define:

  • A name
  • A slug which is like a unique short name used in URLs (not modifiable)
  • The store the client belongs to
  • A guard which is the authentication method to be used used by the external application
  • A username and password for this authentication method
  • The CORS restrictions if the external application needs to call the APIs directly from the browser
  • The permissions granted to the external application
  • The xAPI pipeline options to be applied

image

Permissions

Permission Description
xapi/statements/write Write access to the standard statements API
xapi/statements/read/mine Read access to the standard statements API, limited to the statements recorded by the same client
xapi/statements/read Read access to the standard statements API
xapi/state Read and write access to the standard activity states API
xapi/profile Read and write access to the standard activity profiles and agent profiles APIs
xapi/all/read Read access to all the standard APIs
xapi/all Read and write access to all the standard APIs
cmi5/tokens Full access to the CMI5 API
data/all Full access to the Data API
jobs/all Full access to the Jobs API
logging/all Full access to the Logging API
access/all Full access to the Access API