JSON
Testeur JSONPath
Test d'expressions JSONPath sur des données JSON réelles — aperçu instantané des valeurs trouvées et de leurs chemins.
$ — racine · .key / ['key'] — propriété · .. — recherche récursive · [*] — tous les éléments · [0,1] — index · [0:2] — tranche · [?(@.price<10)] — filtre
—
JSONPath lets you reach into nested JSON values the way XPath does for XML — a compact path string like $.users[0].email instead of manually walking the structure. This tool lets you test an expression against real data and see the result instantly.
How to use it
- Paste JSON data into one field and a JSONPath expression into the other.
- The result shows every matched value along with its exact path, even when there are several matches.
- Use [*] to iterate over every array element, or a filter like [?(@.price > 100)] for conditional selection.
Common uses
- Working out the right JSONPath expression to pull a specific field from an API response before pasting it into code.
- Testing data-transformation or message-routing rules that rely on JSONPath (for example, in AWS Step Functions or an API Gateway).
- Quickly locating a value in a large, deeply nested JSON document without scrolling through it manually.
Things to keep in mind
There's no single official JSONPath standard — the basic syntax (dots, brackets, *) is supported the same way everywhere, but filters and more advanced expressions differ between libraries.
Array indexing in JSONPath starts at zero, like in most programming languages — [0] means the first element.
Article sur cet outil: JSONPath : interroger des données JSON sans les parcourir à la main
Questions fréquentes
Qu'est-ce que JSONPath et à quoi ça sert ?
JSONPath est un langage de requête pour extraire des valeurs d'un document JSON, un peu comme XPath pour XML mais avec sa propre syntaxe. $ désigne la racine, .key ou ['key'] accède à une propriété, [*] sélectionne tous les éléments d'un tableau.
Puis-je tester du JSON sensible sans risque ?
Oui, l'évaluation des expressions se fait entièrement dans le navigateur, en JavaScript — rien n'est envoyé à un serveur.
Quelle est la différence entre .key et ..key ?
$.store.book cherche book directement sous store, tandis que $..book (recherche récursive) trouve book à n'importe quelle profondeur dans le document, ce qui peut renvoyer bien plus de résultats que prévu si la clé existe à plusieurs niveaux.
Comment accéder à une clé contenant un point ou une espace ?
Via la notation entre crochets et guillemets : $['user.name'] au lieu de $.user.name — sinon l'analyseur interprète le point comme un séparateur d'imbrication plutôt que comme une partie du nom de la clé.
Existe-t-il une norme officielle unique pour JSONPath ?
Non. La syntaxe de base (points, crochets, astérisque) est prise en charge de façon quasi identique partout, mais les filtres et expressions avancées diffèrent selon les bibliothèques — vérifiez la compatibilité pour les expressions complexes.