Nuki Web API
Die NUKI Web API ist ein Cloud-Dienst - deine NUKI-Geräte sind im Nuki Cloud Dienst registriert und liefern dort den Status ein, und deine Abfragen und Befehle müssen über das Internet an den NUKI Cloud Server gesendet werden, der diese an deine Geräte weiterleitet.
Die Web API Dokumentation findest du hier:
https://developer.nuki.io/t/web-api-authentication/52
HTTPS Miniserver Gen.2
Dies funktioniert wegen HTTPS nur mit einem Miniserver Gen. 2, oder z.B. über einen LoxBerry per curl.
Vorgehensweise
Nuki Web API aktivieren
Am Nuki Web Account anmelden: https://web.nuki.io/
Dort einen API Token generieren
Diesen API Token sofort irgendwo speichern! Dieser wird kein zweites Mal angezeigt. Solltest du ihn verloren haben, dann den Eintrag löschen und einen neuen Token generieren.
URL zusammenstellen
Mit Swagger kannst du dir über ein WebUI die Befehle "zusammenbauen": https://api.nuki.io/#!/Smartlock/get
Beachte! Dein Token funktioniert dort nicht!
Aber du kannst dir den Befehl als curl-Zeile erzeugen lassen.
Dort angegeben ist der curl-Befehl:
curl -X GET --header 'Accept: application/json' 'https://api.nuki.io/smartlock'
Um diesen Befehl an einer Linux-Shell lauffähig zu bekommen, musst du ihn um deinen Token erweitern:
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer fb54f2267013dc3d1d0eb68d1388b1aaefef9135a2e3d204b3d18fef1f1ed0c9a29abfa8013cf32d' '
https://api.nuki.io/smartlock'
Beispiele
Status abfragen
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer fb54f2267013dc3d1d0eb68d1388b1aaefef9135a2e3d204b3d18fef1f1ed0c9a29abfa8013cf32d' '
https://api.nuki.io/smartlock'
Loxone
Du kannst mit Loxone Bordmitteln (Virtueller HTTP-Eingang) dies nicht abfragen, weil Loxone bei Virtuellen HTTP-Eingängen keine Header mitgeben kann.
Bestimmtes Smartlock zusperren
curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Authorization: Bearer fb54f2267013dc3d1d0eb68d1388b1aaefef9135a2e3d204b3d18fef1f1ed0c9a29abfa8013cf32d' 'https://api.nuki.io/smartlock/441612989/action/lock'
Die markierte Nummer ist die Smartlock-ID, die du mit dem Befehl "Status abfragen" zurückbekommst.
Dieser Befehl, umgelegt auf einen Virtuellen Ausgang am Miniserver, sieht dann so aus:
Virtueller Ausgang
Virtueller Ausgang Befehl