Fügen Sie die Definition für Hinweise zur Erstellung ein. Der fokussierte Linter bestätigt keine vollständige Schemakonformität und testet keine laufende API.
Läuft lokal in deinem BrowserFügen Sie OpenAPI 3.0 oder 3.1 als JSON/YAML ein. Die Definition bleibt im Browser und wird weder abgerufen noch hochgeladen.
info, Pfade, Operationen und Response-Objekte.#/... references and missing path parameter declarations.Dies ist ein gezielter Authoring-Linter und kein Ersatz für eine vollständige Schemakonformitäts-Suite oder Vertragstests gegen eine aktive API.
Jeder Befund trägt einen Schweregrad und einen JSON Pointer auf das zugehörige Element, sodass sich ein Problem bis zur genauen Stelle der Definition zurückverfolgen lässt.
Ein fehlender openapi-Versionsstring, ein fehlendes info-Objekt und ein fehlendes paths-Objekt sind Fehler, und innerhalb von info sind title und version Pflicht. Ein Pfadschlüssel, der nicht mit / beginnt, ist ein Fehler, ebenso eine Operation mit leerem responses-Objekt, denn Nutzer der API brauchen mindestens einen Statuscode oder default.
Eine Pfadvorlage wie /orders/{id} muss {id} mit in: path und required: true deklarieren, da ein Client den Aufruf sonst nicht bilden kann. Referenzen der Form #/components/... werden aufgelöst; eine, die ins Leere führt, wird als Fehler an ihrem eigenen Pointer gemeldet.
Eine Operation ohne operationId ist eine Warnung, weil generierte Clients daraus einen Methodennamen ableiten. Ebenfalls Warnungen sind ein requestBody ohne content-Map, eine Referenz auf eine andere Datei oder URL und ein Dokument mit swagger: "2.0". Eine Definition ohne servers-Array ist ein Hinweis: Nutzer verwenden die OpenAPI-Standard-URL.
Ein vorhandener Versionsstring, der nicht 3.x ist, etwa "3" oder "4.0.0", wird als Warnung und nicht als Fehler gemeldet, sodass eine fast korrekte Definition trotzdem einen vollständigen Bericht erzeugt.
Das Zeichen ~1 in einem Pointer steht für einen Schrägstrich innerhalb eines Pfades, /paths/~1orders~1{id}/get ist also GET /orders/{id}. Alle Befunde eines Durchlaufs stehen beieinander, ein Dokument mit mehreren Problemen muss also nicht wiederholt geprüft werden.
webhooks und components.pathItems sind in OpenAPI 3.1 zulässig und werden nicht als Operationen gezählt. Ein leeres paths-Objekt ist gültig und wird akzeptiert.
Geprüft werden nur die Struktur und lokale Referenzen. Sicherheitsschemata, Tag-Konventionen, Namensstil und die Frage, ob der API-Entwurf sinnvoll ist, gehören nicht dazu, und es wird kein laufender Server abgefragt. Zwei Operationen mit derselben operationId werden nicht gemeldet.
Innerhalb von Beispieldaten — der Inhalt von example, der Wert eines examples-Eintrags, ein enum oder ein const — gilt der Schlüssel $ref als Datum und nicht als Referenz; eine Nutzlast, die ihn zufällig enthält, erzeugt also keinen falschen Fehler.