OpenAPI Client-/Server-Tooling für Delphi — Vergleichsleitfaden

Eine neutrale, mit Quellen belegte Übersicht der OpenAPI-Client- und Codegenerierungs-Optionen, die Delphi- und C++ Builder-Entwicklern 2026 zur Verfügung stehen: sgcOpenAPI, OpenAPI Generator, Swagger Codegen, mORMot 2, TMS XData mit dem zugehörigen OpenAPI Delphi Generator sowie der handgeschriebene REST-Client-Weg. Jede Aussage zu Features verlinkt auf die eigene Dokumentation des Projekts.

Sechs Wege von einer OpenAPI-Spezifikation zu lauffähigem Delphi-Code

Eine Zusammenfassung jeder Option in einem Absatz, mit Link zur offiziellen Dokumentation oder zum Repository. Der detaillierte Vergleich folgt in der Matrix darunter.

OpenAPI Generator

OpenAPI Tools community · Apache 2.0 (Open Source)

Open-Source-Java-Tool, ursprünglich aus Swagger Codegen geforkt, mit 60+ Client-Generatoren und 40+ Server-Stub-Generatoren. Generiert Clients und/oder Server für C, C#, C++ (cpp-restsdk, Qt5, Oat++, Tizen, Unreal Engine 4), Go, Java, Kotlin, PHP, Python, Rust, TypeScript und viele weitere. Die offizielle Generatorliste enthält kein Delphi-/Object Pascal-/Free Pascal-Ziel.

Official page

Swagger Codegen

SmartBear / community · Apache 2.0 (Open Source)

Das ursprüngliche Java-Codegenerator-Projekt von SmartBear, aus dem OpenAPI Generator 2018 geforkt wurde. Unterstützt ActionScript, Ada, Apex, Bash, C#, C++, Clojure, Dart, Elixir, Erlang, Go, Groovy, Haskell, Java, Kotlin, Lua, Node.js, Objective-C, Perl, PHP, PowerShell, Python, R, Ruby, Rust, Scala, Swift und TypeScript. Die 3.x-Linie unterstützt OpenAPI 3.0; die 2.x-Linie nur OpenAPI 2.0 (Swagger). Weder die eine noch die andere Linie bietet einen Delphi- oder Object Pascal-Generator.

Official page

mORMot 2 OpenAPI-Client-Generator

Arnaud Bouchez / Synopse · MPL / GPL / LGPL (Open Source)

mORMot 2 liefert mormot.net.openapi.pas mit, das ein OpenAPI 3.x- oder Swagger 2.0-Dokument (Datei oder URL) liest und FPC-/Delphi-Pascal-Client-Units erzeugt — High-Level-Records und dynamische Arrays als DTOs, Pascal-Enumerationen für Enum-Werte und die Übersetzung von HTTP-Statuscodes in Exceptions. Die Unit zielt auf FPC und Delphi 7 / 2009 und neuer ab und läuft als Teil des umfassenderen mORMot SOA-/ORM-Frameworks.

Official page

TMS XData & OpenAPI Delphi Generator

TMS Software / Landgraf Software · Commercial (XData) / Apache 2.0 + Commons Clause (generator)

TMS XData ist ein kommerzielles Delphi REST-/JSON-/ORM-Remoting-Framework. Ein XData-Server kann für seine eigenen Endpunkte ein OpenAPI- (ehemals Swagger-)Dokument unter /openapi/swagger.json veröffentlichen und lässt sich mit SwaggerUI / Redoc kombinieren. Der zugehörige OpenAPI Delphi Generator (ursprünglich in XData enthalten, jetzt als separates Open-Source-Projekt unter landgraf-dev/openapi-delphi-generator) verarbeitet Swagger 2.0-/OpenAPI 3.0-Dokumente und erzeugt Delphi-Interfaces sowie DTO-Klassen für die Verwendung mit TXDataClient.

Official page

Handgeschriebene REST-Clients (Indy / THTTPClient)

Indy Project / Embarcadero · BSD / MPL (Indy) · RAD Studio EULA (THTTPClient)

Eine verbreitete Realität: Entwickler schreiben den REST-Client von Hand mit TIdHTTP (Indy) oder System.Net.HttpClient.THTTPClient (in Delphi enthalten). Keine Codegenerierung, kein Schema; manuelles JSON-Marshalling mit den RTL-JSON-Units (oder TJSONObject). Authentifizierung, Retry-Logik und Pagination werden ebenfalls von Hand implementiert.

Official page

Funktionsvergleich nebeneinander

Ein Haken () bedeutet, dass das Projekt native Unterstützung dokumentiert. Ein Strich (—) bedeutet, dass das Projekt sie nicht nativ bietet. Eine Tilde (~) bedeutet teilweise, über ein Add-on oder nicht ausdrücklich dokumentiert. Was wir prüfen konnten, siehst du im Quellenabschnitt weiter unten.

Generatoren, Runtime, Lizenzierung

15 Zeilen
Funktion sgcOpenAPI OpenAPI Generator Swagger Codegen mORMot 2 OpenAPI-Client-Generator TMS XData & OpenAPI Delphi Generator Handgeschriebene REST-Clients (Indy / THTTPClient)
Generiert Delphi-Client Nativer Object Pascal-Client aus OpenAPI 3.x — — —
Generiert C++ Builder-Code C++ Builder VCL-/FMX-Ziele (BCC32 / BCC64) ~ ~ ~ ~ —
Generiert Server-Stubs Server-seitiges Scaffolding aus einer OpenAPI-Spezifikation —
Native Delphi-Server-Runtime Eingebettete HTTP-Server-Komponente, die die generierten Endpunkte in einem Delphi-/C++ Builder-Prozess hostet — — ~ —
Veröffentlicht live OpenAPI-Dokument Server stellt zur Laufzeit sein eigenes openapi.json / openapi.yaml für Discovery und SwaggerUI / Redoc bereit — — — —
Serverseitige Request-/Response-Validierung Eingehende Requests und ausgehende Responses werden zur Laufzeit gegen die OpenAPI-Schemas validiert ~ ~ ~ ~ —
HTTP/2-Client Nativer HTTP/2-Transport im generierten Client ~ ~ — ~ ~
Typisierte JSON-DTOs Stark typisierte Klassen/Records/Enums ~
OAuth2-/JWT-Helfer Eingebaute OAuth2-Flows und JWT-Helfer ~
Async-/Sync-Helfer Sowohl asynchrone als auch synchrone Aufrufmuster ~
Plattformübergreifende Runtime Win / macOS / Linux / iOS / Android
Mitgelieferte Vendor-SDKs AWS / Azure / GCP / Microsoft Graph vorgefertigt — — — — —
Kommerzielle Nutzung erlaubt Lizenz erlaubt kommerzielle Closed-Source-Nutzung
Aktive Pflege Release oder getaggte Aktivität in den letzten 12–18 Monaten ~
Lizenzmodell Lizenztyp Commercial Apache 2.0 (Open Source) Apache 2.0 (Open Source) MPL / GPL / LGPL Commercial (XData) + Apache 2.0 + CC (generator) BSD / MPL (Indy) · RAD Studio EULA (THTTPClient)
Dokumentierte native Unterstützung — Nicht nativ vorhanden ~ Teilweise / über Add-on / nicht verifiziert

Wechsel zu sgcOpenAPI — was anders ist

Kurze Hinweise zu den Unterschieden, wenn du von einer der oben genannten Optionen wechselst. Nicht konfrontativ — nur die praktische Zuordnung.

Wechsel von OpenAPI Generator

OpenAPI Generator unterstützt Delphi nicht, daher bedeutet "Migration" hier, dass du C#-/Java-/TS-Clients neben dem sgcOpenAPI-Delphi-Client aus derselben Spezifikation generierst. War dein bisheriger Aufbau ein mit OpenAPI Generator gebauter C#-Wrapper, der aus Delphi über COM oder REST konsumiert wurde, entfällt diese Schicht mit sgcOpenAPI, da der Delphi-Client direkt erzeugt wird.

Wechsel von Swagger Codegen

Swagger Codegen unterstützt Delphi nicht. Hat dein bisheriger Workflow einen generischen C#- oder Java-Client exportiert und für Delphi gewrappt, lässt sich mit sgcOpenAPI der Delphi-Client direkt aus derselben Spezifikation generieren und die Wrapper-Schicht entfällt.

Wechsel vom mORMot 2 OpenAPI Client-Generator

Der OpenAPI Client-Generator von mORMot ist Teil des umfassenderen Frameworks. Nutzt deine Anwendung nur den Generator und nicht die SOA-/ORM-/WebSocket-Schichten, liefert sgcOpenAPI ein eigenständiges, einsetzbares Komponentenset ohne die zusätzlichen Units. Umgekehrt bedeutet ein Wechsel rein wegen des OpenAPI-Generators, dass du diese Teile neu implementieren musst, falls du auch die SOA-Verträge und das ORM von mORMot nutzt — das bietet sgcOpenAPI nicht.

Wechsel von TMS XData & OpenAPI Delphi Generator

Wenn du derzeit den in XData eingebauten Importer nutzt, um Clients aus Swagger-Spezifikationen Dritter zu generieren, beachte: der Importer wurde in das Open-Source-Projekt landgraf-dev/openapi-delphi-generator ausgegliedert — die in-XData-Klassen sind als veraltet dokumentiert. sgcOpenAPI ist ein anderer, kommerziell unterstützter Generator, der OpenAPI 3.x nativ liest, SDKs für die großen Cloud-Plattformen mitliefert und Delphi 7–13 sowie C++ Builder anzielt.

Wechsel von handgeschriebenen REST-Clients (Indy / THTTPClient)

Handgeschriebene Clients altern schlecht, wenn die API-Fläche wächst oder der Upstream-Dienst neue Endpunkte veröffentlicht. sgcOpenAPI kann dieselben DTOs und Methodensignaturen in Sekunden aus der veröffentlichten Spezifikation generieren und befreit die handgeschriebene Logik für jene Teile, die das wirklich brauchen (Custom-Retries, Telemetrie, Business-Glue). Der generierte Code nutzt einen ähnlichen HTTP-Transport, sodass das Entwickler-Mental-Model nah am vorigen bleibt.

Jede Aussage, verlinkt

Jede Zelle in der Matrix oben verweist auf eine dieser offiziellen Dokumentationsseiten, Repositories oder Release Notes. Alle URLs wurden zum Zeitpunkt der Erstellung per HEAD geprüft.

QuelleURL
sgcOpenAPI — Produktseitehttps://www.esegece.com/products/openapi/
sgcOpenAPI — featureshttps://www.esegece.com/products/openapi/features/
sgcOpenAPI — parserhttps://www.esegece.com/products/openapi/parser/
sgcOpenAPI — vorgefertigte SDKshttps://www.esegece.com/products/openapi/apis/
OpenAPI Generator — Projektseitehttps://openapi-generator.tech/
OpenAPI Generator — GitHub-Repositoryhttps://github.com/OpenAPITools/openapi-generator
OpenAPI Generator — Liste der unterstützten Generatorenhttps://github.com/OpenAPITools/openapi-generator/blob/master/docs/generators.md
OpenAPI Generator — Releaseshttps://github.com/OpenAPITools/openapi-generator/releases
Swagger Codegen — Produktseite (swagger.io)https://swagger.io/tools/swagger-codegen/
Swagger Codegen — GitHub-Repositoryhttps://github.com/swagger-api/swagger-codegen
Swagger Codegen Generators (3.x templates)https://github.com/swagger-api/swagger-codegen-generators
mORMot 2 — GitHub-Repository (synopse/mORMot2)https://github.com/synopse/mORMot2
mORMot 2 — README (Erwähnung von Netzwerk & OpenAPI)https://github.com/synopse/mORMot2/blob/master/README.md
mORMot 2 — Releaseshttps://github.com/synopse/mORMot2/releases
Synopse forum (Object Pascal SOA / ORM / OpenAPI)https://synopse.info/
TMS XData — Produktseitehttps://www.tmssoftware.com/site/xdata.asp
TMS XData — Dokumentationsübersichthttps://doc.tmssoftware.com/biz/xdata/guide/index.html
TMS XData — Leitfaden zur OpenAPI-Unterstützunghttps://doc.tmssoftware.com/biz/xdata/guide/openapi.html
OpenAPI Delphi Generator (ehemals XData-Importer)https://github.com/landgraf-dev/openapi-delphi-generator
Indy — Projekt-Homepagehttps://www.indyproject.org/
Indy — GitHub-Repository (IndySockets/Indy)https://github.com/IndySockets/Indy
Indy — Releases (zuletzt getaggt: 10.6.3.14)https://github.com/IndySockets/Indy/releases
Embarcadero docs — System.Net.HttpClient.THTTPClienthttps://docwiki.embarcadero.com/Libraries/Sydney/en/System.Net.HttpClient.THTTPClient
OpenAPI Initiative — Spezifikations-Repositoryhttps://github.com/OAI/OpenAPI-Specification
OpenAPI Specification — maßgebliche HTML-Darstellungenhttps://spec.openapis.org/
Bestes Preis-Leistungs-Verhältnis: All-AccessAlle eSeGeCe-Produkte, inklusive Premium-Support, ab €1,059 pro Jahr.
All-Access-Preise ansehen

sgcOpenAPI ausprobieren

Lade die kostenlose Trial-Edition herunter und generiere in Minuten dein erstes Pascal-SDK aus einer OpenAPI 3.x-Spezifikation.