GitHubs Rest-API wird zugänglicher: Open-API-Description ist jetzt Open Source

Bild: Casimiro PT/Shutterstock
Das Rest-API der Versionierungsplattform gibt es schon seit 2008, erstmalig veröffentlicht wurde das Application-Programming-Interface nur einen Monat nach dem Launch von github.com. Unter Entwicklern gilt sie als ein Musterbeispiel für gutes API-Design. Aus diesem Grund hat die Plattform eine Open-AI-Beschreibung der API jetzt – zwölf Jahre und drei Major-Revisionen später – unter einer Open-Source-Lizenz veröffentlicht.
Die Open-API-Spezifikation ist ein Programmiersprachen-agnostischer Standard zur Beschreibung von http-API, über den sowohl Menschen als auch Maschinen die Möglichkeiten einer API erkunden können, ohne zuerst die Doku lesen oder die Implementation nachvollziehen zu müssen. Die Spezifikation gilt als Industriestandard.
GitHubs Open-API-Description enthält Beschreibungen von über 600 Vorgängen der hauseigenen Rest-API. Wer die API visuell erkunden möchte, kann sich den Spaß in Form einer Postman-Collection downloaden. Programmatisch könnt ihr die Description nutzen, um Mock-Server, Test-Umgebungen und Bindings für Sprachen zu generieren, die nicht von den offiziellen GitHub-API-Clients unterstützt werden.
Die Description gibt es in zwei Formaten. Mit der gebündelten Version stehen euch verschiedene, wiederverwendbare Objekte zur Verfügung. Die innerhalb des sogenannten Components-Object definierten Objekte können über Properties außerhalb des Components-Objects referenziert werden, andernfalls haben sie keinerlei Effekt auf die API. Wer Tooling verwendet, das solche inline Referenzen nicht unterstützt, kann auf eine dereferenzierte Version zurückgreifen.
Momentan befindet sich die Description in der Beta-Phase – eine zwölf Jahre alte API zu beschreiben, sei keine einfache Aufgabe, schreiben die Autoren des zugehörigen Blogposts. Erstellt wurde die Description über die Verwendung einer Mischung aus JSON-Schemata, dokumentierter Beispiele und Contract-Testing. Bei GitHub wird im Moment aktiv daran entwickelt, in Zukunft soll das Projekt zentraler Bestandteil der GitHub-Developer-Experience werden – sowohl in- als auch extern.
Für GitHub Enterprise Server sowie GitHub Private Instances sollen vierteljährlich Releases der Description verfügbar sein, häufigere Updates soll es über github.com geben, so der zugehörige Blogpost. Wer sich an dem Open-Source-Projekt beteiligen möchte, ist natürlich herzlich willkommen, alle Infos dazu findet ihr im Contribution-Guide der Description.
- GitHub erweitert den Funktionsumfang für kostenlose Profile
- Neuigkeiten aus der Arktis: GitHub vermeldet erfolgreiche Archivierung von Open-Source-Code
- Das sind die spannendsten Neuerungen der GitHub Satellite
Bitte beachte unsere Community-Richtlinien
Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.
Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.
Dein t3n-Team