What this tool does
A large API response is hard to read even when it is formatted: you scroll past hundreds of lines to find one field, then count brackets to work out how to reach it in code. The viewer turns the JSON into a tree, so you can open only the parts you care about and see the structure at a glance.
Select any value to get its path, ready to paste into code (data.orders[0].sku) or a JSONPath query ($.orders[0].sku). Everything runs in your browser, and the tree stays fast with large documents because it only draws the rows on screen.
How to use the JSON Viewer
- Paste JSON into the left panel, or press Sample to try an example.
- Open and close branches in the tree, or use Expand all and Collapse all.
- Type in the search box to find keys or values; the matching branches open automatically.
- Select a row to see its JSONPath and JavaScript path, then copy the path or the value.
Examples
Find the path to a value
{"orders":[{"id":"o1","items":[{"sku":"BK-12","qty":2}]}]}$.orders[0].items[0].sku
data.orders[0].items[0].skuSearch for BK-12 and select the match: the viewer shows both paths, ready to copy.
Keys that aren't valid identifiers
{"user":{"first name":"Ada","1st-login":"2026-11-08"}}$.user['first name']
data.user["first name"]Keys with spaces, hyphens or a leading digit use bracket notation, which works in both JSONPath and JavaScript.
Values inside nested arrays
{"matrix":[[1,2],[3,4]]}$.matrix[1][0]
data.matrix[1][0]Reading the tree
- Objects show how many keys they have and arrays how many items, so you can see the size of a section before opening it.
- Values are shown exactly as written in your JSON: large numbers keep every digit and strings keep their escapes.
- The first two levels are open when you paste. Use Expand all or Collapse all, or open single branches with the mouse or keyboard.
- Searching opens every branch that contains a match. Move between matches with the arrows next to the search box.
Keyboard
The tree follows the standard keyboard pattern for trees:
- Up / Down move between rows; Home / End go to the first and last row.
- Right opens a closed branch, or moves to its first child; Left closes an open branch, or moves to its parent.
- Enter or Space opens or closes a branch.
Limitations
- The viewer shows the JSON; it doesn't edit it. Change the text in the input panel and the tree updates.
- Search matches text in keys and in string, number, true, false and null values. It does not run JSONPath queries.
- Strict JSON only. To repair invalid JSON first, use the JSON Fixer.
- Inputs up to 10 MB are supported. Everything runs in your browser.
Frequently asked questions
Is my JSON sent to a server?
No. The tree is built entirely in your browser. Nothing you paste is uploaded, stored or logged.
What is JSONPath?
A query language for JSON, standardised as RFC 9535. $ is the whole document, .name selects a property and [0] an array item. Many tools accept it, including Kubernetes (kubectl -o jsonpath), Postman tests and most JSON libraries.
Why are some paths written with brackets?
A key with a space, hyphen or leading digit can't follow a dot, so it goes in brackets and quotes: data["first name"] in JavaScript and $['first name'] in JSONPath.
Can it open very large files?
Yes, up to 10 MB. The tree only draws the rows you can see, so scrolling stays smooth. Opening every branch of a very large document at once can take a moment.