IoT Coffee Machine API documentation version v1.0
/api/device
Liefert die aktuellen Einstellungen der Kaffeemaschine.
Ändert die aktuellen Einstellungen der Kaffeemaschine
get /api/device/settings
Liefert die aktuellen Einstellungen der Kaffeemaschine.
Anhand dieses Sicherheitsmechanismus werden Endpunkte gegen ungewollten Zugriff abgesichert. Ein JWT-Token wird hierbei bei jedem Request benötigt, um den Nutzer zu identifizieren.
HTTP status code 200
Ok.
Body
Media type: application/json
Type: object
Properties- coffee_machine_id: required(integer)
ID der Kaffeemaschine. (Muss auf dem Server existieren)
Example:
42
- coffee_product_id: required(integer)
ID des Kaffeeproduktes in der Kaffeemaschine. (Muss auf dem Server existieren)
Example:
42
- price: required(integer)
Preis pro Kaffee in Cents.
Example:
10
Secured by jwt
Headers
- x-access-token: required(string)
Ein JWT-Token wird im Header platziert, um den Nutzer der Anfrage zu identifizieren.
Example:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwdWJsaWNfaWQiOiJkMzg5MjRmYi05NDE3LTRhNTAtYjcxNS0wMWY4MDVjMjgwNjMiLCJleHAiOjE1NDI1NDE3NDV9.jbWsgjOFn6jEx0IGVoUaiqwt530_Fko8qgoMhGvl4mg
HTTP status code 401
Token fehlt.
HTTP status code 401
Token ist invalide.
HTTP status code 403
Ausführung der Methode verboten.
put /api/device/settings
Ändert die aktuellen Einstellungen der Kaffeemaschine
Anhand dieses Sicherheitsmechanismus werden Endpunkte gegen ungewollten Zugriff abgesichert. Ein JWT-Token wird hierbei bei jedem Request benötigt, um den Nutzer zu identifizieren.
Body
Media type: application/json
Type: object
Properties- coffee_machine_id: required(integer)
ID der Kaffeemaschine. (Muss auf dem Server existieren)
Example:
42
- coffee_product_id: required(integer)
ID des Kaffeeproduktes in der Kaffeemaschine. (Muss auf dem Server existieren)
Example:
42
- price: required(integer)
Preis pro Kaffee in Cents.
Example:
10
HTTP status code 200
Ok. Einstellungen der Kaffeemaschine geändert.
Secured by jwt
Headers
- x-access-token: required(string)
Ein JWT-Token wird im Header platziert, um den Nutzer der Anfrage zu identifizieren.
Example:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwdWJsaWNfaWQiOiJkMzg5MjRmYi05NDE3LTRhNTAtYjcxNS0wMWY4MDVjMjgwNjMiLCJleHAiOjE1NDI1NDE3NDV9.jbWsgjOFn6jEx0IGVoUaiqwt530_Fko8qgoMhGvl4mg
HTTP status code 401
Token fehlt.
HTTP status code 401
Token ist invalide.
HTTP status code 403
Ausführung der Methode verboten.
Führt einen Auftrag auf der Kaffeemaschine aus.
post /api/device/job
Führt einen Auftrag auf der Kaffeemaschine aus.
Anhand dieses Sicherheitsmechanismus werden Endpunkte gegen ungewollten Zugriff abgesichert. Ein JWT-Token wird hierbei bei jedem Request benötigt, um den Nutzer zu identifizieren.
Body
Media type: application/json
Type: object
Properties- coffee_strength_in_percent: required(integer - minimum: 0 - maximum: 100)
Kaffeestärke in Prozent
Example:
66
- water_in_percent: required(integer - minimum: 0 - maximum: 100)
Wasseranteil in Prozent
Example:
66
- doses: required(integer - minimum: 1 - maximum: 2)
Die Anzahl der hergestellten Kaffee in diesem Auftrag
Example:
1
HTTP status code 201
Created.
Body
Media type: application/json
Type: object
Properties- id: required(integer)
ID des Auftrags.
Example:
42
- create_date: required(integer)
Erstellungsdatum des Auftrags.
- square_date: (integer)
Datum, an dem der Auftrag beglichen wurde.
- coffee_machine_id: required(integer)
Die ID der Kaffeemaschine, welche den Auftrag ausgeführt hat.
Example:
42
- coffee_strength_in_percent: required(integer - minimum: 0 - maximum: 100)
Kaffeestärke in Prozent
Example:
66
- water_in_percent: required(integer - minimum: 0 - maximum: 100)
Wasseranteil in Prozent
Example:
66
- price: required(integer - minimum: 0)
Der Preis pro Kaffee in Cents
Example:
10
- doses: required(integer - minimum: 1 - maximum: 2)
Die Anzahl der hergestellten Kaffee in diesem Auftrag
Example:
1
- coffee_product_id: required(integer)
ID des Kaffeeproduktes, welches sich zum Zeitpunkt des Auftrags in der Kaffeemaschine befand.
Example:
42
Secured by jwt
Headers
- x-access-token: required(string)
Ein JWT-Token wird im Header platziert, um den Nutzer der Anfrage zu identifizieren.
Example:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwdWJsaWNfaWQiOiJkMzg5MjRmYi05NDE3LTRhNTAtYjcxNS0wMWY4MDVjMjgwNjMiLCJleHAiOjE1NDI1NDE3NDV9.jbWsgjOFn6jEx0IGVoUaiqwt530_Fko8qgoMhGvl4mg
HTTP status code 401
Token fehlt.
HTTP status code 401
Token ist invalide.
HTTP status code 403
Ausführung der Methode verboten.
Liefert den aktuellen Status der Kaffeemaschine.
Setzt die veränderbaren Status der Kaffeemaschine.
get /api/device/status
Liefert den aktuellen Status der Kaffeemaschine.
Anhand dieses Sicherheitsmechanismus werden Endpunkte gegen ungewollten Zugriff abgesichert. Ein JWT-Token wird hierbei bei jedem Request benötigt, um den Nutzer zu identifizieren.
HTTP status code 200
Ok.
Body
Media type: application/json
Type: object
Properties- device_ready: required(boolean)
Zeigt an, ob die Kaffeemaschine bereit ist einen Job anzunehmen.
Example:
true
- water_tank_ready: required(boolean)
Zeigt an, ob der Wassertank Wasser enthält oder vorhanden ist.
Example:
true
- water_tank_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Wassertanks in Prozent an.
Example:
66
- coffee_bean_container_ready: required(boolean)
Zeigt an, ob Kaffeebohnen vorhanden sind.
Example:
true
- coffee_bean_container_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Kaffeebohnenbehälters in Prozent an.
Example:
66
- coffee_grounds_container_ready: required(boolean)
Zeigt an, ob der Kaffeesatzbehälter genügend Platz für einen weiteren Job bietet oder vorhanden ist.
Example:
true
- coffee_grounds_container_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Kaffeesatzbehälters in Prozent an.
Example:
66
- coffee_machine_runtime_state: required(integer)
Zeigt den aktuellen Runtime Status der Kaffeemaschine. 1 = Kaffeemaschine an. 2 = Kaffeemaschine aus 3 = Kaffeemaschine befindet sich im Startup-Prozess. 4 = Kaffeemaschine befindet sich im Shutdown-Prozess
Example:
2
Secured by jwt
Headers
- x-access-token: required(string)
Ein JWT-Token wird im Header platziert, um den Nutzer der Anfrage zu identifizieren.
Example:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwdWJsaWNfaWQiOiJkMzg5MjRmYi05NDE3LTRhNTAtYjcxNS0wMWY4MDVjMjgwNjMiLCJleHAiOjE1NDI1NDE3NDV9.jbWsgjOFn6jEx0IGVoUaiqwt530_Fko8qgoMhGvl4mg
HTTP status code 401
Token fehlt.
HTTP status code 401
Token ist invalide.
HTTP status code 403
Ausführung der Methode verboten.
put /api/device/status
Setzt die veränderbaren Status der Kaffeemaschine.
Anhand dieses Sicherheitsmechanismus werden Endpunkte gegen ungewollten Zugriff abgesichert. Ein JWT-Token wird hierbei bei jedem Request benötigt, um den Nutzer zu identifizieren.
Body
Media type: application/json
Type: object
Properties- coffee_machine_runtime_state: required(integer)
Setzt den aktuellen Runtime Status der Kaffeemaschine. 1 = Kaffeemaschine anschalten 2 = Kaffeemaschine ausschalten
Example:
2
HTTP status code 200
Ok.
Body
Media type: application/json
Type: object
Properties- device_ready: required(boolean)
Zeigt an, ob die Kaffeemaschine bereit ist einen Job anzunehmen.
Example:
true
- water_tank_ready: required(boolean)
Zeigt an, ob der Wassertank Wasser enthält oder vorhanden ist.
Example:
true
- water_tank_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Wassertanks in Prozent an.
Example:
66
- coffee_bean_container_ready: required(boolean)
Zeigt an, ob Kaffeebohnen vorhanden sind.
Example:
true
- coffee_bean_container_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Kaffeebohnenbehälters in Prozent an.
Example:
66
- coffee_grounds_container_ready: required(boolean)
Zeigt an, ob der Kaffeesatzbehälter genügend Platz für einen weiteren Job bietet oder vorhanden ist.
Example:
true
- coffee_grounds_container_fill_level_in_percent: (integer - minimum: 1 - maximum: 100)
Zeigt den aktuellen Füllstand des Kaffeesatzbehälters in Prozent an.
Example:
66
- coffee_machine_runtime_state: required(integer)
Zeigt den aktuellen Runtime Status der Kaffeemaschine. 1 = Kaffeemaschine an. 2 = Kaffeemaschine aus 3 = Kaffeemaschine befindet sich im Startup-Prozess. 4 = Kaffeemaschine befindet sich im Shutdown-Prozess
Example:
2
Secured by jwt
Headers
- x-access-token: required(string)
Ein JWT-Token wird im Header platziert, um den Nutzer der Anfrage zu identifizieren.
Example:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJwdWJsaWNfaWQiOiJkMzg5MjRmYi05NDE3LTRhNTAtYjcxNS0wMWY4MDVjMjgwNjMiLCJleHAiOjE1NDI1NDE3NDV9.jbWsgjOFn6jEx0IGVoUaiqwt530_Fko8qgoMhGvl4mg
HTTP status code 401
Token fehlt.
HTTP status code 401
Token ist invalide.
HTTP status code 403
Ausführung der Methode verboten.