Tester JSONPath Online
Incolla un documento JSON, scrivi un'espressione JSONPath e vedi subito i valori trovati e i loro percorsi normalizzati. Il valutatore supporta notazione con punto e parentesi, indici di array anche negativi, jolly, unioni, slice come [1:3] o [::2], discesa ricorsiva con .. ed espressioni filtro come [?(@.price < 10 && @.category == 'fiction')], con controlli di esistenza, negazione e regex.
Verificato da Vincenzo Manto, Fondatore e Lead Developer · Ultimo aggiornamento 30 settembre 2026
Come funziona
- 1
Incolla il tuo JSON nel pannello di sinistra.
- 2
Scrivi un'espressione JSONPath che inizia con $ oppure clicca uno degli esempi.
- 3
Leggi i valori trovati e i loro percorsi, poi copia il risultato.
Esempio
$.store.book[?(@.price < 10)].title
{ "store": { "book": [
{ "title": "A", "price": 8.95 },
{ "title": "B", "price": 12.99 },
{ "title": "C", "price": 8.99 }
] } }["A", "C"]A cosa serve JSONPath
JSONPath è un linguaggio di query per JSON, standardizzato come RFC 9535 e diffuso in strumenti di test delle API, Kubernetes, elaboratori di log e automazione dei flussi. Permette di estrarre un singolo campo o una lista filtrata di oggetti da una risposta grande senza scrivere codice, ed è ideale per asserzioni, regole di estrazione e rapida esplorazione dei dati.
Le espressioni filtro in pratica
Un filtro come [?(@.price < 10)] visita ogni figlio dell'array o dell'oggetto e tiene quelli per cui l'espressione è vera, dove @ è il figlio corrente. Combina le condizioni con && e ||, controlla che un campo esista con [?(@.isbn)], nega con ! e cerca testo con =~. Le implementazioni differiscono leggermente, quindi verifica sempre il comportamento sul motore che userai.
Domande frequenti
Quale sintassi JSONPath è supportata?
Accesso ai figli con punto e parentesi, indici di array (anche negativi), jolly, unioni, slice, discesa ricorsiva (..) ed espressioni filtro con confronti, &&, ||, ! e =~ per le espressioni regolari. Le espressioni script oltre ai filtri non vengono valutate.
Nei filtri viene eseguito JavaScript arbitrario?
No. I filtri sono analizzati da un piccolo valutatore interno, non da eval, quindi incollare una query o un documento non attendibili è sicuro.
Cosa succede se nulla corrisponde?
Ottieni un risultato vuoto con zero corrispondenze. Un problema di sintassi nell'espressione mostra invece un messaggio di errore.
In cosa differisce da JMESPath?
JSONPath indirizza i nodi con una sintassi a percorso che parte da $, simile a XPath. JMESPath usa un altro linguaggio di espressioni con pipe e funzioni. Questo strumento valuta solo JSONPath.