REST-API
Die REST-API (Representational State Transfer API) der mobileX-ServicePlatform ermöglicht eine effiziente Integration und den Datenaustausch zwischen den IT-Systemen der Kunden und der mobileX-ServicePlatform. Basierend auf dem REST-Architekturstil verwendet die API standardisierte HTTP-Methoden wie GET, POST, PUT und DELETE, um eine skalierbare, leistungsfähige und plattformunabhängige Kommunikation zu gewährleisten.
Vorteile der REST-API
- Plattformunabhängigkeit: RESTful Web Services können von jeder Client-Anwendung aufgerufen werden, die HTTP-Anfragen senden kann, unabhängig von Programmiersprache oder Plattform.
- Skalierbarkeit: Durch seine zustandslose Natur und die Fähigkeit, Anfragen parallel zu verarbeiten, skaliert REST gut mit steigendem Datenvolumen und Nutzerzahlen.
- Leistung: REST verwendet einfache HTTP-Anfragen und kann Caching-Mechanismen effizient nutzen, wodurch die Netzwerklast reduziert und die Leistung verbessert wird.
Systemvoraussetzungen
Um eine effektive und sichere Anbindung an die REST-API der mobileX-ServicePlatform zu gewährleisten, müssen die IT-Systeme der Nutzer bestimmte technische Voraussetzungen erfüllen. Diese Anforderungen sind entscheidend, um die volle Funktionalität und Performance der API zu nutzen und eine nahtlose Integration zu gewährleisten. Die folgenden technischen Spezifikationen beschreiben die grundlegenden Systemanforderungen.
- Unterstützung für HTTP-Requests: Die Kommunikation mit der REST-API erfolgt über das HTTP-Protokoll. Systeme, die mit unserer API interagieren, müssen daher in der Lage sein, HTTP-Requests zu initiieren und zu verarbeiten.
- Fähigkeit zur Verarbeitung von JSON-Datenformaten: JSON (JavaScript Object Notation) ist ein leichtgewichtiges Datenaustauschformat, das für Menschen einfach zu lesen und für Maschinen einfach zu parsen und zu generieren ist. Die mobileX-ServicePlattform verwendet JSON für den Datenaustausch, da es von den meisten modernen Programmiersprachen und Plattformen nativ unterstützt wird. Systeme, die mit der API verbunden sind, müssen daher in der Lage sein, JSON-Daten zu verarbeiten, einschließlich des Parsens eingehender JSON-Nachrichten und der Generierung von JSON-Strukturen für ausgehende Anfragen.
- Kompatibilität mit modernen Authentifizierungsstandards: Sicherheit ist ein kritischer Aspekt bei der Integration externer APIs. Unsere API verwendet moderne Authentifizierungsprotokolle, um sicherzustellen, dass nur autorisierte Nutzer Zugriff auf die API-Funktionen haben. OAuth 2.0.0 ist ein Industriestandard für Zugriffskontrolle, der es externen Anwendungen ermöglicht, auf Nutzerdaten zuzugreifen, ohne Passwörter zu verwenden. OpenID Connect (OIDC), eine Erweiterung von OAuth 2.0, fügt eine Authentifizierungsschicht hinzu, die es Systemen ermöglicht, die Identität des Endnutzers sicher zu verifizieren. Systeme, die an die mobileX-ServicePlatform angebunden werden, müssen diese Protokolle unterstützen, um eine sichere und zuverlässige Verbindung zu ermöglichen.
Architektur und Design der API
Die API folgt den Grundprinzipien des REST-Architekturstils, bei dem die einfache und direkte Interaktion zwischen Client und Server über das HTTP-Protokoll im Vordergrund steht. RESTful APIs sind zustandslos; jede Anfrage eines Clients an den Server muss alle für die Kommunikation erforderlichen Informationen enthalten. Dieses Design unterstützt die Skalierbarkeit und Unabhängigkeit der Interaktionen. Im Kontext der mobileX-ServicePlattform bedeutet dies, dass jeder Endpunkt spezifische Ressourcen wie Auftragsdaten, Technikerdetails oder Arbeitszeitmodelle repräsentiert.
Die API verwendet HTTP-Methoden wie GET, POST, PUT und DELETE, um CRUD-Operationen (Create, Read, Update, Delete) auf diesen Ressourcen durchzuführen. Die Endpunkte sind so gestaltet, dass sie die Art der Ressource und die auszuführenden Operationen intuitiv widerspiegeln, was die Integration und die tägliche Nutzung erleichtert.
Unsere API implementiert Level 2 des Richardson Maturity Models, das eine präzise Handhabung von Ressourcen durch die Verwendung von HTTP-Verben und Ressourcenpfaden ermöglicht. Dazu gehört auch die Verwendung von HTTP-Statuscodes, um den Erfolg oder Misserfolg von Anfragen klar zu kommunizieren. Ein solches Design hilft Entwicklern, die Funktionalität der API schnell zu verstehen und Fehler effizient zu diagnostizieren.
Die API integriert moderne Sicherheitsstandards, um die Integrität und Sicherheit der Daten zu gewährleisten. Authentifizierung und Autorisierung erfolgen über bewährte Mechanismen wie OAuth 2.0 und OIDC die eine sichere und kontrollierte Zugriffssteuerung ermöglichen. Diese Sicherheitsmaßnahmen sind in die Architektur eingebettet und stellen sicher, dass nur autorisierte Anfragen verarbeitet werden.
Anbindung bestehender Systeme
Die erfolgreiche Integration der REST-API der mobileX-ServicePlatform in bestehende Systeme ist ein mehrstufiger Prozess, der mit einem sorgfältigen Mapping der bestehenden Datenstrukturen der Unternehmen auf die Struktur der API beginnt. Dieser Schritt ist entscheidend, da er die Grundlage für eine nahtlose Kommunikation und den Datenfluss zwischen den Systemen bildet.
Prozess des Mappings
Das Mapping umfasst die Zuordnung der in den bestehenden Systemen des Kunden vorhandenen Datenobjekte zu den entsprechenden Endpunkten und Datenformaten der API. Beispielsweise müssen Objekte wie Aufträge, Mitarbeiterdaten oder Ressourcen sorgfältig analysiert und entsprechend den Anforderungen der API auf die Zielstruktur gemappt werden. Dazu gehört auch die Identifizierung von Schlüsselfeldern wie IDs, Statusinformationen und spezifischen Attributen, die für den Geschäftsprozess erforderlich sind. In der Regel erfolgt das Mapping auf Feldebene und muss vom Kunden manuell durchgeführt werden.
Handling von Datenintegration und Synchronisation
Ein weiterer wichtiger Aspekt des Integrationsprozesses ist die Datenintegration und -synchronisation. Die API ermöglicht es, dass Aufträge, die in einem ERP-System des Kunden entstehen, an unser System übergeben werden können, damit sie geplant und mobil bearbeitet werden können. Umgekehrt müssen Daten, die in der mobileX-ServicePlatform entstehen, wieder in das ERP-System eingelesen werden können, um z.B. Fakturierungsprozesse anzustoßen.
Die Integration beinhaltet typischerweise auch eine kontinuierliche Synchronisation der Daten, um sicherzustellen, dass Änderungen in einem System in Echtzeit oder nahezu in Echtzeit im anderen System reflektiert werden. Diese Synchronisation ist besonders wichtig in dynamischen Umgebungen, in denen der Auftragsstatus, die Verfügbarkeit von Mitarbeitern oder die Zuweisung von Ressourcen häufig aktualisiert werden.
Über Events (MQTT oder Cloud Events) wird das Backend informiert, sobald sich Daten geändert haben. Im Anschluss ruft das Backend den REST Service auf und kann die Daten synchronisieren.
Anbindung an SAP
Für Kunden mit SAP-Backend bieten wir eine zertifizierte Schnittstelle für die End-to-End-Integration, das mobileX-Add-On for SAP.
Sicherheitskonzepte
Die Sicherheit der über die REST-API der mobileX-ServicePlatform übertragenen Daten hat für uns höchste Priorität. Um diese zu gewährleisten, setzen wir auf eine mehrschichtige Sicherheitsarchitektur, die sowohl auf Transportsicherheit durch TLS-Verschlüsselung als auch auf robusten Authentifizierungsmechanismen basiert. Diese Konzepte stellen die Vertraulichkeit, Integrität und Verfügbarkeit der ausgetauschten Daten sicher.
TLS (Transport Layer Security)
Wir verwenden TLS (Transport Layer Security), um eine sichere Datenübertragung zu gewährleisten. TLS ist ein Protokoll, das die Daten während der Übertragung verschlüsselt und so vor Abhörversuchen und Manipulationen schützt. Diese Sicherheitsmaßnahme ist entscheidend, um zu gewährleisten, dass alle Daten, die zwischen den Clients und dem Server übertragen werden, privat und unverändert bleiben.
Authentifizierung und Autorisierung
Zusätzlich zur Transportsicherheit implementieren wir fortgeschrittene Authentifizierungsmechanismen, um sicherzustellen, dass nur autorisierte Benutzer Zugriff auf die API haben. Dazu verwenden wir OAuth 2.0 und OpenID Connect. OAuth 2.0 ist ein weit verbreiteter Standard für die Zugriffskontrolle, der es ermöglicht, Drittanwendungen eingeschränkten Zugriff auf HTTP-Dienste zu gewähren. OpenID Connect baut auf OAuth 2.0 auf und fügt eine Authentifizierungsschicht hinzu, die es ermöglicht, die Identität von Endnutzern sicher zu bestätigen.
Die Authentifizierungsprozesse verwenden kurzlebige Token, die eine feingranulare Kontrolle des API-Zugriffs ermöglichen. Diese Tokens müssen von den Kunden regelmäßig erneuert werden, wodurch das Risiko einer Kompromittierung minimiert wird. Darüber hinaus sind die Authentifizierungsmethoden so konfiguriert, dass sie die Verwendung starker, zertifikatsbasierter Authentifizierungsoptionen unterstützen, was ein noch höheres Maß an Sicherheit bietet.
mobileX-Add-On for SAP
Die Produkte der mobileX bieten eine von SAP zertifizierte Schnittstelle für SAP CS/PM und S/4HANA Service. Diese Softwarekomponente ist als sogenanntes mobileX-Add-On for SAP verfügbar.
mobileX-Add-On for Webservices
Für die Technologie SOAP-Webservices stellt mobileX eine standardisierte API zur Verfügung.