REST-API
Eine REST-API ist eine Programmierschnittstelle, die nach dem Architekturstil REST (Representational State Transfer) aufgebaut ist und es Softwaresystemen ermöglicht, über standardisierte HTTP-Methoden miteinander zu kommunizieren.
Ausführliche Erklärung
REST steht für Representational State Transfer und wurde im Jahr 2000 von dem Informatiker Roy Fielding als Architekturstil für Webdienste definiert. Eine REST-API ist keine starre Technologie, sondern folgt sechs Gestaltungsprinzipien: einheitliche Schnittstellen, Zustandslosigkeit, Trennung von Client und Server, Cachebarkeit, ein geschichtetes System sowie optional die Übertragung ausführbaren Codes. Diese Prinzipien sorgen für Flexibilität, Skalierbarkeit und einfache Wartbarkeit.
Für Unternehmen sind REST-APIs der De-facto-Standard für die Integration verschiedener Systeme. Wenn ein Webshop mit einem ERP-System kommunizieren soll, ein CRM-System Daten an eine Buchhaltungssoftware übermittelt oder ein Lagerverwaltungsprogramm Bestandsdaten in Echtzeit bereitstellt, geschieht dies meist über REST-APIs. Die Kommunikation erfolgt über HTTP-Anfragen, wobei standardisierte Methoden zum Einsatz kommen: GET zum Abrufen von Daten, POST zum Erstellen neuer Einträge, PUT oder PATCH zum Aktualisieren und DELETE zum Löschen. Die Antworten werden üblicherweise im JSON-Format übermittelt, das sowohl von Menschen als auch von Maschinen gut lesbar ist.
Ein zentraler Vorteil von REST-APIs ist ihre Sprachunabhängigkeit: Sie können mit praktisch jeder Programmiersprache entwickelt und genutzt werden. Zudem sind sie deutlich schlanker als ältere Protokolle wie SOAP, was sie besonders für Cloud-Integrationen und mobile Anwendungen interessant macht. Die Zustandslosigkeit der Kommunikation bedeutet, dass jede Anfrage alle notwendigen Informationen enthält und der Server keine Sitzungsdaten speichern muss. Das vereinfacht die Skalierung erheblich.
Für KMU ist entscheidend, dass moderne Cloud- und SaaS-Anwendungen heute nahezu ausnahmslos REST-APIs anbieten. Bei der Auswahl neuer Software sollte daher immer geprüft werden, ob eine offene REST-API vorhanden und im gebuchten Tarif enthalten ist. Ohne diese Schnittstelle drohen Datensilos, manuelle Doppelerfassungen und eingeschränkte Automatisierungsmöglichkeiten.
Praxisbeispiel
Ein Tiroler Fertigungsbetrieb mit 45 Mitarbeitenden nutzt ein Cloud-ERP-System und betreibt parallel einen Webshop auf Shopify. Über die REST-API des ERP-Systems werden Bestellungen automatisch übertragen: Sobald im Webshop eine Bestellung eingeht, sendet Shopify per POST-Request die Auftragsdaten an das ERP. Das ERP prüft den Lagerbestand per GET-Anfrage und meldet die Verfügbarkeit in Echtzeit zurück. Der Kunde sieht bereits auf der Bestellseite, ob sein Artikel lieferbar ist – ohne manuelle Datenpflege.
Code-Beispiel
// Beispiel: HTTP GET-Anfrage an eine REST-API
GET /api/v1/customers/12345 HTTP/1.1
Host: erp.beispiel.at
Authorization: Bearer eyJhbGc...
Accept: application/json
// Antwort (JSON)
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": 12345,
"name": "Mustermann GmbH",
"email": "[email protected]"
}