jsontoolskit.org
JSON and JSON Schema utilities, in the browser
Say hi →

JSONPath Tester

RFC 9535 · Goessner / Jayway compat · snippet gallery

Evaluate JSONPath expressions live. Each match appears with its absolute path. Type expressions like $.users[?(@.age > 30)].name; the matches list and tree view update on every keystroke.

Match list

    Paste JSON.

    How to test JSONPath

    1. Paste your JSON.
    2. Type a JSONPath expression (e.g. $.users[?(@.age > 30)].name).
    3. The Matches list shows every match, with its absolute path. The tree view highlights matching nodes in green.
    4. Mode toggles between RFC 9535 (modern, strict) and Goessner (legacy / Jayway compatibility). Pick the one your runtime uses.
    5. Snippet gallery of common patterns (filter, deep wildcard, slice).

    FAQ

    What is the difference between RFC 9535 and Goessner?

    RFC 9535 (2024) is the official JSONPath spec. Goessner (2007) is the older de-facto. Most modern libraries (jsonpath-plus 7+, jsonpath-rs) support both; a few corner cases (filter precedence, descendent semantics) differ.

    Why no matches for my filter?

    Check the syntax — Goessner uses ?(@.foo == 1); RFC 9535 uses [email protected] == 1 (no parentheses around the bracket-internal expression). The tool's snippet gallery shows valid forms.

    Will it work offline?

    Yes — uses jsonpath-plus, cached after first load.