SMSEagle bietet eine leistungsstarke integrierte REST-API. Die API ist für die Integration von SMSEagle mit jedem externen System oder jeder Anwendung konzipiert.

API-Referenz

SMSEagle bietet zwei API-Versionen:

  • API v2 – empfohlen, verwenden Sie es für jede neue Integration. Eine moderne RESTful-API basierend auf der OpenAPI-3.0-Spezifikation. API v2-Referenz

  • API v1 – die Legacy-API, nur zur Rückwärtskompatibilität beibehalten. Eine einfache HTTP- und JSON-RPC-API. Sie funktioniert immer noch und wird weiterhin unterstützt, erhält aber keine neuen Funktionen – schreiben Sie keine neuen Integrationen dagegen. API v1-Referenz

Aufgrund des umfangreichen Inhalts der API-Dokumentation wird sie als separates Dokument gepflegt. Folgen Sie den obigen Links für die vollständige Spezifikation jeder API.

API-Schlüssel

Eine Integration authentifiziert sich mit einem API-Schlüssel statt mit einem Benutzerpasswort. Schlüssel werden für jede API-Version separat auf zwei Seiten gespeichert:

  • Settings > API > API v2 (/settings/api/v2)

  • Settings > API > API v1 (/settings/api/v1)

Ein Schlüssel gehört immer zu einem Benutzer und agiert als dieser Benutzer, sodass er die Nachrichten und Kontakte dieses Benutzers sieht. Berechtigungen werden pro Schlüssel gewährt, sodass Sie ein Überwachungssystem auf Lesezugriff beschränken können, während ein Website-Formular möglicherweise nur senden darf.

API v2-Schlüssel

Dies ist die Seite für eine neue Integration.

API v2-Schlüsselseite mit jedem Schlüssel, seinem Besitzer, seinen Berechtigungen und der letzten Verwendung (Beispielwerte)

API v2-Schlüssel

API v1-Schlüssel

API v1 ist die Legacy-API. Erstellen Sie einen v1-Schlüssel nur für eine vorhandene Integration, die nicht zu v2 migriert werden kann – erstellen Sie stattdessen für alles Neue einen API v2-Schlüssel.

API v1-Schlüsselseite mit jedem Schlüssel, seinem Besitzer, seinen Berechtigungen und der letzten Verwendung (Beispielwerte)

API v1-Schlüssel

Schlüssel erstellen

Create API key öffnet das Formular für die API-Version, deren Seite Sie sich ansehen:

Feld

Was es macht

Key name

Wie Sie diese Integration später erkennen, zum Beispiel Zabbix oder Website form.

Owner

Der Benutzer, als der der Schlüssel agiert. Der Schlüssel sieht die Nachrichten und Kontakte dieses Benutzers.

Key enabled

Ein deaktivierter Schlüssel wird von der API abgelehnt, ohne gelöscht zu werden, was eine Integration deaktiviert, ohne ihre Konfiguration zu verlieren.

Access to all users‘ resources

Nur API v2. Ermöglicht dem Schlüssel, Ressourcen anderer Benutzer zu lesen und zu ändern (siehe unten).

Berechtigungen

Mit diesem Schlüssel können nur die Methoden aufgerufen werden, die Sie aktivieren.

Der Schlüssel wird genau nach seiner Erstellung einmal angezeigt. Kopieren Sie ihn dann und speichern Sie ihn an einem sicheren Ort. Wenn Sie ihn verlieren, widerrufen Sie diesen Schlüssel und erstellen Sie einen neuen – die anderen Schlüssel desselben Benutzers funktionieren weiterhin.

Welche Benutzer haben API-Zugriff

System > Benutzer zeigt pro Benutzer, wie viele API-Schlüssel der Benutzer hat und für welche API-Version. Das Symbol verlinkt direkt zur entsprechenden Schlüsselseite.

API-Zugriffsspalte in der Benutzerliste mit der Schlüsselanzahl pro Benutzer

API-Zugriff, pro Benutzer in der Benutzerliste angezeigt

Zugriff auf Ressourcen anderer Benutzer

Die beiden API-Versionen unterscheiden sich darin, wie breit ein API-Schlüssel Daten anderer Benutzer einsehen kann:

  • In API v1 hat ein Schlüssel standardmäßig Zugriff auf Ressourcen aller anderen Benutzer – Kontakte im Telefonbuch, Gruppen und so weiter.

  • In API v2 ist der Zugriff granularer: Ein Schlüssel hat standardmäßig nur Zugriff auf Ressourcen, die er selbst erstellt hat. Um Zugriff auf Ressourcen aller anderen Benutzer zu ermöglichen, aktivieren Sie Zugriff auf Ressourcen aller Benutzer auf dem Schlüssel.