JSONPath Tester
JSONPath Tester
Paste input, adjust settings if needed, then run.
Query JSON with practical advanced JSONPath features: dot/bracket selectors, wildcard, recursive descent (`..`), slices, and basic filters.
Result size
0chars
Run to update output.
Output summary
0 chars
More actions
File input
Choose a file
Click, drop, or paste from clipboard.
Settings
Status
Waiting for output.
Health 55/100
JSONPath policy
Implements an advanced practical subset optimized for fast local evaluation and predictable error feedback.
Supported selectors
LOW riskSupports dot notation, bracket notation, array indexes (including negative), wildcard (*), recursive descent (`..key`, `..*`), slices (`[start:end:step]`), and basic filters (`[?(@.key>=value)]`).
Filter scope
MEDIUM riskFilters are intentionally limited to simple key comparisons on object-array items using operators ==, !=, >, >=, <, <= and primitive literals.
Non-goals for predictability
HIGH riskScript predicates, function calls, and full JSONPath dialect extensions are not supported in this local evaluator.
Result sizeLive
0chars
Run to update output.
Copy result = output only. Copy report = output + settings.
Privacy note
Flow
- Parse the JSON document and validate structure.
- Execute the supported JSONPath subset (dot/bracket/index/wildcard) over document J.
- Return one value for single matches or an array for multi-match wildcard results, with clear empty-result and syntax-error states.
Example
Worked example: extract all prices
- 1 Input JSON contains an items array with price fields.
- 2 Query: $.items[*].price
- 3 Result returns every matched numeric price in order.
You can confirm query behavior before coding it in production logic.
How
- Paste JSON document in the source panel.
- Enter a JSONPath query (for example: $.orders[*].id) and run evaluation.
- Review matched values and copy result set for downstream use.
Cases
- Build extraction rules for automation pipelines.
- Debug failing JSONPath selectors in tests.
- Validate monitoring filters against real sample payloads.
Avoid
- Using unsupported JSONPath features such as filters, slices, or recursive descent in this subset-focused tool.
- Assuming empty results always mean syntax errors.
- Testing query logic on unrealistically small sample payloads.
FAQ
Does jsonpath tester send my input to a server?
No. JSONPath Tester handles the input in your browser whenever possible, so routine conversions, previews, and copy actions stay on your device instead of being sent to Calctrove servers.
What if no nodes match my JSONPath query?
You get an empty result state, which is different from parser or syntax errors.
Can I test nested array selectors here?
Yes. Use selectors like $.a[*].b[*].c and verify the match list directly.
Does this support the full JSONPath specification?
No. It targets a practical subset: dot keys, bracket keys/indexes, and wildcard * selectors.
Switch
Switch12
No match.