Zum Inhalt springen

„OpenAPI“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Tippfehler korrigiert
Typos behoben
Zeile 1: Zeile 1:
Die '''OpenAPI Specification''' (vormals ''Swagger Specification'') ist ein Standard zur Beschreibung von [[Hypertext Transfer Protocol|HTTP]]-[[Programmierschnittstelle|Programmierschnittstellen (APIs)]].<ref>{{Internetquelle |url=https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md |titel=OpenAPI-Specification auf GitHub |abruf=2023-04-19}}</ref>
Die '''OpenAPI Specification''' (vormals ''Swagger Specification'') ist ein Standard zur Beschreibung von [[Hypertext Transfer Protocol|HTTP]]-[[Programmierschnittstelle|Programmierschnittstellen (APIs)]].<ref>{{Internetquelle |url=https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md |titel=OpenAPI-Specification auf GitHub |abruf=2023-04-19}}</ref>
Mit können ihr auch [[Representational State Transfer|REST]]-konforme schnittstellen definiert werden.<ref>{{Internetquelle |url=https://github.com/OAI/OpenAPI-Specification |titel=OpenAPI-Quellcode auf GitHub |abruf=2023-04-19}}</ref>
Mit ihr können auch [[Representational State Transfer|REST]]-konforme Schnittstellen definiert werden.<ref>{{Internetquelle |url=https://github.com/OAI/OpenAPI-Specification |titel=OpenAPI-Quellcode auf GitHub |abruf=2023-04-19}}</ref>
Gefördert wird die Spezifikation von der '''OpenAPI Initiative'''. Die Initiative verfolgt die Vision, im Sinne einer vernetzten Welt ein offenes und herstellerneutrales Beschreibungsformat für API-Dienste bereitzustellen.<ref>{{Internetquelle |url=https://www.openapis.org/about |titel=Über die OpenAPI Initiative |abruf=2019-12-30}}</ref> Das Projekt wird von der [[Linux Foundation]] unterstützt.<ref>{{Internetquelle |url=https://www.linuxfoundation.org/projects/ |titel=Projekte der Linux Foundation |abruf=2019-12-30}}</ref>
Gefördert wird die Spezifikation von der '''OpenAPI Initiative'''. Die Initiative verfolgt die Vision, im Sinne einer vernetzten Welt ein offenes und herstellerneutrales Beschreibungsformat für API-Dienste bereitzustellen.<ref>{{Internetquelle |url=https://www.openapis.org/about |titel=Über die OpenAPI Initiative |abruf=2019-12-30}}</ref> Das Projekt wird von der [[Linux Foundation]] unterstützt.<ref>{{Internetquelle |url=https://www.linuxfoundation.org/projects/ |titel=Projekte der Linux Foundation |abruf=2019-12-30}}</ref>



Version vom 21. April 2023, 11:20 Uhr

Die OpenAPI Specification (vormals Swagger Specification) ist ein Standard zur Beschreibung von HTTP-Programmierschnittstellen (APIs).[1] Mit ihr können auch REST-konforme Schnittstellen definiert werden.[2] Gefördert wird die Spezifikation von der OpenAPI Initiative. Die Initiative verfolgt die Vision, im Sinne einer vernetzten Welt ein offenes und herstellerneutrales Beschreibungsformat für API-Dienste bereitzustellen.[3] Das Projekt wird von der Linux Foundation unterstützt.[4]

OpenAPI ist für APIs mit synchroner Kommunikation ausgelegt.[5] Für asynchrone API-Kommunikation mit unterschiedlichen Transportprotokollen ist AsyncAPI als Beschreibungsstandard entstanden, der sich am OpenAPI-Konzept anlehnt.[5]

Geschichte

Die OpenAPI-Specification begann als Teil des Softwareprojekts Swagger, einem Open-Source-Framework für HTTP-Webservices. Im Jahr 2016 wurde sie ein eigenständiges Projekt, das von der OpenAPI Initiative verwaltet wird, zu deren Mitgliedern Unternehmen wie Atlassian, Google, IBM, Microsoft, PayPal und SAP zählen.[6]

Die aktuelle Version der OpenAPI-Specification ist 3.1.0.[7]

Werkzeuge

Swagger bietet eine Sammlung von Open-Source-Werkzeugen, um APIs zu entwickeln, die konform zur OpenAPI-Spezifikation sind:[8]

  • Swagger Editor unterstützt beim Erzeugen der API-Definition
  • Swagger Codegen generiert Server Stubs und Client SDKs
  • Swagger UI erzeugt Dokumentation

Daneben existieren auch kostenpflichtige Werkzeuge:

  • SwaggerHub für Kollaboration
  • SwaggerHub Enterprise für Unternehmen, verfügbar in der Cloud oder On-Premises
  • Swagger Inspector für Testzwecke
  • APITree wandelt OpenAPI-Spezifikationen 2.0 und 3.0 in menschenlesbare API-Dokumentationen um, die über einen HUB kostenlos in der Cloud verwaltet und geteilt werden können.

Auch für verschiedene Entwicklungsumgebungen existieren Erweiterungen zur Unterstützung von OpenAPI.[9][10]

Literatur

  • Stefan Sauterleute, Michael Heiß, Christopher Köster: Einstieg in OpenAPI v3: REST wird erwachsen. In: Entwickler Magazin. Nr. 1, 2018, S. ? (entwickler.de [abgerufen am 24. Februar 2020] Kostenlose Onlineversion).
  • Manuel Ottlik: REST-APIs dokumentieren nach OpenAPI-Standard. In: c’t. Nr. 5, 2020, S. 136–139 (heise.de [abgerufen am 22. Februar 2020]).

Beispiele:

Einzelnachweise

  1. OpenAPI-Specification auf GitHub. Abgerufen am 19. April 2023.
  2. OpenAPI-Quellcode auf GitHub. Abgerufen am 19. April 2023.
  3. Über die OpenAPI Initiative. Abgerufen am 30. Dezember 2019.
  4. Projekte der Linux Foundation. Abgerufen am 30. Dezember 2019.
  5. a b Thilo Frotscher: AsyncAPI: Asynchrone Kommunikation für IoT und Microservices meistern. In: Heise online. 16. Dezember 2022. Abgerufen am 18. Dezember 2022.
  6. Mitglieder der OpenAPI Initiative. Abgerufen am 30. Dezember 2019.
  7. Releases der OpenAPI-Specification. Abgerufen am 24. September 2020.
  8. OpenAPI Open-Source Werkzeuge. Abgerufen am 30. Dezember 2019.
  9. OpenAPI-Editor für Visual Studio Code. Abgerufen am 30. Dezember 2019.
  10. OpenAPI-Tools für Eclipse. Abgerufen am 30. Dezember 2019.