JSONPath is a query language used to extract data from JSON documents. It works similarly to XPath for XML and allows developers to filter, search, and retrieve values from complex JSON structures.
This guide covers practical JSONPath examples you can use when working with APIs, databases, and application data.
Basic JSON example
We’ll use the following JSON object for the examples below:
{
"store": {
"book": [
{ "category": "reference", "author": "Nigel Rees", "price": 8.95 },
{ "category": "fiction", "author": "Evelyn Waugh", "price": 12.99 },
{ "category": "fiction", "author": "J. R. R. Tolkien", "price": 22.99 }
],
"bicycle": { "color": "red", "price": 19.95 }
}
}
Select all books
$.store.book[*]
This returns every item from the book array.
Select all authors
$.store.book[*].author
Extracts the author field from each book.
Select the first book
$.store.book[0]
Returns the first object from the array.
Filter books by price
$.store.book[?(@.price < 10)]
Returns all books cheaper than 10.
Get bicycle color
$.store.bicycle.color
Returns the color property of the bicycle object.
Find all prices
$..price
Recursively searches for all price fields in the JSON structure.
Why JSONPath is useful
- Extract data from API responses
- Filter JSON datasets
- Debug application data
- Validate JSON structures
- Automate data processing workflows
Test JSONPath expressions online
You can validate and test JSONPath queries instantly using our tool:
The tool runs directly in your browser and highlights matching results in real time.
Common mistakes in JSONPath
- Incorrect path syntax
- Missing brackets
- Using XPath rules instead of JSONPath
- Wrong filtering expressions
Frequently asked questions
Is JSONPath standardized?
JSONPath has multiple implementations. While widely used, not all libraries support the exact same syntax.
What’s the difference between JSONPath and XPath?
XPath is used for XML documents, while JSONPath is designed specifically for JSON structures.
Can JSONPath modify data?
No. JSONPath is used to query and extract data, not to edit or update JSON documents.
Where is JSONPath used?
It is commonly used in APIs, testing tools, automation scripts, and data processing pipelines.