Paste JSON and get the JSONPath expression of every element — browse the interactive tree or the full path list, click any node to copy its path. Dot and bracket notation supported.
Show calculation steps
Processed privately in your browser — nothing you paste is uploaded, logged or stored.
From document to path in one click
When you need the exact JSONPath of a value buried five levels deep, hand-counting brackets is error-prone. This tool lists the path of every node in the document — $.store.book[0].title style — alongside its type and a value preview, and renders the same data as an interactive tree where clicking any node copies its path to the clipboard. JSONPath itself was standardized in RFC 9535 (2024), and the paths produced here follow that syntax.
Worked example
Input:
{
"store": {
"book": [
{ "title": "Clean Code", "price": 26.99 },
{ "title": "The Pragmatic Programmer", "price": 31.5 }
],
"open": true
}
}Path list (values-only mode):
$.store.book[0].title string "Clean Code"
$.store.book[0].price number 26.99
$.store.book[1].title string "The Pragmatic Programmer"
$.store.book[1].price number 31.5
$.store.open boolean trueWhen to use it
- Writing extraction expressions for tools that consume JSONPath — API test suites, jq-style filters, low-code platforms, monitoring rules.
- Referencing an exact field in a bug report or code review instead of describing it in prose.
- Exploring a large response visually before deciding which fields your integration needs.
Limitations to know
- This tool derives paths from a concrete document; it does not evaluate query expressions with filters such as
[?(@.price > 10)]— that is a query tester’s job. - Paths address the document you pasted. If the API sometimes omits fields, a path that exists today may match nothing tomorrow.
- Very large documents render as a long list first; use the filter box before expanding the tree to keep the page responsive.
Common errors and fixes
- Path contains
['my key']instead of.my key— keys with spaces or special characters legally require bracket notation; that path is correct as shown. - “No paths matched” — the filter text matched nothing; clear the filter box and re-run.
- Copied path fails in my other tool — some consumers only accept bracket notation; switch the notation option and copy again.
To inventory keys without paths, the JSON Key Extractor is the lighter companion tool.
How to use the JSONPath Finder
- Paste your JSON into the input panel.
- Click "Find paths" — you get a full path list plus an interactive tree.
- Click any node in the tree (or press Enter on it) to copy its JSONPath.
- Switch between dot and bracket notation, filter the list, or limit it to values only.
Frequently asked questions
What is a JSONPath?
A JSONPath is an expression that addresses part of a JSON document: $ is the root, .name steps into a property and [0] indexes an array — so $.store.book[0].title points at the title of the first book. The syntax was standardized in RFC 9535 in 2024.
When do I need bracket notation?
Dot notation only works for keys that look like identifiers. Keys containing spaces, dots, quotes or other special characters must be written in brackets — $['my key'] — and this tool switches automatically per key, or entirely when you select bracket notation.
How do I find the path of one specific value?
Paste the document, then use the filter box with part of the key name or the value itself; the list narrows to matching paths. Or expand the tree to the node visually and click it to copy its path.
Does this evaluate JSONPath queries?
No — this tool answers the opposite question: you have a document and want the path of an element. Evaluating an expression you already have (with filters like [?(@.price > 10)]) is a query-tester job, a separate tool in this cluster.