- Notifications
You must be signed in to change notification settings - Fork 293
API Reference v1.0
Tom Taylor edited this page May 3, 2019 · 13 revisions
See below for a list of all API endpoints exposed by the authoring tool's Node.js server.
Note: this API will be deprecated in the near future in favour of API v1.5, and then API v2.0. If you're unsure which API version to develop against, ask on Gitter.
☑️ Used by front-end 👽 Unused by front-end
| Route | Method | Description | Used? |
|---|---|---|---|
/api/asset/:id | DELETE | 👽 | |
/api/asset/:id | GET | 👽 | |
/api/asset/:id | PATCH | 👽 | |
/api/asset/:id | PUT | ☑️ | |
/api/asset/query | GET | ☑️ | |
/api/asset/restore/:id | PATCH | 👽 | |
/api/asset/restore/:id | PUT | ☑️ | |
/api/asset/serve/:id | GET | ☑️ | |
/api/asset/thumb/:id | GET | ☑️ | |
/api/asset/trash/:id | PATCH | 👽 | |
/api/asset/trash/:id | PUT | ☑️ | |
/api/asset | POST | ☑️ | |
/api/shared/asset/:id | GET | 👽 |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/authcheck | GET | ☑️ | |
/api/createtoken | POST | ☑️ | |
/api/login | POST | ☑️ | |
/api/logout | POST | ☑️ | |
/api/userpasswordreset/:token | GET | ☑️ | |
/api/userpasswordreset/:token | PATCH | ☑️ | |
/api/userpasswordreset/:token | PUT |
| Route | Method | Description | Used? | Notes |
|---|---|---|---|---|
/api/content/:type/:id | DELETE | ☑️ | ||
/api/content/:type/:id | GET | ☑️ | ||
/api/content/:type/:id | PATCH | ☑️ | ⚓ | |
/api/content/:type/:id | PUT | ☑️ | ||
/api/content/:type/query | GET | 👽 | ||
/api/content/:type/switch/:id/:switchid | PATCH | 👽 | ||
/api/content/:type/switch/:id/:switchid | PUT | 👽 | ||
/api/content/:type | GET | ☑️ | ||
/api/content/:type | POST | ☑️ | ||
/api/content/clipboard/copy | POST | ☑️ | ||
/api/content/clipboard/paste | POST | ☑️ | ||
/api/content/schema | GET | ☑️ | ||
/api/autocomplete/tag | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/extension/disable/:courseid | POST | ☑️ | |
/api/extension/enable/:courseid | POST | ☑️ | |
/api/menu/:menuid/makeitso/:courseid | POST | ☑️ | |
/api/theme/:themeid/makeitso/:courseid | POST | ☑️ | |
/api/theme/preview/:themename/:version | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/duplicatecourse/:id | GET | ☑️ | |
/api/my/course | GET | ☑️ | |
/api/shared/course | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/upload/contentplugin | POST | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/componenttype/:id | GET | ||
/api/componenttype/:id | PATCH | ||
/api/componenttype/:id | PUT | ||
/api/componenttype/checkversion/:id | GET | ☑️ | |
/api/componenttype/update | POST | ||
/api/componenttype | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/extensiontype/:id | GET | ||
/api/extensiontype/:id | PATCH | ||
/api/extensiontype/:id | PUT | ||
/api/extensiontype/checkversion/:id | GET | ☑️ | |
/api/extensiontype/update | POST | ||
/api/extensiontype | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/menutype/:id | GET | ||
/api/menutype/:id | PATCH | ||
/api/menutype/:id | PUT | ||
/api/menutype/checkversion/:id | GET | ||
/api/menutype/update | POST | ||
/api/menutype | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/themetype/:id | GET | ||
/api/themetype/:id | PATCH | ||
/api/themetype/:id | PUT | ||
/api/themetype/checkversion/:id | GET | ☑️ | |
/api/themetype/update | POST | ||
/api/themetype | GET | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/output/:type/preview/:courseid | GET | ☑️ | |
/api/output/:type/publish/:courseid | GET | ☑️ |
The below routes are not passed through the API router, but should be.
| Route | Method | Description | Used? |
|---|---|---|---|
/download/:tenant/:course/:title/download.zip | GET | ☑️ | |
/download/:tenant/:course | GET | ☑️ | |
/export/:tenant/:course/download.zip | GET | ☑️ | |
/export/:tenant/:course | GET | ☑️ | |
/import | POST | 👽 | |
/importsource | POST | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/role/:id/assign/:userid | POST | ☑️ | |
/api/role/:id/unassign/:userid | POST | ☑️ | |
/api/role/:id | DELETE | 👽 | |
/api/role/:id | GET | 👽 | |
/api/role/:id | PATCH | ☑️ | |
/api/role/:id | PUT | 👽 | |
/api/role | GET | ☑️ | |
/api/role | POST | 👽 |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/tenant/:id | DELETE | 👽 | |
/api/tenant/:id | GET | 👽 | |
/api/tenant/:id | PATCH | 👽 | |
/api/tenant/:id | PUT | 👽 | |
/api/tenant/query | GET | 👽 | |
/api/tenant | GET | ☑️ | |
/api/tenant | POST | 👽 |
| Route | Method | Description | Used? |
|---|---|---|---|
/api/user/:id | DELETE | ☑️ | |
/api/user/:id | GET | 👽 | |
/api/user/:id | PATCH | ☑️ | |
/api/user/:id | PUT | 👽 | |
/api/user/bulkaction | PATCH | 👽 | |
/api/user/bulkaction | PUT | 👽 | |
/api/user/invite | POST | ☑️ | |
/api/user/me | GET | ☑️ | |
/api/user/me | PATCH | ☑️ | |
/api/user/me | PUT | 👽 | |
/api/user/resetpassword | POST | ☑️ | |
/api/user | GET | ☑️ | |
/api/user | POST | ☑️ |
| Route | Method | Description | Used? |
|---|---|---|---|
/config/config.json | GET | Retrieves the available client-side configuration options (note: this is not a complete list of the options in config/config.json) | ☑️ |
/lang/:lang | GET | Retrieves the language strings for the specified language code for use in the front-end app. | ☑️ |
/poll/:id | GET | 👽 |
The below routes serve HTML pages, and should not be handled by the API router (it would be a good idea to include some of these as part of a relevant API response).
| Route | Method | Description | Used? | Notes |
|---|---|---|---|---|
/ | GET | The main entry-point to the application. Renders the index HTML page. | ☑️ | |
/loading | GET | Renders a loading screen. | ☑️ | |
/preview/:tenant/:course/* | GET | Renders a course preview | ☑️ | ⚓ |
| Route | Note |
|---|---|
/api/content/:type/:id | Seemingly only used to change component layout (see editorMenuView.js). |
/api/content/:type/:id | This URL should be returned as part of an API response rather than piecing it together from the front-end. |
