REST API Design
Verständliche, stabile und langfristig nutzbare HTTP-Schnittstellen entwerfen
01 Intro
Eine API ist ein Vertrag zwischen Systemen und häufig wesentlich
langlebiger als ihre interne Implementierung. Inkonsistente
Ressourcenmodelle, unklare Fehlersemantik und unkontrollierte Änderungen
führen deshalb schnell zu dauerhaften Integrationsproblemen.
Der Kurs behandelt REST APIs aus der Perspektive des Schnittstellendesigns.
Die Teilnehmer modellieren Ressourcen und Operationen, gestalten
konsistente HTTP-Schnittstellen und entwickeln Strategien für Fehler,
Änderungen, Sicherheit und Dokumentation.
Kurs-ID
SWE-006
Dauer
2 Tage
Format
Präsenz · Live Online · Inhouse
Vorkenntnisse
Grundlagen von HTTP und praktische Erfahrung in Softwareentwicklung
02 Trainingsprogramm
Inhalte
REST und HTTP einordnen
- REST
- Ressourcen
- Repräsentationen
- HTTP
- Client und Server
- Richardson Maturity Model
Ressourcen modellieren
- fachliche Ressourcen
- URLs
- Collections
- Beziehungen
- Hierarchien
- stabile Identitäten
HTTP-Methoden
- GET
- POST
- PUT
- PATCH
- DELETE
- Methodensemantik
Statuscodes und Fehler
- Erfolgsantworten
- Clientfehler
- Serverfehler
- konsistente Fehlerobjekte
- Validierungsfehler
- Problem Details
Repräsentationen
- JSON
- Felder
- Datentypen
- Null
- Datumswerte
- konsistente Konventionen
Collections und große Datenmengen
- Pagination
- Filtering
- Sorting
- Searching
- Projection
- konsistente Parameter
Nebenläufigkeit und Zustände
- ETags
- Conditional Requests
- Optimistic Locking
- Race Conditions
- Idempotency Keys
- konkurrierende Änderungen
API-Sicherheit
- Authentifizierung
- Autorisierung
- Tokens
- Input Validation
- Informationspreisgabe
- Security by Design
Änderungen und Kompatibilität
- Breaking Changes
- additive Änderungen
- Versionierung
- Deprecation
- Consumer
- Migrationspfade
OpenAPI und Dokumentation
- API Contract
- OpenAPI
- Schema
- Beispiele
- Dokumentation
- Code First
API-Design bewerten
- Konsistenz
- Verständlichkeit
- Robustheit
- Evolvability
- Consumer-Perspektive
- typische Anti-Patterns
API-Design-Workshop
- fachlichen Anwendungsfall analysieren
- Ressourcen modellieren
- Operationen definieren
- Fehler gestalten
- Contract erstellen
- Design reviewen
03 Durchführung
Rahmen und Organisation
Dauer
2 Tage
Durchführung
Präsenz oder Live Online, vorzugsweise als Inhouse-Schulung
Schwerpunkt
Inhouse-Schulungen für Unternehmen und Teams
Sprache
Deutsch, englische Fachbegriffe und Dokumentation
Unterlagen
Kursunterlagen, Beispiele und Übungsaufgaben
Technik
Eigener Rechner für die praktischen Übungen
Inhouse-Schulungen
Eine eigene bestehende oder geplante API kann als Grundlage für den
Design-Workshop dienen.
04 Zielgruppe
Für wen ist der Kurs gedacht?
Softwareentwickler, Softwarearchitekten und technische API-Verantwortliche.
Voraussetzungen
Grundkenntnisse von HTTP und praktische Softwareentwicklung.
05 Lernziele
Was Sie nach dem Kurs können
Die Teilnehmer können konsistente REST APIs modellieren, HTTP-Semantik
sinnvoll nutzen, stabile Fehler- und Änderungsstrategien entwickeln und
Schnittstellen mit OpenAPI dokumentieren.
06 FAQ
Häufige Fragen
Wird eine API implementiert?
Kleine Implementierungen können zur Überprüfung des Designs eingesetzt werden. Schwerpunkt ist jedoch das API-Design.
Wie grenzt sich der Kurs gegen die Testkurse zu APIs ab?
Hier geht es um den Entwurf einer guten API. Der Kurs zu API Testing behandelt, wie eine API systematisch geprüft wird, und der Kurs zur API-Testautomatisierung, wie diese Prüfungen technisch automatisiert werden.
Werden GraphQL oder gRPC behandelt?
Sie können zur Einordnung herangezogen werden. Schwerpunkt ist REST über HTTP.