wiki.selfprivacy.org/src/rest-api/changelog.md

2.8 KiB

Changelog

authorization_tokens branch

  • Added authorization tokens module to allow
    • Having more than one device controlling the server
    • Refreshing the current token
    • Obtaining a recovery token

API changes

1.1.1

Released on 26 Jan 2022

1.1.0

Released on 9 Dec 2021

  • Added system configuration endpoints.
  • SSH management.
  • Backups controller.
  • Systemd is now used for system rebuilds.
  • WriteUserData and ReadUserData utils added to reduce boilerplate of file locking.
  • Unit tests are now a thing.

API changes

  • /system/upgrade is now /system/configuration/upgrade.
  • /api/version added.
  • /services/ssh added.
  • /services/ssh/<username> added.
  • /configuration/timezone added.
  • /configuration/autoUpgrade added.
  • /restic/backblaze/config added.
  • /system/configuration/pull added.
  • /services/restic/backup/reload added.

Pre-1.1.0 changes

This is an API refactoring stage. There was no endpoint to retrieve API version, but these all were referenced as 1.1.0 version in code.

Input sanitization, added swagger

Released on 17 Nov 2021

Add basic API auth

Released on 16 Nov 2021

  • Added basic token auth.

Move to JSON controlled server settings

Released on 16 Nov 2021

  • Assumes server already moved to JSON-controlled Nix config.
  • System is now configured by usage of userdata.json.
  • File locking is used now.

Decomposition

Released on 12 Nov 2021

API changes

  • /systemVersion is now /system/version.
  • /getDKIM is now /services/mailserver/dkim.
  • /pythonVersion is now /system/version/pythonVersion.
  • /users/create is now POST on /users.
  • /users/deleteUser is now DELETE on /users.
  • /services/SERVICE_NAME/enable and /services/SERVICE_NAME/disable now also return message in their responses.
  • /services/ssh/key/send: response field result renamed to status.

Other changes

  • Moved to Python 3.9.
  • Moved to flask_restful's Resource objects.
  • distutils is deprecated, moved to setuptools.

Code formatting

Black is used for code formatting.

No linting rules applied yet.