JSON Path Finder

Query and explore JSON data with JSONPath expressions in real-time. Test filters, wildcards, recursive descent, and array slicing — all in your browser with no installation required. Includes built-in examples and a complete JSONPath syntax reference.

JSONPath Expression
JSON Input
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Result

Enter JSON and a JSONPath expression to see results

JSONPath Syntax Reference

Basics

  • $- Root element
  • $.field- Property access
  • $.a.b- Nested property
  • $['key']- Bracket notation

Arrays

  • $[0]- Array index (first)
  • $[-1]- Last element
  • $[0:3]- Slice (index 0-2)
  • $[*]- All elements

Recursive

  • $..field- Find field at any depth
  • $..name- All "name" values

Filters

  • $[?(@.age>25)]- Numeric comparison
  • $[?(@.x==true)]- Boolean check
  • $[?(@.s!="x")]- Not equal

How to Use JSON Path Finder

  1. 1

    Paste or Load JSON Data

    Paste your JSON into the input panel or click the sample button to load example data. The tool accepts any valid JSON including objects, arrays, and deeply nested structures from API responses.
  2. 2

    Write a JSONPath Expression

    Type a JSONPath expression in the query bar. Start with $ for the root, then use dot notation ($.users), bracket notation ($['key']), wildcards ($[*]), or recursive descent ($..name) to target the data you need.
  3. 3

    Review Matched Results

    Click Run or press Enter to execute the query. The output panel displays all matched values with syntax highlighting. Each result shows its resolved path as a clickable chip you can copy to your clipboard.
  4. 4

    Refine and Export

    Iterate on your expression using the built-in examples and syntax reference as guides. Once you have the results you need, copy individual paths, copy the full result set, or download the matched data as a JSON file.

Common Use Cases

1

API Response Debugging

Paste a REST or GraphQL JSON response and use JSONPath to drill into nested payloads. Quickly verify that the fields your frontend expects actually exist and contain the correct data types.
2

Configuration File Auditing

Load large configuration files (Terraform, package.json, app settings) and query for specific keys across all levels. Recursive descent ($..version) instantly surfaces every version field regardless of nesting depth.
3

Test Assertion Preparation

Build and validate JSONPath expressions before embedding them in automated test suites. Tools like REST Assured, Karate, and Postman use JSONPath for response assertions — test your paths here first to avoid brittle tests.
4

Data Extraction from Logs

Parse structured JSON log entries and filter for specific events, error codes, or user actions using filter expressions like $[?(@.level=='error')]. Extract exactly the records you need without writing a script.

Why Use JSON Path Finder?

Working with deeply nested JSON structures means manually tracing through layers of objects and arrays to find the right path. One wrong key name or missed array index and your query returns nothing. JSON Path Finder lets you paste any JSON document, click on a value in the interactive tree, and instantly get the exact JSONPath expression to access it. Test expressions against your data in real time, use advanced filters and array slicing, and copy paths ready to paste into your code. Supports both dot notation and bracket notation.

JSON Path Finder is a free browser-based tool for querying JSON documents with JSONPath expressions. JSONPath works like XPath for XML — it gives you a concise syntax to navigate objects, select array elements, apply filters, and recursively search nested structures. Whether you are debugging an API response, auditing a configuration file, or preparing assertions for an automated test suite, this tool lets you write, test, and refine your expressions in real-time with instant visual feedback.

The tool supports the full JSONPath specification: dot and bracket notation, wildcard selectors, array slicing with start/end/step, recursive descent ($..), and filter expressions with comparison operators. Results display matched values alongside their resolved paths, so you always know exactly where each value lives in the document. You can copy individual paths, export matched data as JSON, and explore categorized examples covering basics, wildcards, recursive descent, and conditional filters.

All processing happens entirely in your browser — your data never leaves your machine. For related workflows, use the JSON Formatter to pretty-print raw payloads before querying, the JSON Visualizer to explore data as an interactive tree, or the jq Playground when you need full data transformation beyond simple selection. If you are working with schemas, the JSON Schema Validator can verify structure before you query it.

How It Compares

JSONPath and jq are the two dominant approaches to querying JSON, but they solve different problems. JSONPath is a selection language — you write an expression like $.store.book[?(@.price<10)].title and get back matching values. It is lightweight, easy to learn, and widely supported in testing frameworks (Postman, REST Assured, Karate) and backend libraries across Java, Python, JavaScript, and Go. jq, on the other hand, is a transformation language. It can select data, but it can also reshape, aggregate, and construct entirely new JSON structures.

Choose JSONPath when your goal is to locate and extract specific values from a document — especially when the expression will be embedded in application code or test assertions. Choose jq when you need to pipe data through multiple transformation steps, compute aggregates, or produce restructured output. Both tools are available free on FindUtils: test selection expressions here in the JSON Path Finder, then switch to the jq Playground when your workflow demands transformation.

Pro Tips

1
Start with $ and build incrementally — add one level of depth at a time to understand the structure before writing complex expressions.
2
Use $..fieldName (recursive descent) when you know the key name but not its exact location in the hierarchy.
3
Combine filters with wildcards for powerful queries: $.users[?(@.age>30)].name returns only the names of users over 30.
4
Click any path chip in the results to copy the full resolved path — paste it directly into your code or test assertions.
5
Load the built-in sample data to practice with a realistic nested structure before working with your own JSON.

Frequently Asked Questions

1

What is JSONPath?

JSONPath is a query language for JSON, similar to XPath for XML. It allows you to specify paths to elements within a JSON document using dot notation, brackets, wildcards, and filter expressions. Starting from the root ($), you build expressions to navigate to exactly the data you need.
2

How do I copy a matched path?

When your JSONPath expression returns results, the matched paths are shown as clickable chips above the output. Click any path chip to copy it to your clipboard instantly.
3

What JSONPath features are supported?

This tool supports property access ($.field), bracket notation ($['key']), array indexing ($[0], $[-1]), array slicing ($[0:3]), wildcards ($[*]), recursive descent ($..field), and filter expressions ($[?(@.age>25)]).
4

What JSON types are shown?

The tool handles all JSON types: objects, arrays, strings, numbers, booleans, and null values. Results are displayed as formatted JSON with syntax highlighting.
5

Can I use this with API responses?

Yes! Copy the JSON response from your API testing tool, browser dev tools, or Postman and paste it into the input panel. Use JSONPath expressions to quickly extract the specific data you need.

Rate This Tool

0/1000

Get Weekly Tools

Suggest a Tool