Collez le schéma attendu et la réponse pour obtenir un rapport copiable. Les règles prises en charge sont appliquées aux données capturées sans appeler l’API.
Fonctionne localement dans votre navigateurLes règles prises en charge incluent les règles locales $ref, type, propriétés de l'objet, champs obligatoires, tableaux, énumérations, const, formats, longueurs, modèles, plages et règles de composition courantes.
Il s'agit d'un assistant de contrat côté navigateur pour les rencontres et les réponses capturées. Passez en revue le vocabulaire avancé JSON Schema, les références à distance et le comportement d'intégration de production dans votre propre suite de tests API.
Collez le JSON Schema attendu et une réponse JSON capturée, puis cliquez sur « Valider la réponse » : la page liste chaque règle enfreinte avec son chemin JSON Pointer et affiche trois cartes de synthèse (résultat, nombre d’erreurs, type de réponse).
Le schéma et la réponse sont analysés dans la page elle-même. Aucune requête ne les envoie ailleurs, l’API interrogée n’est jamais appelée et le vérificateur applique un sous-ensemble documenté de JSON Schema, pas un validateur complet du standard.
Types (y compris integer), propriétés obligatoires, additionalProperties (false ou un schéma), enum et const comparés en profondeur, les formats email, uuid, date, date-time, uri, uri-reference, hostname et ipv4, ainsi que minLength/maxLength/pattern, minimum/maximum/exclusiveMinimum/exclusiveMaximum sous forme numérique et booléenne draft 4, multipleOf, minItems/maxItems/uniqueItems avec un seul schéma items, minProperties/maxProperties et allOf/anyOf/oneOf.
Les références locales sont résolues dans le même document : #, #/$defs/... et #/definitions/... . Les chemins sont des JSON Pointer : $ est la racine, /0 le premier élément d’un tableau, et / et ~ dans un nom sont échappés en ~1 et ~0. Les formats inconnus sont ignorés et le contrôle s’arrête à 60 niveaux d’imbrication avec un message explicite.
Un $ref qui ne commence pas par # est signalé comme non résolu au lieu d’être téléchargé : les schémas distants ne sont donc pas chargés. La forme tuple d’items (un tableau de schémas), if/then/else, dependencies, patternProperties, propertyNames et les mots-clés d’encodage de contenu sortent du sous-ensemble implémenté ; les mots-clés inconnus sont simplement ignorés.
La page n’envoie jamais la charge à un serveur et ne l’exécute jamais ; c’est une aide de relecture pour les fixtures et les réponses capturées, pas un test de conformité. Pour un comportement propre à un draft ou un verrouillage de production, utilisez un validateur complet dans votre propre suite.
Les trois cartes comptent les erreurs de schéma et affichent le type JSON de la réponse (object, array, string, number, integer, boolean, null). Les constats apparaissent dans l’ordre de détection ; quand rien n’échoue, la liste affiche une seule entrée conforme.
« Copier le rapport » copie des lignes comme [ERROR] $/id — Type attendu string, type reçu integer. à coller dans un ticket ou un message de commit. Rien n’est conservé : « Effacer » réinitialise la page et, au rechargement, l’atelier repart vide.