Usa JSON Schema per documentare contratti API, validare payload JSON e generare dati mock realistici per test e demo.
Passo 1 – Parti da un esempio reale
- Incolla prima una risposta API reale, un payload di richiesta o un JSON di configurazione nel formatter.
- Mantieni un esempio JSON canonico per endpoint per evitare drift dello schema.
Passo 2 – Genera uno schema di base
- Usa lo Schema Generator per inferire tipi, campi richiesti e struttura annidata.
- Affina descrizioni, formati e vincoli (min/max, pattern) per l’uso in produzione.
Passo 3 – Valida JSON rispetto allo schema
- Incolla schema e payload reali nello Schema Validator.
- Correggi gli errori aggiornando il campione JSON (bug) o lo schema (cambi del contratto).
Passo 4 – Genera dati mock per i test
- Apri il Mock Generator per creare payload di esempio realistici che rispettino lo schema.
- Usa seed + batch size per rendere i dati di test riproducibili e scalabili.
Passo 5 – Condividi e riutilizza
- Salva gli schemi nel version control e collegali nella documentazione API.
- Genera codice tipizzato (TypeScript/Java/ecc.) da esempi JSON stabili.
Nota importante sulle funzionalità JSON Schema
- Alcuni schemi si basano su keyword avanzate come
$ref, anyOf, oneOf, e allOf. - I validator differiscono per supporto di draft e keyword; usa un validatore JSON Schema completo in CI per la conformità più rigorosa.
Esempio: JSON → JSON Schema (semplificato)
// JSON input
{
"id": 1,
"name": "Maeve Winters",
"active": true,
"tags": ["developer", "backend"]
}
// Generated schema (example)
{
"type": "object",
"properties": {
"id": { "type": "integer" },
"name": { "type": "string" },
"active": { "type": "boolean" },
"tags": {
"type": "array",
"items": { "type": "string" }
}
},
"required": ["id", "name", "active", "tags"]
}