# Artemio (server) # Deployment (from source) - ``git clone https://github.com/grimhilt/artemio-server.git`` - python3 -m venv .venv source .venv/bin/activate python -m pip install -r requirements.txt sudo apt install libjpeg-dev zlib1g-dev pip install Pillow sudo apt install libmpv-dev gunicorn -w 1 -b 0.0.0.0:5500 index:api --access-logfile access.log --error-logfile error.log # Documentation ## API ### Permissions | Name | Child Of | Description | --- | --- | --- CREATE_USER | CREATE_ROLE | CREATE_PLAYLIST | VIEW_PLAYLIST | EDIT_PLAYLIST OWN_PLAYLIST | EDIT_PLAYLIST | OWN_PLAYLIST ACTIVATE_PLAYLIST | ### Playlists (*/api/playlists*) *The user need to be logged in for every routes.* | Method | Endpoint | Permission | Description | --- | --- | --- | --- | | POST | ``/api/playlists`` | CREATE_PLAYLIST | | GET | ``/api/playlists`` | | | GET | ``/api/playlists/:id`` | VIEW_PLAYLIST | | POST | ``/api/playlists/:id`` | EDIT_PLAYLIST | Add file to playlist | POST | ``/api/playlists/:id/order`` | EDIT_PLAYLIST | Change file order | POST | ``/api/playlists/:id/seconds`` | EDIT_PLAYLIST | Change display time of a file | POST | ``/api/playlists/:id/remove_file`` | EDIT_PLAYLIST | Remove file from the playlist | PUT | ``/api/playlists/:id/update`` | OWN_PLAYLIST | Update properties of the playlist | POST | ``/api/playlists/:id/activate`` | ACTIVATE_PLAYLIST | | POST | ``/api/playlists/:id/disactivate`` | ACTIVATE_PLAYLIST | ### Users ### Playlists (*/api/playlists*) *The user need to be logged in for every routes.* | Method | Endpoint | Permission | Description | --- | --- | --- | --- | | GET | ``/api/files`` | EDIT_PLAYLIST | List all existing files | GET | ``/api/files/:id`` | VIEW_PLAYLIST | Return the file | POST | ``/api/files/upload`` | EDIT_PLAYLIST | Upload one or multiple files | DELETE | ``/api/files/:id`` | OWN_PLAYLIST | Delete the file ### Roles ### Files