API-Dokumentationen veralten, sobald jemand eine Spezifikation ändert und die Referenz nicht neu generiert. Behandeln Sie die Dokumentation deshalb wie ein Build-Artefakt: Ein reproduzierbarer CLI-Befehl erzeugt sie lokal und in CI bei jedem Merge oder Push.
CLI-Workflows sind skriptfähig, erzeugen überprüfbare Diffs und lassen sich von CI-Runnern oder Agenten ausführen. Kein manueller Export im Browser und kein vergessener Klick auf „Exportieren“.
Dieser Leitfaden zeigt drei praktische Wege:
- Eine OpenAPI-Datei als eigenständige HTML-Referenz erzeugen.
- Eine OpenAPI-Datei nach Markdown konvertieren.
- Mit der Apidog CLI aus einem Live-Projekt exportieren und in CI automatisieren.
Für Hintergrund zu verfügbaren Optionen siehe auch die Übersicht der Top 10 Tools für die REST-API-Dokumentation sowie der kostenlosen API-Dokumentationstools.
Voraussetzungen
Sie benötigen eine API-Beschreibung, typischerweise als:
openapi.yamlopenapi.json
Die folgenden Tools arbeiten mit OpenAPI 3.x. Redocly unterstützt außerdem Swagger 2.0.
HTML-Referenz mit Redocly CLI erstellen
Die Redocly CLI erzeugt aus einer OpenAPI-Beschreibung eine eigenständige HTML-Datei. Das Ergebnis enthält Styles, Skripte und API-Referenz in einer Datei und kann direkt statisch gehostet werden.
1. CLI installieren
Global installieren:
npm install -g @redocly/cli
Oder ohne globale Installation mit npx ausführen:
npx @redocly/cli build-docs openapi.yaml
2. HTML generieren
redocly build-docs openapi.yaml
Standardmäßig entsteht im aktuellen Verzeichnis:
redoc-static.html
3. Zielpfad festlegen
Für eine typische statische Dokumentationsseite:
redocly build-docs openapi.yaml --output docs/index.html
Prüfen Sie das Ergebnis lokal:
open docs/index.html
Unter Linux können Sie alternativ einen einfachen lokalen Server starten:
python3 -m http.server --directory docs 8080
Öffnen Sie anschließend http://localhost:8080.
Wann Redocly CLI sinnvoll ist: Sie benötigen schnell eine portable, eigenständige API-Referenz als HTML.
Einschränkung: build-docs erzeugt eine Referenzseite. Umfangreichere Inhalte wie Tutorials, Migrationsleitfäden oder Einstiegsseiten müssen Sie separat verwalten.
Markdown mit Widdershins generieren
Wenn Ihre Dokumentation in einem Repository, einem Static-Site-Generator oder einem Markdown-basierten Wiki lebt, ist Markdown oft das passendere Ausgabeformat.
Widdershins konvertiert OpenAPI-, Swagger- und AsyncAPI-Definitionen in Slate-kompatibles Markdown.
1. Widdershins installieren
npm install -g widdershins
2. OpenAPI nach Markdown konvertieren
widdershins openapi.yaml -o api.md
Danach können Sie die Datei direkt in Ihr Repository übernehmen:
mv api.md docs/api-reference.md
3. Ausgabe in eine Pipeline leiten
Ohne -o schreibt Widdershins nach stdout. Das eignet sich für Shell-Pipelines:
widdershins openapi.yaml > docs/api-reference.md
4. Sprach-Tabs für Beispiele konfigurieren
widdershins openapi.yaml \
--language_tabs 'shell:cURL' 'python:Python' \
-o docs/api-reference.md
Wann Widdershins sinnvoll ist: Ihre bestehende Dokumentationspipeline basiert auf Markdown.
Für einen umfassenderen Workflow siehe den Leitfaden zu einem API-Dokumentationsgenerator mit Markdown-Export.
Wichtig: Redocly und Widdershins lesen nur die lokale Datei. Wenn openapi.yaml nicht aktuell ist, generieren Sie zuverlässig eine veraltete Dokumentation.
Aus einem Live-Projekt mit der Apidog CLI exportieren
Wenn Ihr Team API-Endpunkte, Schemas und Dokumentationsinhalte in einem zentralen Projekt pflegt, ist ein Export aus diesem Projekt robuster als ein Export von einer lokalen Datei.
Die kostenlose Stufe von Apidog und apidog-cli ermöglichen einen CLI-basierten Workflow: Das Team bearbeitet ein Projekt, die CLI exportiert daraus Referenz und Dokumentation.
1. Apidog CLI installieren
npm install -g apidog-cli
Falls Sie die lokale Umgebung erst einrichten müssen, hilft der Apidog CLI-Installationsleitfaden bei Node-Versionen und PATH-Konfiguration.
2. Mit einem Zugriffstoken anmelden
apidog login --with-token <TOKEN>
Das Token wird lokal gespeichert. In CI müssen Sie den Login jedoch in jedem frischen Runner erneut ausführen.
3. Verfügbare Optionen prüfen
Bevor Sie einen Befehl automatisieren, prüfen Sie die Flags Ihrer installierten Version:
apidog --help
apidog export --help
Eine bestehende Spezifikation importieren
Wenn Ihre API aktuell als OpenAPI-Datei vorliegt, importieren Sie sie zuerst in ein Projekt:
apidog import --help
apidog import --project <projectId> --format openapi --file ./openapi.json
Je nach Eingabe können Sie auch andere unterstützte Formate importieren, darunter:
- OpenAPI 3.x
- Swagger 2.0
- Postman
- Apidog-Export
Nach dem Import dient das Projekt als zentrale Quelle für spätere Exporte.
Menschenlesbare Dokumentation exportieren
Mit apidog export können Sie unter anderem OpenAPI, HTML, Markdown oder Postman exportieren.
Markdown exportieren
apidog export --project <projectId> \
--format markdown \
--output ./docs/api-docs.md
Prüfen Sie anschließend den Git-Diff:
git diff -- docs/api-docs.md
HTML exportieren
apidog export --project <projectId> \
--format html \
--output ./docs/api-docs.html
OpenAPI exportieren
Wenn nachgelagerte Tools eine portable Spezifikation benötigen:
apidog export --project <projectId> \
--format openapi \
--output ./openapi.json
Wenn ein Projekt mehrere Services enthält, prüfen Sie die verfügbaren Umfangs- und ID-Flags in Ihrer Version:
apidog export --help
Damit können Sie beispielsweise pro Service eine eigene Dokumentationsdatei erzeugen.
Schriftliche Anleitungen über die CLI verwalten
Eine API-Referenz beschreibt Endpunkte und Schemas. Vollständige Entwicklerdokumentation benötigt zusätzlich Inhalte wie:
- Erste-Schritte-Anleitungen
- Authentifizierungs-Workflows
- Migrationshinweise
- Fehlerbehandlung
- Codebeispiele
In Apidog liegen solche Inhalte als Markdown-Dokumente im Dokumentenbaum des Projekts. Die CLI verwaltet sie über die Befehlsgruppe doc.
Starten Sie mit der Hilfe und listen Sie vorhandene Dokumente auf:
apidog doc --help
apidog doc list --project <projectId>
Die CLI liefert JSON-Ergebnisse. Folgen Sie bei automatisierten Workflows den zurückgegebenen agentHints.nextSteps.
Wenn ein Befehl eine JSON-Nutzlast erwartet, kann die CLI das erwartete Schema ausgeben und Eingabedateien vor dem Senden validieren. Prüfen Sie dafür:
apidog cli-schema --help
So erkennen Sie fehlende Felder lokal, bevor ein CI-Job oder API-Aufruf fehlschlägt.
Dokumentationsseite veröffentlichen
Neben einzelnen Markdown-Dokumenten können Sie auch veröffentlichte Dokumentationsseiten und teilbare Links über die CLI verwalten.
Prüfen Sie zunächst die verfügbaren Befehle:
apidog docs-site --help
apidog shared-doc --help
Die Begriffe haben unterschiedliche Bedeutungen:
| Befehl | Zweck |
|---|---|
doc |
Markdown-Dokument im API-Dokumentenbaum |
docs-site |
Gehostete öffentliche Dokumentationsseite |
shared-doc |
Teilbarer Dokumentationslink |
Verwenden Sie docs-site, wenn Sie eine öffentliche Dokumentationsseite per Terminal konfigurieren oder aktualisieren möchten. Verwenden Sie shared-doc, wenn Sie gezielt einen Link für Partner oder interne Stakeholder bereitstellen möchten.
Der entscheidende Vorteil: Veröffentlichung wird ein reproduzierbarer Deployment-Schritt. Nach einer API-Änderung aktualisieren oder importieren Sie das Projekt und führen anschließend den passenden Veröffentlichungsbefehl erneut aus.
Dokumentation in GitHub Actions automatisieren
Sobald ein Export lokal funktioniert, gehört er in CI. Das folgende Beispiel generiert die Markdown-Referenz bei jedem Workflow-Lauf neu:
- name: API-Dokumente neu generieren
run: |
npm install -g apidog-cli
apidog login --with-token ${{ secrets.APIDOG_TOKEN }}
apidog export --project ${{ secrets.APIDOG_PROJECT }} --format markdown --output ./docs/api-docs.md
Ergänzen Sie anschließend einen Schritt, der Änderungen committet oder als Artefakt bereitstellt, abhängig von Ihrer Repository-Strategie.
Für Redocly oder Widdershins bleibt die Struktur identisch. Sie ersetzen nur den Export-Befehl:
- name: HTML-Referenz mit Redocly erzeugen
run: |
npm install -g @redocly/cli
redocly build-docs openapi.yaml --output docs/index.html
Oder für Markdown mit Widdershins:
- name: Markdown-Referenz mit Widdershins erzeugen
run: |
npm install -g widdershins
widdershins openapi.yaml -o docs/api-reference.md
Eine vollständige Befehlsübersicht finden Sie im vollständigen Leitfaden zur Apidog CLI.
Häufige Fallstricke
Falsche oder fehlende Projekt-ID
Jeder Apidog-Aufruf für export, doc oder docs-site benötigt:
--project <projectId>
Verwenden Sie die technische Projekt-ID aus den Projekteinstellungen, nicht den lesbaren Projektnamen.
Token fehlt in CI
apidog login speichert das Token auf der Maschine, auf der der Befehl läuft. Ein CI-Runner startet normalerweise ohne gespeicherte Zugangsdaten.
Führen Sie deshalb im gleichen Job aus:
apidog login --with-token ${{ secrets.APIDOG_TOKEN }}
Speichern Sie Tokens ausschließlich als CI-Secret und niemals direkt in der Workflow-Datei.
Veraltete OpenAPI-Datei
Redocly und Widdershins generieren nur so aktuelle Dokumentation wie die Eingabedatei:
redocly build-docs openapi.yaml
Wenn openapi.yaml veraltet ist, ist auch die erzeugte Referenz veraltet. Stellen Sie deshalb sicher, dass die Datei vor dem Generieren aktualisiert wird, oder exportieren Sie aus einem zentral gepflegten Projekt.
Flags raten statt --help verwenden
Die Flags für export, doc, docs-site und shared-doc können je nach CLI-Version abweichen.
Prüfen Sie vor der Automatisierung:
apidog <command> --help
Das dauert wenige Sekunden und verhindert fehlgeschlagene Builds durch nicht vorhandene oder geänderte Optionen.
Zusammenfassung
Wählen Sie das Ausgabeformat passend zu Ihrer Pipeline:
- Redocly CLI für eine eigenständige HTML-Referenz.
- Widdershins für Markdown in Repository- oder Static-Site-Workflows.
- Apidog CLI für Exporte aus einem zentralen Live-Projekt sowie für Referenz, schriftliche Anleitungen und veröffentlichte Dokumentation.
Der wichtigste Schritt ist nicht das konkrete Tool, sondern die Automatisierung: Machen Sie den Dokumentationsexport zu einem CI-Schritt. Dann wird die Dokumentation bei Änderungen reproduzierbar neu erstellt, statt manuell nachgezogen werden zu müssen.
Laden Sie Apidog herunter, um die CLI auszuprobieren, oder erfahren Sie mehr darüber, wie Apidog in einen API-First-Workflow passt.
Top comments (0)