JSON-Schema-Generator
Automatisch ein JSON-Schema aus Ihren Daten generieren
Anleitung
- Ihr JSON einfügen: Eine Beispiel-API-Antwort oder ein Config-Objekt in die Eingabe legen.
- Generieren: Das Tool durchläuft die Struktur und leitet für jeden Knoten ein Schema ab.
- Ausgabe prüfen: Erkannte Typen, erforderliche Felder und Enum-Kandidaten prüfen.
- Schema kopieren: Mit Ajv, Pythons jsonschema oder Ihrer Doku-Pipeline verwenden.
Funktionen
- Erzeugt Draft-07-Ausgabe mit $schema-Deklaration
- Unterscheidet Ganzzahl von Zahl und erkennt null-Werte
- Rekurriert durch verschachtelte Objekte und Arrays beliebiger Tiefe
- Markiert Felder als erforderlich, wenn sie in jedem Array-Element erscheinen
- Schlägt Enums für Felder mit einer kleinen Menge wiederholter Werte vor
Was ist JSON Schema?
JSON Schema ist ein Vokabular zur Beschreibung, wie ein JSON-Dokument aussehen darf. Ein Schema kann deklarieren, dass user.name ein String sein muss, dass user.age eine Ganzzahl sein muss und dass beide erforderlich sind. Validatoren wie Ajv (JavaScript) oder jsonschema (Python) können eingehende Payloads dann gegen diesen Vertrag prüfen und fehlerhafte Daten ablehnen, bevor sie Ihre Geschäftslogik erreichen.
Ein generiertes Schema ist ein Ausgangspunkt, nicht das fertige Produkt. Die Typableitung kann sagen, dass ein Feld in Ihrer Stichprobe eine Ganzzahl enthielt, aber sie kann nicht wissen, dass der Wert mindestens 0 sein sollte oder dass ein String einem E-Mail-Format entsprechen muss. Prüfen Sie die Ausgabe und ergänzen Sie Einschränkungen wie minimum, maxLength, pattern und format, die Ihre realen Regeln abbilden. Und geben Sie dem Tool eine reichhaltige Stichprobe: Felder, die in Ihrem JSON fehlen, können nicht im Schema erscheinen.
Anwendungsfälle
- API-Entwicklung: Request/Response-Validierung aus einer echten Payload starten.
- Vertragstest: Ein Basisschema erzeugen, dann beim Fortschreiten der API diffen.
- Dokumentation: Schemata für Developer-Portale und OpenAPI-Spezifikationen erzeugen.
- Datenpipelines: Config-Dateien gegen eine abgeleitete Struktur validieren.
Verwandte Tools
Häufig gestellte Fragen
Welche JSON-Schema-Version generiert dieses Tool?
Das Tool generiert Schemas, die mit JSON Schema Draft-07 ($schema: http://json-schema.org/draft-07/schema#) kompatibel sind. Draft-07 wird von Validierungsbibliotheken wie Ajv, jsonschema (Python) und den meisten API-Dokumentationstools weitgehend unterstützt.
Wie genau ist die Typinferenz?
Das Tool leitet Typen aus den tatsächlichen Werten in Ihrem JSON ab. Es unterscheidet zwischen Ganzzahlen und Fließkommazahlen, erkennt Nullwerte und analysiert rekursiv verschachtelte Objekte und Arrays. Für beste Ergebnisse geben Sie ein vollständiges Beispiel mit allen ausgefüllten Feldern an.
Kann ich Schemas für große JSON-Dateien generieren?
Ja, das Tool verarbeitet JSON in Ihrem Browser ohne Größenbeschränkungen. Allerdings können sehr große JSON-Strukturen (Zehntausende von Zeilen) zu einer langsameren Leistung führen. Für typische API-Antwortschemas ist die Leistung sofort.