Zum Hauptinhalt springen

Lektion 3.5 Postman

Postman ist ein grafischer HTTP-Client zum Erkunden und Aufrufen der REST-API der IoT-Plattform – anmelden, Geräte lesen, Daten pushen und gespeicherte Request-Collections ausführen. In dieser Lektion authentifizieren Sie sich, lesen Ihre Geräte, pushen einen Wert und importieren (optional) Zeitreihen im Bulk.

Die vollständige API ist in Swagger dokumentiert (https://staging.yggio.net/swagger).

Bevor Sie beginnen​

  • Installieren Sie Postman.
  • Ein Konto auf der IoT-Plattform (Benutzername + Passwort).
  • Optional: Erstellen Sie eine Postman-Umgebung mit den Variablen baseUrl = https://staging.yggio.net und (später) token, damit die Requests {{baseUrl}} und {{token}} verwenden.

Übung 1 – Ein Access Token erhalten​

  1. Neuer Request → POST {{baseUrl}}/api/auth/local.
  2. Body → raw → JSON:
    { "username": "YOUR_USERNAME", "password": "YOUR_PASSWORD" }
  3. Send. Die Antwort enthält einen token. Kopieren Sie ihn (oder speichern Sie ihn im Tab Tests automatisch: pm.environment.set("token", pm.response.json().token)).

Alle authentifizierten Aufrufe verwenden den Header Authorization: Bearer <token>.

Übung 2 – Ihre Geräte auflisten​

  1. Neuer Request → GET {{baseUrl}}/api/iotnodes.
  2. Headers: Authorization: Bearer {{token}}.
  3. Send – Sie erhalten jedes Gerät mit seinen aktuellen Feldern. Fügen Sie eine Query zum Filtern hinzu, z. B. {{baseUrl}}/api/iotnodes?q=temperature für Geräte mit einem temperature-Feld.

Übung 3 – Einen Wert an ein generisches Gerät pushen​

  1. Erstellen Sie in der IoT-Plattform ein Generic-Gerät mit einem secret (siehe Lektion 2.3). Das Secret ist ein API-Schlüssel – halten Sie es geheim.
  2. Neuer Request → POST {{baseUrl}}/http-push/generic?identifier=secret.
  3. Headers: Content-Type: application/json.
  4. Body → raw → JSON (einschließlich des secret):
    { "secret": "YOURDEVICESECRET", "temperature": 22 }
  5. Send – das Gerät aktualisiert sich in der IoT-Plattform. (Dieser Endpunkt authentifiziert über das Geräte-Secret, nicht über den Bearer-Token.)

Übung 4 – Zeitreihen aus einer CSV im Bulk importieren (optional)​

Die IoT-Plattform liefert eine vorgefertigte Postman-Collection, die eine CSV liest und jede Zeile als zeitgestempelte Messung postet – siehe Lektion 1.4 für die vollständige Anleitung. Kurz gefasst:

  1. Importieren Sie die CSV-Import-Collection.
  2. Fügen Sie dem Zielgerät über PUT {{baseUrl}}/api/iotnodes/{_id} ein temporäres secret hinzu.
  3. Richten Sie die Collection auf Ihre CSV aus, setzen Sie das secret im Request-Body und führen Sie die Collection dann per Run aus.
  4. Entfernen Sie das temporäre Secret danach wieder (PUT …/api/iotnodes/{_id} mit { "secret": "$unset" }).

⚠️ Importierte Zeitreihendaten können nicht geändert oder entfernt werden – testen Sie zuerst mit einer kleinen Datei.

Was Sie gelernt haben​

  • Wie man ein Token über POST /api/auth/local erhält und Authorization: Bearer verwendet.
  • Wie man Geräte liest (GET /api/iotnodes) und Daten pusht (POST /http-push/generic).
  • Wo Sie die CSV-Zeitreihen-Import-Collection finden.

Wie geht es weiter​