diff --git a/README.md b/README.md index 5e5ffe0..617c8dc 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,27 @@ # đŸ›‹ī¸ Laterna (Server) +## đŸĩī¸ Setup + +Laterna requires a config.json in it's root directory. An [example config](https://github.com/siestaw/Laterna/blob/main/config.json.example) is provided + +`$ mv config.json.example config.json` + +You can leave the json as it is or configure it to your liking, although some configuration options (e.g. `verboseLogging`) aren't fully implemented yet. + ## 🛜 API Documentation ### Base URL + `http://your-server.com/api/v1` --- -### Authentification + +### Authentification + The admin token will be displayed once while starting for the first time. To generate a new one, run with the `--resetAdminToken` flag. All endpoints require the admin token in the header of the request: + ``` Authorization: ``` @@ -19,47 +31,53 @@ Authorization: ### Routes #### Controller -| Method | Route | Description | Request Body | -|---------|----------------------------|----------------------------------------|----------------------------------| -| POST | `/controllers` | Create a new controller | — | -| DELETE | `/controllers` | Delete an existing controller |`{ "ID": 1 }` | + +| Method | Route | Description | Request Body | +| ------ | -------------- | ----------------------------- | ------------- | +| POST | `/controllers` | Create a new controller | — | +| DELETE | `/controllers` | Delete an existing controller | `{ "ID": 1 }` | --- #### Colors -| Method | Route | Description | Request Body | -|---------|----------------------------|----------------------------------------|----------------------------------| -| GET | `/colors/{id}` | Get the current color of an controller | — | -| PUT | `/colors/{id}` | Set the color of an controller |`{ "color": "#FF0000" }` | + +| Method | Route | Description | Request Body | +| ------ | -------------- | ------------------------------------- | ------------------------ | +| GET | `/colors/{id}` | Get the current color of a controller | — | +| PUT | `/colors/{id}` | Set the color of a controller | `{ "color": "#FF0000" }` | --- ### cURL examples - #### Create a new controller + ```bash $ curl -X POST http://your-server.com/api/v1/controllers \ -H "Authorization: $TOKEN" ``` + â„šī¸ Response with the newly assigned ID. The ID will always be the next available one -#### Delete an controller +#### Delete a controller + ```bash $ curl -X DELETE localhost:8080/api/v1/controllers \ -H "Authorization: $TOKEN" \ -d '{"ID": 1}' ``` +#### Get the current color of a controller -#### Get the current color of an controller ```bash $ curl -X GET localhost:8080/api/v1/colors/1 \ -H "Authorization: $TOKEN" ``` -#### Set the color of an controller + +#### Set the color of a controller + ```bash -$ curl -X PUT localhost:8080/api/v1/colors/1 \ +$ curl -X PUT localhost:8080/api/v1/colors/1 \ -H "Authorization:$TOKEN" \ - -d '{"Color": "#C2C342"}' + -d '{"Color": "#C2C342"}' ```