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.
You can create, modify and delete clients from the Access > Clients page.

For each client, you have to define:
nameslug which is like a unique short name used in URLs (not modifiable)store the client belongs to guard which is the authentication method to be used used by the external application username and password for this authentication methodCORS restrictions if the external application needs to call the APIs directly from the browserpermissions granted to the external application
| 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 |