JSON Path Tester

Test JSONPath expressions and extract data from JSON documents with real-time results. 100% free and private - all processing happens in your browser.

Powerful Queries

Extract data using JSONPath expressions with support for wildcards and recursive descent.

100% Private

Your JSON data never leaves your computer.

Real-time Testing

Test your JSONPath expressions instantly with clear error messages and result counts.

JSONPath Syntax Guide

$

Root element - represents the entire JSON document

.property

Dot notation - access a property by name (e.g., $.users.name)

['property']

Bracket notation - access properties with special characters

[0]

Array index - access array element by index (e.g., $.users[0])

[*]

Wildcard - select all elements in an array

..property

Recursive descent - search for property at any depth in the structure

Frequently Asked Questions

What is JSONPath?

JSONPath is a query language for JSON, similar to XPath for XML. It allows you to extract specific data from JSON documents using path expressions like $.users[0].name.

How do I use the JSON Path Tester?

Paste your JSON data in the first textarea, enter a JSONPath expression (like $.users[*] or $..name), and click 'Execute Query' to see the results. You can also click on example paths to try them out.

What JSONPath syntax is supported?

This tool supports root ($), dot notation (.property), bracket notation (['property']), array indices ([0]), wildcards ([*]), and recursive descent (..property) operators.

How do I access nested properties?

Use dot notation to chain properties together. For example, $.users[0].address.city accesses the city property nested inside the address object of the first user.

What does the [*] wildcard do?

The [*] wildcard selects all elements in an array. For example, $.users[*] returns the entire users array, allowing you to work with all user objects at once.

What is recursive descent (..)?

The .. operator searches recursively through the entire JSON structure. For example, $..name finds all properties named 'name' at any depth in the document.