JSONPath Evaluator and Finder
JSON Path Finder is a JSONPath evaluator and path finder that helps you navigate, query, and extract data from any JSON document. Click a node in the interactive tree to get its exact JSONPath, or run a JSONPath expression to pull out the matching values. It is built for developers working with APIs, QA engineers testing endpoints, and anyone exploring unfamiliar JSON.
The tool works in two complementary modes. Find Path turns a visual tree into instant path expressions, while Evaluate runs JSONPath queries against your data and shows the results in real time. A built-in cheat sheet, notation toggle, and sample data make it quick to test syntax before you copy a path into your code.
How to Use JSON Path Finder
Load your JSON
Paste JSON into the input panel, click Upload File to load a .json file, or hit Sample Data to try it instantly. The tree view parses your JSON automatically, and the status bar shows whether it is valid.
Find a path
In Find Path mode, click any key, value, or array element in the tree. Its JSONPath appears in the path bar below — click Copy Path to send it to your clipboard.
Evaluate an expression
Switch to Evaluate mode, type a JSONPath expression such as $.store.book[?(@.price < 10)], then press Enter or click Run. The matched results and a count of items appear instantly, ready to copy.
Switch notation
Use the Dot / Bracket toggle to flip between $.store.book[0].title and $['store']['book'][0]['title']. Open the Cheat Sheet any time you need a syntax reminder.
Features
Interactive Tree View
Your JSON renders as a collapsible tree with badges showing key and element counts, opening the first two levels by default for a balanced view.
Click to Find Path
Click any node to instantly get its JSONPath expression, updating in real time as you navigate the structure.
JSONPath Evaluator
Run JSONPath queries against your data and see matching results immediately, complete with a count of matched items.
Filters & Wildcards
Supports filter expressions like [?(@.price < 10)], wildcards *, and comparison operators ==, !=, <, <=, >, >=.
Recursive Search & Slicing
Use the .. operator to find keys at any depth, plus array slicing [start:end:step] and negative indices like [-1].
Dot & Bracket Notation
Toggle between clean dot notation and bracket notation that handles keys with spaces or special characters.
Color-Coded Types
Objects, arrays, strings, numbers, booleans, and null each get a distinct color so you can read structures at a glance.
JSONPath Cheat Sheet
Open the built-in reference panel for common JSONPath expressions and what they do, right when you need a syntax reminder.
Expand & Collapse
Expand all or collapse all nodes in one click to move quickly through large or deeply nested JSON.
Upload & Sample Data
Load a .json file from your device or drop in the bundled sample JSON to start exploring in seconds.
Copy Paths & Results
Copy any found path or evaluated result to your clipboard with a single click.
Live Validation & Stats
A status indicator flags valid or invalid JSON and shows line count, size, and total key count as you type.
Fully Client-Side
Everything runs in your browser with no uploads, so your JSON stays private and works even offline.
Frequently Asked Questions
What is JSONPath?
JSONPath is a query language for JSON, similar to XPath for XML. An expression always starts with $ (the root) and uses dots or brackets to navigate deeper. For example, $.store.book[0].title points to the title of the first book in a store object.
How do I find the path to a value in JSON?
Paste your JSON, stay in Find Path mode, and click the value in the tree view. Its JSONPath appears in the path bar below, and the Copy Path button copies it straight to your clipboard — no need to write the expression by hand.
What is the difference between dot and bracket notation?
Dot notation ($.store.name) is shorter and easier to read but only works with simple alphanumeric keys. Bracket notation ($['store']['name']) works with any key, including those containing spaces, hyphens, or other special characters. Use the Dot / Bracket toggle to switch instantly.
How do I filter array elements?
Use the filter syntax [?(@.field op value)]. For example, $.products[?(@.price < 50)] returns products cheaper than 50, $.users[?(@.active == true)] returns active users, and $.items[?(@.category == 'electronics')] matches a specific category. The supported operators are ==, !=, <, <=, >, and >=.
What does the .. operator do?
The double-dot (..) performs a recursive search through the entire structure. For example, $..author finds every value under an "author" key no matter how deeply it is nested.
Can I use negative array indices?
Yes. $.array[-1] returns the last element, $.array[-2] the second-to-last, and so on. You can also slice with a step, such as $.book[0:6:2] to take every other element.
Is my JSON data safe?
Yes. All JSON parsing and JSONPath evaluation happen entirely in your browser using JavaScript. No data is sent to any server, and nothing is stored after you close the page.
What is the maximum JSON size supported?
There is no hard limit, but very large files (over about 10 MB) may slow the browser down because of tree rendering. For the smoothest experience, keep your JSON to a few megabytes.
No comments yet. Be the first to comment!