OpenAPI zu JSON Schemakonverter – kostenlos online

Extrahieren Sie die components.schemas aus OpenAPI-Dokumenten der Versionen 3.0 bis 3.2 als JSON Schema. Standard ist Draft 2020-12 mit $defs, optional Draft-07 mit definitions. Browserlokal, kein Upload.

Laden…
OpenAPI bis JSON Schemadokumentation
Extrahieren Sie OpenAPI Components.schemas in JSON Schema (2020-12 oder Draft-07).

Hinweise des Entwicklers

OpenAPI 3.0-Schemata konvertieren über @openapi-contrib/openapi-schema-to-json-schema. OpenAPI 3.1 / 3.2 verwenden einen Best-Effort-Streifen von Nur-OAS-Schlüsselwörtern. Standardausgabe: $schema 2020-12 + $defs; optionale Draft-07-Neuzuordnung ($schema + definitionen + #/definitions refs). Live-Konvertierung bei Paste/Sample; explizites Konvertieren (⌘↵); Monaco JSON/YAML-Eingabe + Shiki JSON-Ausgabe. Leere Components.schemas → Fehler. Externe $ref abgelehnt. Maximale Eingabe 512 KiB.

Optionen

Zielentwurf
2020-12 (Standard) gibt $schema und $defs aus. Draft-07 stellt auf die $schema-URI von Draft-07 um, verwendet definitions statt $defs und schreibt Referenzen auf #/definitions/… um. Das ist nur eine strukturelle Umbenennung: Schlüsselwörter, die es nur in 2020-12 gibt, werden nicht umgeschrieben.

Anwendungsfälle

OpenAPI-Modelle als eigenständiges JSON-Schema wiederverwenden. Extrahierte Schemata in den JSON Schema Validator einspeisen. Schemaformen außerhalb eines vollständigen OpenAPI-Dokuments unterscheiden.

Beispiele

OpenAPI YAML → JSON Schema $defs

Vor

openapi: "3.0.3" info: title: Pets version: 1.0.0 paths: {} components: schemas: Foo: type: object properties: id: type: string Bar: type: object properties: name: type: string

Nach

{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$defs": { "Foo": { ... }, "Bar": { ... } } }

Leere Schemata wurden abgelehnt

Vor

openapi: "3.0.3" info: title: t version: "1" paths: {} components: schemas: {}

Nach

Fehler: leere Components.schemas

OpenAPI bis JSON Schema-FAQ

Häufige Fragen

Ist die 3.1-Konvertierung identisch mit Draft-07?

Nein. Die Konvertierung von OpenAPI 3.1/3.2 entfernt nur Schlüsselwörter und deckt nicht alles ab. Die Standardausgabe ist Draft 2020-12 ($defs). Wählen Sie Draft-07 für eine strukturelle Umstellung (definitions und das Draft-07-$schema), die nicht alle Schlüsselwörter umschreibt. Siehe Optionen.

Was ist, wenn kein Root-Schema vorhanden ist?

Alle Schemas landen unter $defs (oder definitions, wenn Draft-07 ausgewählt ist) ohne erfundene Stammtypen/Eigenschaften. Ein Schema mit dem Namen Root erhält außerdem einen $ref der obersten Ebene für diesen Eintrag.

Verwandte Tools?

Konvertieren Sie umgekehrt mit JSON Schema in OpenAPI oder validieren Sie die OpenAPI-Quelle mit Validate OpenAPI.

OpenAPI Tools zum Formatieren, Validieren und Flusen Ihrer Spezifikationen.