The Access API covers several groups of sub-APIs.
3 access control APIs:
3 connector APIs:
The Access API is enabled globally by default, and can be disabled with the ACCESS_API
config option set to false
.
It is fully accessible to all the clients which have the access/all
permission enabled.
The API endpoints rely on the base endpoint of each client.
In this documentation, we will designate the base endpoint by <base-endpoint>
.
To get the base endpoint of a client:
Access > API Consumers > Clients
page.(i)
icon of a client.Base endpoint
label. Use the POST
method on <base-endpoint>/stores
with the following JSON props:
Param | Description |
---|---|
slug | Required string. |
name | Required string. |
Use the PUT
method on <base-endpoint>/stores/<store-id>
with the same above content, except slug
which can't be modified.
Use the GET
method on <base-endpoint>/stores
.
Use the GET
method on <base-endpoint>/stores/<store-id>
.
Use the POST
method on <base-endpoint>/clients
with the following JSON props:
Param | Description |
---|---|
slug | Required string. |
name | Required string. |
guard | Required string: basic-http , cmi5-token . |
credentials | JSON object with username and password properties (min length of 8 chars). |
cors | Optional string. |
permissions | JSON object with permission settings (e.g. {"xapi/statements/write": true, "xapi/statements/read/mine": true} ). |
pipeline | JSON object with xAPI pipeline settings (e.g. {"validate_statements": true, "check_conflicts": true} ). |
store | Required slug of store. |
Use the PUT
method on <base-endpoint>/clients/<client-id>
with the same above content, except slug
which can't be modified.
Use the GET
method on <base-endpoint>/clients
.
Use the GET
method on <base-endpoint>/clients/<client-id>
.
Use the DELETE
method on <base-endpoint>/clients/<client-id>
.
Use the POST
method on <base-endpoint>/users
with the following JSON props:
Param | Description |
---|---|
firstname | Required string. |
lastname | Required string. |
Required email. Must be unique in the database. | |
password | Required string (min length of 8 chars). |
agent | Optional JSON encoded xAPI agent. |
role | Required string: actor , analyst , manager , supervisor , admin . |
stores | Required JSON encoded array of store slugs the user has access to. |
Use the PUT
method on <base-endpoint>/users/<user-id>
with the same above content,
except that the password
are optional.
Use the GET
method on <base-endpoint>/users
.
Use the GET
method on <base-endpoint>/users/<user-id>
.
Use the DELETE
method on <base-endpoint>/users/<user-id>
.
Use the POST
method on <base-endpoint>/connections/lrs
with the following JSON props:
Param | Description |
---|---|
name | Required string. |
endpoint | Required URL. The endpoint of the targeted LRS. |
username | Required string. The BasicHTTP username. |
password | Required string. The BasicHTTP password. |
Use the PUT
method on <base-endpoint>/connections/lrs/<connection-id>
with the same above content,
except that the username
and password
are optional.
Use the GET
method on <base-endpoint>/connections/lrs
.
Use the GET
method on <base-endpoint>/connections/lrs/<connection-id>
.
Use the DELETE
method on <base-endpoint>/connections/lrs
.
Use the DELETE
method on <base-endpoint>/connections/lrs/<connection-id>
.
Use the POST
method on <base-endpoint>/connections/db
with the following JSON props:
Param | Description |
---|---|
name | Required string. |
driver | Required string: mysql , pgsql , mongodb , elasticsearch , opensearch . |
host | Required string. The host of the targeted database. |
username | Optional string. Credentials of the targeted database. |
password | Optional string. Credentials of the targeted database. |
prefix | Optional string. Prefix applicable to the table names. |
Use the PUT
method on <base-endpoint>/connections/db/<connection-id>
with the same above content.
Use the GET
method on <base-endpoint>/connections/db
.
Use the GET
method on <base-endpoint>/connections/db/<connection-id>
.
Use the DELETE
method on <base-endpoint>/connections/db
.
Use the DELETE
method on <base-endpoint>/connections/db/<connection-id>
.
Use the POST
method on <base-endpoint>/connections/file
with the following JSON props:
Param | Description |
---|---|
name | Required string. |
folder | Required string. The path of a folder. |
prefix | Optional string. Prefix applicable to the file names. |
Use the PUT
method on <base-endpoint>/connections/file/<connection-id>
with the same above content.
Use the GET
method on <base-endpoint>/connections/file
.
Use the GET
method on <base-endpoint>/connections/file/<connection-id>
.
Use the DELETE
method on <base-endpoint>/connections/file
.
Use the DELETE
method on <base-endpoint>/connections/file/<connection-id>
.