🧑‍💻

JSONPath Tester

🔒 In your browser

Query JSON with JSONPath expressions.

Matches

Examples: $.store.book[*].title · $..price (recursive) · $.store.book[?(@.price<10)] (filter) · $..book[0,1]

About the JSONPath Tester

JSONPath is like XPath for JSON — a compact way to select values from a document. This free JSONPath tester lets you run expressions against your JSON and see the matches instantly, so you can build and debug queries for tools, scripts and integrations.

It runs entirely in your browser and keeps your data private.

How to test a JSONPath expression

  • Paste your JSON.
  • Type a JSONPath expression such as $.items[*].name.
  • See matching values update live as you refine the query.

Common JSONPath expressions

  • $.store.book[*].title — every book title.
  • $..author — every author anywhere in the document (recursive).
  • $.items[0] and $.items[-1:] — the first and last item.
  • $.items[?(@.price < 10)] — a filter on a field's value.

Frequently asked questions

What is JSONPath?

JSONPath is a query language for JSON that lets you select elements using expressions like $.store.book[*].author, similar to how XPath works for XML.

Does it support filters and recursive search?

Yes. It supports wildcards, array slices, filter expressions and recursive descent (the .. operator) so you can express complex selections.

Is my JSON uploaded?

No. Queries run locally in your browser against the JSON you paste.

How is JSONPath different from jq?

JSONPath is a query syntax for selecting values, supported across many languages and tools. jq is a full command-line processor that can also transform and reshape JSON. For picking out values, JSONPath is simpler; for scripting transformations, jq is more powerful.

Related searches

jsonpath testerjsonpath onlinequery jsonjson path evaluatorjsonpath expressionfilter json

Related Developer tools

🔗 Embed this tool on your website — free

Copy this and paste it into your page's HTML. The tool runs in the visitor's browser, just like here. Change height to fit, or add the optional auto-resize snippet below. Add ?theme=dark to the URL for dark mode.

<iframe src="https://toolhq.dev/embed/jsonpath-tester/" title="JSONPath Tester — ToolsHub" width="100%" height="520" style="border:1px solid #e5e7eb;border-radius:12px;max-width:680px" loading="lazy"></iframe>
Optional: auto-resize the iframe height

Add this once on the same page so the iframe grows to fit the tool:

<script>
addEventListener("message", function (e) {
  if (e.data && e.data.type === "toolshub:resize") {
    document.querySelectorAll('iframe[src*="/embed/"]').forEach(function (f) {
      if (f.contentWindow === e.source) f.style.height = e.data.height + "px";
    });
  }
});
</script>