Sensoren Cloud

Handbuch

Sensoren Cloud zeigt den letzten Messwert eines Sensors an. Dieses Handbuch erklärt, wie diese Werte ins System gelangen.

1. Sensor-ID

Eine ID besteht aus 8–12 Zeichen (A–Z, 0–9). Optional steht davor ein Prefix aus 1–4 Zeichen, getrennt durch -:

GBA00123           (ohne Prefix)
ACME-ABCD1234      (mit Prefix "ACME")

Über einen Prefix reservieren Sie eine ganze ID-Range mit gemeinsamem Token.

2. Werte pushen

Senden Sie den Messwert per POST an /api/sensors/<ID>. Der erste Push legt den Sensor an und setzt einmalig das Token (Trust-on-first-use). Danach ist die ID für Sie reserviert – weitere Pushes brauchen dasselbe Token.

curl -X POST https://<host>/api/sensors/ACME-ABCD1234 \
  -H "content-type: application/json" \
  -d '{
    "token": "meinGeheimesToken1",
    "distance": 420,
    "rssi": -87,
    "batteryMv": 3600
  }'
  • token – mind. 8 Zeichen (A–Z a–z 0–9). Bei IDs mit Prefix gilt das gemeinsame Token des Prefix.
  • distance – der gemessene Abstand in Millimeter (Integer, optional). status und error sind optionale Freitextfelder (max. 32 Zeichen) für Gerätezustand bzw. Fehler. sensorCount (Gateways), rssi, batteryMv, gatewaySerial, locationCoords und locationName sind ebenfalls optional.
  • Es gibt kein Token-Recovery: verloren = verloren.

3. BLE- und LoRaWAN-Geräte

Daten aus Bluetooth- und LoRaWAN-Geräten laufen über Kunden-Infrastruktur und lassen sich nicht als authentisch überprüfen. Deshalb übernimmt die Plattform sie nicht automatisch. Wer solche Werte anzeigen möchte, reserviert sich eine ID oder einen Prefix und pusht die Werte selbst über die Push-API aus Schritt 2.

4. Produktions-IDs & NB-IoT

IDs im Muster G… mit genau 8 Zeichen (^G[A-Z0-9]{7}$) sind GLA-intec-Produktionsgeräten vorbehalten. Kunden-Pushes darauf werden abgelehnt. Für diese Geräte kommen Daten künftig ausschließlich über den vertrauenswürdigen NB-IoT-Direktpfad (in Vorbereitung).

5. Collections

Fassen Sie Sensoren zu einer benannten Liste zusammen, vergeben Sie je Sensor einen Namen und eine Umrechnung (Rohwert, Prozent, Belegt/Frei oder Bereich → Text). Die öffentliche Ansicht zeigt Namen und Werte, aber keine Sensor-IDs. Beim Anlegen erhalten Sie einen Edit-PIN; ein optionaler Read-PIN schützt zusätzlich das Ansehen.

6. Öffentliche Lese-API

Für Integrationen gibt es eine bewusst einfache, stabile GET-API unter /api/v1 – nur Lesen, keine Header/Payload nötig, offenes CORS.

Einzelner Sensor (letzter Wert + Zeitstempel):

curl https://<host>/api/v1/sensors/ACME-ABCD1234

{ "id": "ACME-ABCD1234", "distance": 420,
  "unit": "mm", "lastSeenAt": "2026-07-09T09:00:00Z" }

Ganze Collection (nur Name + Werte, keine Sensor-IDs):

curl https://<host>/api/v1/collections/<id>

{ "id": "<id>", "name": "Höfe Bremen", "items": [
  { "name": "Hof Nord", "distance": 300, "unit": "mm",
    "percent": 90, "text": "90 %", "lastSeenAt": "…" } ] }

Ist ein Read-PIN gesetzt, hängen Sie ?pin=… an die Collection-URL an.