API und Entwicklerintegrationen
SMSEagle bietet eine leistungsstarke integrierte REST-API. Die API ist für die Integration von SMSEagle mit einem externen System oder einer Anwendung vorgesehen.
API-Referenz
SMSEagle bietet zwei API-Versionen:
API v2 – empfohlen, verwenden Sie sie für jede neue Integration. Eine moderne RESTful-API basierend auf der OpenAPI-3.0-Spezifikation. API v2-Referenz
API v1 – die ältere API, wird nur aus Gründen der 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 API-Dokumentationsinhalts wird diese 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 anstelle eines Benutzerpassworts. Schlüssel werden für jede API-Version separat auf zwei Seiten aufbewahrt:
Settings > API > API v2 (
/settings/api/v2)Settings > API > API v1 (
/settings/api/v1)
Ein Schlüssel gehört immer einem Benutzer und fungiert als dieser Benutzer, daher sieht er die Nachrichten und Kontakte dieses Benutzers. Berechtigungen werden pro Schlüssel gewährt, sodass Sie ein Überwachungssystem auf Lesen begrenzen können, während ein Website-Formular möglicherweise nur senden darf.
API v2-Schlüssel
Dies ist die Seite, die für eine neue Integration verwendet werden sollte.
API v1-Schlüssel
API v1 ist die ältere API. Erstellen Sie einen v1-Schlüssel nur für eine vorhandene Integration, die nicht zu v2 verschoben werden kann – für alles Neue erstellen Sie stattdessen einen API v2-Schlüssel.
Erstellen eines Schlüssels
Create API key öffnet das Formular für die API-Version, deren Seite Sie besuchen:
Feld |
Funktion |
|---|---|
Key name |
Wie Sie diese Integration später erkennen werden, z. B. Zabbix oder Website form. |
Owner |
Der Benutzer, als der der Schlüssel fungiert. 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 ausschaltet, 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 aktiviert haben. |
Der Schlüssel selbst wird nur einmal angezeigt, unmittelbar nach seiner Erstellung. 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 > Users zeigt pro Benutzer an, wie viele API-Schlüssel der Benutzer hat und für welche API-Version. Das Abzeichen verlinkt direkt zur entsprechenden Schlüsselseite.
Zugriff auf Ressourcen anderer Benutzer
Die beiden API-Versionen unterscheiden sich darin, wie umfassend ein API-Schlüssel Daten anderer Benutzer einsehen kann:
In API v1 hat ein Schlüssel standardmäßig Zugriff auf Ressourcen jedes anderen Benutzers – Phonebuch-Kontakte, Gruppen usw.
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 Access to all users‘ resources auf dem Schlüssel.