Validatore JSON Schema

Validatore JSON Schema

Valida dati JSON contro qualsiasi schema (Draft-07, 2019-09, 2020-12) istantaneamente nel browser. Gratuito, senza installazione, senza registrazione.

Aggiornato aprile 2026

Revisionato da Rafael Duarte

Shift + Enter per copiare · Shift + Del per svuotare
MODIFICABILE

Come validare un JSON con JSON Schema online

Dati a sinistra, schema a destra: il risultato si aggiorna mentre scrivi

1. Incolla dati e schema

Il documento JSON va nel riquadro di sinistra, lo JSON Schema in quello di destra.

2. Scegli la versione della specifica

Draft-07, 2019-09 o 2020-12: se lo schema dichiara $schema, il selettore si allinea da solo.

3. Leggi l'esito

Non serve un pulsante: dopo una breve pausa nella digitazione compare il risultato, verde se valido, rosso con l'elenco degli errori e il percorso di ciascuno.

Cosa fa questo validatore JSON Schema

Motore Ajv, tre versioni della specifica

Draft-07, 2019-09 e 2020-12

Per ogni versione viene usata l'istanza Ajv dedicata, quindi anche le parole chiave introdotte da 2020-12, come prefixItems, vengono riconosciute.

Tutti gli errori in una volta

La validazione non si ferma al primo problema: ogni violazione appare con il percorso nel documento (/utenti/1/email) e la regola non rispettata.

Formati pronti

Grazie ad ajv-formats, email, date, date-time, uri, uuid, ipv4 e altri vengono controllati senza scrivere espressioni regolari.

Formattazione con un clic

Il pulsante di formattazione reindenta dati e schema con 2 spazi, utile quando incolli JSON minificato.

Tempo di validazione

Ogni esito riporta i millisecondi impiegati per compilare lo schema e validare i dati.

Tutto nel browser

Schema e dati vengono analizzati localmente: niente upload, niente account, nessun limite di utilizzo.

Esempi di errori di validazione

Messaggi reali di Ajv per lo schema di un utente con `nome` ed `email` obbligatori

Percorso — messaggio
Cosa significa
`/` — must have required property 'nome'
Manca un campo elencato in `required`. `/` indica la radice del documento.
`/eta` — must be integer
Il valore è `"30"`, una stringa, mentre lo schema vuole un intero.
`/email` — must match format "email"
`mario.rossi@` non è un indirizzo email valido.
`/stato` — must be equal to one of the allowed values
`"chiuso"` non è tra i valori dell'`enum` (`attivo`, `sospeso`).
`/` — must NOT have additional properties
Con `additionalProperties: false` è presente un campo non previsto: il messaggio ne riporta il nome alla fine (qui `"citta"`).

Quando validare un JSON con uno schema

Contratti, configurazioni e dati in ingresso

Contratto di un'API

Verifica che una risposta reale rispetti lo schema concordato con il backend, prima di scrivere i test di integrazione.

File di configurazione

Controlla una configurazione JSON contro il suo schema prima del commit, invece di scoprire l'errore al deploy.

Dati in ingresso in una pipeline

Prova lo schema che scarterà i record malformati prima che arrivino nel database o in una coda.

Scrivere e correggere uno schema

Modifichi lo schema e vedi subito quali esempi passano e quali no, senza rilanciare script o test.

Imparare JSON Schema

Prova required, enum, oneOf o additionalProperties su un esempio e osserva come cambia l'esito.

Problemi frequenti con JSON Schema

Schemi in draft-04

Il selettore segue da solo il $schema dichiarato (draft-06 viene validato con il motore Draft-07), ma gli schemi draft-04 non sono supportati: aggiornali almeno a draft-06 prima di validare.

Parole chiave e formati sconosciuti

Le parole chiave non standard (per esempio example al posto di examples) e i format sconosciuti vengono ignorati senza errore: un refuso nel nome di una keyword quindi non viene segnalato e la regola semplicemente non si applica.

`$ref` verso un URL esterno

Lo strumento non scarica schemi remoti: un $ref a https://... dà l'errore "can't resolve reference". Usa riferimenti interni come #/definitions/... o #/$defs/....

Più righe d'errore per un solo campo

Con oneOf o anyOf Ajv segnala il fallimento di ogni ramo, più quello della combinazione: un unico valore sbagliato può produrre tre righe con lo stesso percorso.

Perché validare qui

La validazione automatica mentre scrivi rende rapido il ciclo prova-correggi: cambi una regola dello schema e vedi subito l'effetto, con il percorso esatto di ogni errore invece di cercare il campo a occhio.

Il motore è Ajv, la stessa libreria usata in molti progetti Node.js, quindi l'esito corrisponde a quello che otterrai nel tuo codice con le stesse impostazioni. Tutto gira nel browser: puoi incollare anche dati di produzione senza inviarli a terzi.

Domande frequenti

Incolla il documento nel riquadro dei dati e lo schema nel riquadro JSON Schema, poi scegli la versione corrispondente al tuo $schema. Dopo una pausa di circa 300 ms il validatore compila lo schema con Ajv e mostra l'esito, senza alcun pulsante da premere.

Riferimenti

Strumenti correlati