JSONPath Quick Reference
| Expression | Meaning |
|---|---|
$ | Root of the document |
.key | Child key (dot notation) |
['key'] | Child key (bracket notation — use for keys with spaces) |
[0] | Array index (zero-based) |
[*] | All array elements |
[0,2] | Specific array indices |
[0:2] | Array slice (indices 0 and 1) |
.. | Recursive descent (search all descendants) |
[?(@.price < 10)] | Filter expression |
Common Examples
$.store.book[*].author— all book authors$..author— all author fields anywhere in the document$.store.book[0]— first book object$.store.book[?(@.price < 10)]— books cheaper than $10$.store.book[-1]— last book (JSONPath Plus extension)$.store.*— all values under store
Frequently Asked Questions
What is JSONPath?
JSONPath is a query language for JSON, analogous to XPath for XML. It lets you select nodes from a JSON document using path expressions. The standard is defined in RFC 9535 (published 2024). Common uses include extracting values from API responses and configuring monitoring rules.
What is the difference between JSONPath and JSONPath Plus?
JSONPath Plus is a JavaScript library that extends standard JSONPath with additional features: parent selectors (^), type selectors (@string(), @number()), and arithmetic in filter expressions. This tool uses JSONPath Plus, so all standard expressions work, plus extended syntax.
Why does my expression return an array?
JSONPath always returns an array of matches, even when only one value matches. This is by design — a path expression like $.name returns ["John"], not "John". If you need the scalar value, take the first element of the result array.
Is my JSON data sent to a server?
No. JSONPath evaluation happens entirely in your browser using the JSONPath Plus JavaScript library loaded from a CDN. Your JSON data never leaves your device.