Plugins
Use to check whether a plugin (e.g. pomodoro, habit tracker, sticky notes) is installed before suggesting its cards, or to tell the user what plugins exist. Core modules are always installed.
semestra_session<token>Set by the sign-in endpoints for the web app. Requests other than GET, HEAD and OPTIONS also need the X-Semestra-CSRF header set to the semestra_csrf cookie.
Successful Response
application/json- response
items*array<>curl -X GET 'https://example.com/plugins/catalog'{ "items": [ { "id": "string", "kind": "core", "name_key": "string", "description_key": "string", "summary": "string", "version": "string", "author": "string", "default_installed": true, "installed": true, "installed_at": "2019-08-24T14:15:22Z", "provides": { "pages": [ "string" ], "cards": [ "string" ], "capabilities": [ "string" ] } } ]}Hides the plugin's pages, cards and features. Without purge_data its data is kept and comes back on reinstall.
semestra_session<token>Set by the sign-in endpoints for the web app. Requests other than GET, HEAD and OPTIONS also need the X-Semestra-CSRF header set to the semestra_csrf cookie.
plugin_id*Plugin IdPlugin id, e.g. 'pomodoro'
purge_data?Purge DataAlso delete the plugin's data (cards, settings, records); cannot be undone
falseSuccessful Response
application/json- response
id*Idkind*Kindcore modules cannot be uninstalled
"core""plugin"name_key*Name KeyFrontend message key of the name
description_key*Description KeyFrontend message key of the description
summary*SummaryOne English sentence on what the plugin does
version*Versionauthor*Authordefault_installed*Default Installedinstalled*InstalledAlways true for core modules
installed_at*|nullprovides*curl -X DELETE 'https://example.com/plugins/string/installation'{ "id": "string", "kind": "core", "name_key": "string", "description_key": "string", "summary": "string", "version": "string", "author": "string", "default_installed": true, "installed": true, "installed_at": "2019-08-24T14:15:22Z", "provides": { "pages": [ "string" ], "cards": [ "string" ], "capabilities": [ "string" ] }}Installing an already installed plugin does nothing.
semestra_session<token>Set by the sign-in endpoints for the web app. Requests other than GET, HEAD and OPTIONS also need the X-Semestra-CSRF header set to the semestra_csrf cookie.
plugin_id*Plugin IdPlugin id, e.g. 'pomodoro'
Successful Response
application/json- response
id*Idkind*Kindcore modules cannot be uninstalled
"core""plugin"name_key*Name KeyFrontend message key of the name
description_key*Description KeyFrontend message key of the description
summary*SummaryOne English sentence on what the plugin does
version*Versionauthor*Authordefault_installed*Default Installedinstalled*InstalledAlways true for core modules
installed_at*|nullprovides*curl -X PUT 'https://example.com/plugins/string/installation'{ "id": "string", "kind": "core", "name_key": "string", "description_key": "string", "summary": "string", "version": "string", "author": "string", "default_installed": true, "installed": true, "installed_at": "2019-08-24T14:15:22Z", "provides": { "pages": [ "string" ], "cards": [ "string" ], "capabilities": [ "string" ] }}