Labor-API: Unterschied zwischen den Versionen
Trublu (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Basti (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
{{Projekt | {{Projekt | ||
|kontakt = | |kontakt = Basti | ||
|status = | |status = abgeschlossen | ||
|beschreibung = | |beschreibung = Sammelt und stellt Informationen rund ums Labor bereit | ||
|interessenten = | |interessenten = | ||
}} | }} | ||
Die '''Labor-API''' ist in Python (mit [http://flask.pocoo.org/ Flask]) geschrieben und läuft auf einem [http://gunicorn.org/ gunicorn-Server]. | Die '''Labor-API''' ist in Python (mit [http://flask.pocoo.org/ Flask]) geschrieben und läuft auf einem [http://gunicorn.org/ gunicorn-Server]: https://github.com/freieslabor/flask-rest-api | ||
Das Ausgabeformat ist momentan auf '''JSON''' beschränkt. Die schreibenden Methoden benötigen API-User und API-Key zur Authentifizierung ([[Spezial:E-Mail/Basti|Nachricht an Basti]]). | Das Ausgabeformat ist momentan auf '''JSON''' beschränkt. Die schreibenden Methoden benötigen API-User und API-Key zur Authentifizierung ([[Spezial:E-Mail/Basti|Nachricht an Basti]]). | ||
'''GET''' [https://freieslabor.org/api/room/ /api/room/] | |||
Gibt den aktuellen [[Laborstatus]] und den Zeitpunkt der letzten Änderung zurück. (Bildrepräsentation: [https://freieslabor.org/api/room_image.png /api/room_image.png]) | |||
return1=open, boolean, Türstatus | |||
return2=since, integer, Unix Timestamp der letzten Aktualisierung | |||
'''GET''' [https://freieslabor.org/api/room_archive/ /api/room_archive/] | |||
Gibt das [[Laborstatus]]-Archiv zurück. | |||
return1=open, boolean, Türstatus | |||
return2=timestamp, string, Zeitstempel im Format ISO 8601 | |||
'''GET''' [https://freieslabor.org/api/info/ /api/info/] bzw. [https://freieslabor.org/api/room_extended/ /api/room_extended/] | |||
Stellt allgemeine Informationen (inkl. [[Laborstatus]]) zur Verfügung. API Version: 0.13. | |||
Siehe [https://spaceapi.io/ Spezifikation]. | |||
== Schreibende Methoden == | == Schreibende Methoden == | ||
''POST''' [https://freieslabor.org/api/room/ /api/room/] (Authentifizierung erforderlich) | |||
Setzt den Raumstatus. | |||
param1=open, boolean, Raumstatus | |||
return1=success, boolean, Erfolgsstatus | |||
return2=status, string, Fehlermeldung (KANN verfügbar sein WENN success == false) | |||
[[Kategorie:Projekte]] | [[Kategorie:Projekte]] |
Aktuelle Version vom 25. Juni 2024, 20:17 Uhr
Die Labor-API ist in Python (mit Flask) geschrieben und läuft auf einem gunicorn-Server: https://github.com/freieslabor/flask-rest-api
Das Ausgabeformat ist momentan auf JSON beschränkt. Die schreibenden Methoden benötigen API-User und API-Key zur Authentifizierung (Nachricht an Basti).
GET /api/room/ Gibt den aktuellen Laborstatus und den Zeitpunkt der letzten Änderung zurück. (Bildrepräsentation: /api/room_image.png) return1=open, boolean, Türstatus return2=since, integer, Unix Timestamp der letzten Aktualisierung
GET /api/room_archive/ Gibt das Laborstatus-Archiv zurück. return1=open, boolean, Türstatus return2=timestamp, string, Zeitstempel im Format ISO 8601
GET /api/info/ bzw. /api/room_extended/ Stellt allgemeine Informationen (inkl. Laborstatus) zur Verfügung. API Version: 0.13.
Siehe Spezifikation.
Schreibende Methoden
POST' /api/room/ (Authentifizierung erforderlich) Setzt den Raumstatus. param1=open, boolean, Raumstatus return1=success, boolean, Erfolgsstatus return2=status, string, Fehlermeldung (KANN verfügbar sein WENN success == false)