JSON Pointer
Resolve an RFC 6901 JSON Pointer against a JSON document.
- Runs locally in your browser
- No upload required
Try it
Supported formats
Privacy
Runs entirely in your browser. Your input is never uploaded, stored, or sent to a third party.
Resolved /a/b to a value.
How it works
- Parsed the JSON document with the verbatim scanner.
- Decoded each reference token (~1 to / and ~0 to ~).
- Walked objects by key and arrays by decimal index.
- An empty pointer selects the whole document; a matched null is a found value.
Methodology
- Parse the document with the F054 verbatim scanner.
- Split the pointer on / and decode ~1 then ~0 in each reference token.
- Walk objects by exact key and arrays by decimal index; report the first failure.
Usage
- Paste a JSON document.
- Enter a JSON Pointer such as /store/book/0/title, or leave it empty for the whole document.
- Run the tool to see the resolved value or a not-found result.
Examples
These are examples, not current values: they use fixed inputs, while the interactive tool computes live results in your browser.
Object member
{
"text": "{\"a\":{\"b\":42}}",
"pointer": "/a/b"
}Array index
{
"text": "{\"items\":[\"x\",\"y\"]}",
"pointer": "/items/1"
}Escaped slash
{
"text": "{\"a/b\":1}",
"pointer": "/a~1b"
}Limitations
Pointer syntax
A JSON Pointer is a sequence of reference tokens separated by /. Each token either names an object member or indexes an array, and ~1 and ~0 escape a slash and a tilde.
Frequently asked questions
- How do I reference a key containing a slash?
- Escape it: / becomes ~1 and ~ becomes ~0, so the key a/b is referenced as /a~1b.
- Why is an empty pointer valid?
- RFC 6901 defines the empty string as the whole document, so it always resolves to the root value.
- Is my data uploaded?
- No. The resolution runs entirely in your browser and is never sent anywhere.
Sources
Send feedback
Tell us if this tool helped, report a problem, or suggest a tool. Only the message you type is sent — never the input you used in the tool.
Was this tool useful?
Prefer to write to us directly? See the contact page.