# JSONPath Tester Online - Query JSON with Filters, Slices and a Cheat Sheet

> Free online JSONPath tester: query JSON with $.store.book[*], recursive .., slices and filters, listing every matching path and value, plus a cheat sheet.

- URL: https://qilingtools.com/en/json-path
- Category: Developer Tools (https://qilingtools.com/en/dev)
- Tags: [Developer](https://qilingtools.com/en/tags/dev), [Data Formats](https://qilingtools.com/en/tags/data)
- Last updated: 2026-10-26
- Price: Free, no sign-up
- Privacy: Runs locally in the browser; files are never uploaded

JSONPath is to JSON what XPath is to XML: a compact expression language for locating data, used by Jayway JsonPath, kubectl -o jsonpath, Postman, JMeter and countless API testing and low-code tools. Paste your JSON, type an expression, and every match is listed in real time with its normalized path (such as $.store.book[2].title) and value; copy a single path or all results as a JSON array. The evaluator is hand-written to RFC 9535 semantics and never uses eval. It supports the root $, dot and bracket member access, negative indexes, [start:end:step] slices including reverse steps, the * wildcard, recursive descent .., unions [a,b] and filter expressions ?(...) with == != < <= > >=, && || !, parentheses, regex matching =~ /…/i, comparisons against root values via $, and the length(), count(), match() and search() functions. Syntax errors point to the exact character. The cheat sheet below the results runs each example with one click, which makes it a quick way to learn or debug JSONPath.

## How to use

1. Paste your JSON (or use the sample)
2. Type a JSONPath expression or click an example in the cheat sheet
3. Review matching paths and values, then copy a path or all results

## Features

- Live results with the path and value of every match
- $, .key, ['key'], [n], [-1], slices, *, .., [a,b]
- Filters with comparisons, && || !, regex and root references
- length(), count(), match() and search() functions
- Syntax errors pinpointed to the character
- Clickable cheat sheet of examples
- Runs locally without eval; nothing uploaded

## FAQ

### How do I write a JSONPath filter expression?

Filters go inside brackets and start with ?, with @ standing for the current element: $..book[?(@.price < 10)] selects books cheaper than 10, $..book[?(@.isbn)] selects books that have an isbn, and $..book[?(@.price < 10 && @.category == 'fiction')] combines two conditions. You can also use || for or, ! for not, =~ /regex/i for pattern matching and $.path to compare against a value elsewhere in the document.

### What is the difference between .. and *?

* selects all direct children of the current node, so $.store.* returns the book array and the bicycle object. .. searches at any depth, so $..price finds the price of every book and the bicycle. They combine too: $..* returns every node in the document.

### Are results the same as Jayway or Kubernetes JSONPath?

The core syntax — root, dot and bracket access, indexes, slices, wildcards, recursive descent and filters — behaves the same across implementations. This tool follows RFC 9535 and also accepts the popular Jayway extras .length and =~ regex. Implementations differ on edge cases such as comparing mixed types or script expressions like (@.length-1), which this tool deliberately does not execute for safety.

### Is my JSON uploaded?

No. Parsing and querying happen entirely in your browser, and filter expressions are evaluated by a small built-in parser rather than eval, so sensitive API data never leaves your computer.

## Related tools

- [JSON Formatter](https://qilingtools.com/en/json): Free online JSON formatter: beautify or minify, validate with the exact line and column of any error, browse a collapsible tree, sort keys and escape strings.
- [Base64 Encode/Decode](https://qilingtools.com/en/base64): Free online Base64 encoder and decoder: UTF-8 safe, optional URL-safe variant, convert text to Base64 and back in real time. Processed locally, never uploaded.
- [URL Encode/Decode](https://qilingtools.com/en/url-encode): Free online URL encoder and decoder with encodeURIComponent and encodeURI modes. Escapes Chinese, spaces and special characters. Real-time and local, no upload.
- [JWT Decoder](https://qilingtools.com/en/jwt): Free online JWT decoder: decode the header and payload of a JSON Web Token, show expiry and issued-at times, all locally without uploading the token.
- [Timestamp Converter](https://qilingtools.com/en/timestamp): Free online Unix timestamp converter: convert timestamps and dates, auto-detect seconds or milliseconds, and show local, UTC, ISO 8601 and relative time.
- [Hash / Checksum](https://qilingtools.com/en/hash): Free online hash calculator: SHA-1, SHA-256, SHA-384 and SHA-512 of text or any file through the browser crypto API. Files never leave your device.
- [UUID Generator](https://qilingtools.com/en/uuid): Free online UUID generator: create RFC 4122 UUID v4 in bulk with a cryptographic RNG. Options for uppercase, no hyphens and braces, with one-click copy.
- [Base Converter](https://qilingtools.com/en/base-convert): Free online number base converter: convert between binary, octal, decimal, hexadecimal and any base 2–36. Uses BigInt for huge integers, computed locally.
