JSONPath Tester

  • Live results
  • Filters
  • Nothing uploaded

Query a document with a JSONPath expression and see every match as you type.

Input
Matches

Paste input on the left to see matches.

Everything runs in your browser — nothing is uploaded.

About jsonpath

JSONPath is an expression language for selecting values from a JSON document, much as XPath does for XML. An expression such as $.users[*].email returns every email in the users array. JSONic evaluates expressions as you type and reports the matches and the match count.

JSONPath is to JSON what XPath is to XML: a compact expression for selecting values out of a document. Paste your JSON, type an expression such as $.users[*].email, and see every match immediately. Evaluation runs in a background worker, so large documents stay responsive while you refine the expression.

Questions

What JSONPath syntax is supported?

The Goessner-style syntax: $ root, . and .. descent, [*] wildcards, [start:end] slices, and [?(@.field == 'value')] filter expressions.

What is the difference between $.a.b and $..b?

$.a.b selects b only directly under a. $..b performs a recursive descent and selects every b anywhere in the document, at any depth.

How do I filter an array by a value?

Use a filter expression: $.items[?(@.price > 100)] selects every item whose price exceeds 100. Filters can compare, and combine with && and ||.