Query JSON documents with JSONPath expressions and inspect matched values and paths.
Loading tool
About JSONPath Playground
Paste JSON and write a JSONPath expression to see every match, its normalized path and its type. Wildcards, recursive descent (..), array slices, unions and filter expressions like [?(@.price < 10)] are supported, and filters run in a sandboxed evaluator rather than eval. Results can be shown as values, paths or both, and clickable examples demonstrate common patterns.
Common uses
- Test a JSONPath expression before using it in code, an API gateway or a test assertion
- Extract specific fields from a large API response
- Find the exact path to a deeply nested value
- Learn JSONPath filter and slice syntax with examples
FAQ
- What does $ mean in JSONPath?
- $ is the root of the document, and every expression starts with it. For example, $.store.book[0] selects the first item of the book array under store.
- What is the difference between . and .. in JSONPath?
- A single dot selects a direct child, while .. (recursive descent) searches all levels below. $..author finds every author key anywhere in the document.
- How do I filter array items by a condition?
- Use a filter expression with @ for the current item, for example $..book[?(@.price < 10)] returns books with a price below 10, and [?(@.isbn)] returns items that have an isbn key.