API und Entwicklerintegration
SMSEagle bietet eine leistungsstarke integrierte REST-API. Die API ist für die Integration von SMSEagle mit jedem externen System oder jeder Anwendung vorgesehen.
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 aus Gründen der Abwä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 diese als separate Dokumentation 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 Benutzerkennwort. 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 einem Benutzer und handelt als dieser Benutzer, daher sieht er die Nachrichten und Kontakte dieses Benutzers. Berechtigungen werden pro Schlüssel gewährt, wodurch Sie ein Überwachungssystem auf Lesezugriff beschränken können, während ein Website-Formular möglicherweise nur senden kann.
API v2-Schlüssel
Dies ist die Seite für eine neue Integration.
API v1-Schlüssel
API v1 ist die Legacy-API. Erstellen Sie einen v1-Schlüssel nur für eine bestehende Integration, die nicht zu v2 migriert 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, auf deren Seite Sie sich befinden:
Feld |
Funktion |
|---|---|
Key name |
Wie Sie diese Integration später wiedererkennen, zum Beispiel 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 deaktiviert, ohne ihre Konfiguration zu verlieren. |
Access to all users‘ resources |
Nur API v2. Ermöglicht dem Schlüssel das Lesen und Ändern von Ressourcen anderer Benutzer (siehe unten). |
Berechtigungen |
Mit diesem Schlüssel können nur die Methoden aufgerufen werden, die Sie aktiviert haben. |
Der Schlüssel wird einmal direkt nach seiner Erstellung angezeigt. Kopieren Sie ihn dann und speichern Sie ihn an einem sicheren Ort. Wenn Sie ihn verlieren, widerrufen Sie den 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 Badge verlinkt direkt zur entsprechenden Schlüsselseite.
Zugriff auf Ressourcen anderer Benutzer
Die beiden API-Versionen unterscheiden sich darin, wie breit ein API-Schlüssel die Daten anderer Benutzer einsehen kann:
In API v1 hat ein Schlüssel standardmäßig Zugriff auf Ressourcen aller anderen Benutzer - Adressbuchkontakte, 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 den Zugriff auf Ressourcen aller anderen Benutzer zu ermöglichen, aktivieren Sie Access to all users‘ resources auf dem Schlüssel.