Validateur et générateur JSON Schema

Validez du JSON avec des schémas draft 2020-12 ou draft-07, ou générez un schéma à partir d’échantillons.

Fonctionne en local · aucun envoi
JSON Schema
JSON data

Ce qu’il fait

Valider vérifie un document JSON par rapport à un JSON Schema pendant la saisie, avec Ajv 8, un validateur JSON Schema très répandu. Générer le schéma fait l’inverse : collez un échantillon JSON et obtenez un schéma de départ à affiner.

Fonctionnalités

  • Draft 2020-12 et draft-07. Le draft est lu dans $schema ; en son absence, il est déduit des mots-clés utilisés ($defs, prefixItems ou definitions, items sous forme de tuple). Vous pouvez le forcer.
  • Chaque erreur pointe vers sa ligne. Les erreurs indiquent le chemin dans l’instance, le mot-clé en échec, un message lisible avec la valeur fautive et le chemin dans le schéma. Cliquez sur un chemin pour sélectionner la ligne dans le JSON ou dans le schéma.
  • D’abord les problèmes de schéma. Un schéma invalide est vérifié par rapport à son méta-schéma et signalé avec des chemins cliquables ; les mots-clés inconnus (fautes de frappe comme requird) et les $ref impossibles à résoudre sont signalés.
  • Les formats tels que date-time, date, time, email, uri, uuid, ipv4, ipv6, hostname et duration sont validés ; désactivez l’option pour traiter les formats comme de simples annotations.
  • Erreurs JSON strictes avec ligne et colonne : virgules finales, commentaires, guillemets simples, zéros non significatifs. Les clés en double sont également signalées.
  • Le générateur fusionne tous les éléments d’un tableau, marque comme required les propriétés présentes dans chaque échantillon, utilise des unions de types pour les valeurs nulles et mixtes et détecte les formats courants. En option : additionalProperties: false et examples.

Comment l’utiliser

Collez un schéma à gauche et votre JSON à droite, ou déposez des fichiers .json de l’un ou l’autre côté. En mode génération, collez un objet ou un tableau d’échantillons, puis utilisez Valider avec pour tester immédiatement le résultat.

Confidentialité

Tout s’exécute dans votre navigateur. Votre schéma et votre JSON ne sont jamais envoyés, et les URL de $ref externes ne sont pas récupérées. Les dernières saisies sont conservées dans le stockage local de votre navigateur.