Skip to content
Snippets Groups Projects

Resolve "Write API documentation"

Merged Arie Peterson requested to merge 2-write-api-documentation into master
All threads resolved!
1 file
+ 11
7
Compare changes
  • Side-by-side
  • Inline
+ 55
1
API Documentation
=================
Coming soon!
Base URL: ``hostname:8000/cryptops/v0``
Encryption:
``GET /encryption``
Returns the status of the encryption (whether or not you have an encrypted
partition)
``POST /encryption/init``
Encrypts the disk with a password if there are no encrypted disks
Post data: ``{"password": password}``
``POST /encryption/unlock``
Decrypts the disk using a password and boots the machine
Post data: ``{"password": password}``
``POST /encryption/remove``
Brings the VPS in a state where the disk is not encrypted and booting does not
require a password (does not change the initrd to a "regular" initrd)
Post data: ``{"password": password}``
``POST /encryption/selfdestruct``
Removes the encryption master key, effectively deleting the encrypted data
permanently.
Encryption keys:
``GET /encryption/keys``
List luks password slots
``POST /encryption/keys/``
Add a new password to a new Luks slot.
Post data: ``{"password": password, "new-password": new-password}``
``PUT /encryption/keys/{slot-id}``
Change a luks slot's password. {slot} corresponds to a slot id listed by ``GET
/encryption/keys``.
Post data: ``{"password": password, "new-password": new-password}``
``DELETE /encryption/keys/{slot-id}``
Delete a password from a luks slot
SSH keys with access to the initrd:
``GET /ssh/keys``
List SSH keys in the ``/root/.ssh/authorized_keys`` file
``POST/ssh/keys``
Add a key to the ``authorized_keys`` file
Post data: ``{"ssh-key": ssh-key}``
``PUT /ssh/keys/{key-id}``
Change a key in the ``authorized_keys`` file
Post data: ``{"ssh-key": ssh-key}``
``DELETE /ssh/keys/{key-id}``
Delete the key with id ``{key-id}`` from the ``authorized_keys`` file
Loading