Developer Tools
JSON Pointer Evaluator
Navigate JSON with standard slash-separated JSON Pointers.
Use an empty pointer for the entire document. Escape ~ as ~0 and / inside a member name as ~1.
Matched value
Type: string
editor
About This Tool
JSON Pointer is a compact standard notation for identifying one value inside a JSON document. It is used by specifications and APIs including JSON Patch and OpenAPI-related workflows, and it solves a different problem from formatting JSON or writing a general query expression. This evaluator follows the core JSON Pointer token rules: an empty pointer selects the whole document, slash-separated tokens select object members or array indexes, ~1 represents a slash inside a member name, and ~0 represents a tilde. Evaluation happens locally and the input is parsed as data rather than executed.
How To Use It
- Paste or type a valid JSON document in the JSON field.
- Enter an empty pointer to select the whole document, or begin with / and add one reference token for each object member or array position you want to traverse.
- For a member name containing /, write ~1 in that token. For a member name containing ~, write ~0.
- Read the matched value and its JSON type. Missing members, malformed escapes, invalid array indexes, and attempts to traverse primitive values are reported explicitly.
Examples
Nested array value
For {"users":[{"name":"Ada"}]}, the pointer /users/0/name selects the string Ada.
Slash in a property name
For a property literally named a/b, use the token a~1b because ~1 decodes to / after the pointer is split into tokens.
Tilde in a property name
For a property named m~n, write m~0n. The ~0 escape represents a literal tilde.
Useful Notes
Pointer structure
A JSON Pointer is either the empty string, which references the complete document, or a sequence of slash-prefixed reference tokens. Tokens are evaluated from left to right against the current JSON value. Object tokens name members; array tokens are non-negative decimal indexes.
Escaping is small but important
JSON Pointer reserves two escape sequences inside tokens: ~0 for a literal ~ and ~1 for a literal /. Decoding ~1 before ~0 prevents escape text from being interpreted twice. Other tilde escape sequences are rejected rather than guessed.
Arrays and indexes
When the current value is an array, a token must be a valid existing array index. This evaluator rejects leading-zero forms such as 01 and indexes beyond the array length. It evaluates existing documents only; the special append behavior used by JSON Patch is not an existing array value and is outside this evaluator's scope.
JSON Pointer is not JSONPath
JSON Pointer identifies a single location through exact tokens. It does not provide wildcards, recursive descent, filters, slices, or query expressions commonly associated with JSONPath implementations. Keeping these concepts separate makes results predictable and standards-oriented.
Strings versus JSON serialization
A matched string is shown as its text value for convenient copying. Objects, arrays, numbers, booleans, and null are displayed using JSON-style formatting. The result type is shown separately so values such as the string false are distinguishable conceptually from the boolean false.
Privacy and safety
The document and pointer are evaluated in browser JavaScript. No code from the JSON is executed, and the tool does not send the document to an API. As with any browser tool, avoid pasting secrets into environments you do not trust.
FAQ
Is JSON Pointer the same as JSONPath?
No. JSON Pointer is a compact standardized location syntax based on exact slash-separated tokens. JSONPath is a broader query concept with features and dialects such as wildcards and filters.
How do I select the whole JSON document?
Use an empty JSON Pointer. A single slash / is different: it selects an object member whose name is the empty string, if that member exists.
Why does /a/b not select a property named a/b?
A slash separates pointer tokens. To reference a slash inside one property name, escape it as ~1, so the property a/b is written as /a~1b.
Does this modify my JSON?
No. It only resolves and displays an existing value. It does not apply JSON Patch operations or mutate the document.
Related Tools
JSON Formatter & Validator
PopularValidate JSON, pretty-print it, minify it, and inspect JSON paths.
JSON to TypeScript Generator
Infer TypeScript types from JSON sample data.
CSV & JSON Converter
Convert structured CSV and JSON data in either direction.
JWT Decoder
Inspect JWT header, payload, and time claims locally.