# rxsm-server RXSM update server for storing and retrieving updates. This is a single file application; all server functionality is stored in `rxsmserver/__init__.py`. ## API `/db` > **GET** request to download the sqlite database. > The database stores version information and a daily hit counter (requests to `/update` per day). > This is publicly accessibly by design, for transparency. `/update` > **POST** request to check for updates. > > The body of the request must be a JSON like > > `{'version':'[version number]', 'platform':'[platform]'}` > > The response will be a JSON like > > `{'status':200, 'reason':'Ok', 'url':'[url to download latest version]', 'out-of-date':true/false}` > > The status and reason may be different, and url and out-of-date may not be included if the request is invalid or an error occurs. `/release` > **POST** request to create/update a new release. > This is password-protected to prevent users from adding malicious code into releases. > > The body of the request must be a JSON like > > `{'token':'[server password]', 'version':'[version number]', 'platform':'[platform]', 'url':'[url to download version]'}` > > The response will be a JSON like > > `{'status':200, 'reason':'Version created successfully'}` > > The status and reason may be different, especially if the request is invalid or an error occurs.