JMESPath Evaluator

Run JMESPath Core expressions locally against JSON and export the JSON result.

JMESPath settings

JMESPath returns exactly one JSON value, not match positions. Community extensions such as root $, let, arithmetic, or extra functions are blocked.

Input

Private by design: your data never leaves your device.

Output

Paste valid JSON and a JMESPath expression.

Good to know

The JMESPath evaluator evaluates JMESPath expressions directly in your browser strictly according to the JMESPath core specification and returns exactly one JSON value, not multiple match positions like JSONPath. Community extensions such as root $, let bindings, arithmetic, or extra functions are deliberately blocked.

Typical searches include JMESPath tester, JSON query language, and AWS CLI query. An expression AST summary shows the query's structure, and the result can be exported as JSON, JSON Lines, CSV, or plain text. Important: JMESPath often returns null when a path doesn't exist — check field names, list projections, and filter conditions accordingly.

Typical use cases

Test an AWS CLI query expression before deployment

Since AWS CLI --query is based on JMESPath, an expression can be checked here against sample data before being used in a script.

Extract a filtered list from a JSON document

Use an expression like people[?age > `30`].name to deliberately extract filtered values from a JSON list.

Tips for better results

Trace null results back to missing paths

If a query returns null, first check field names and list projections instead of assuming an error in the expression itself.

Don't expect community extensions from other libraries

Root $, let bindings, arithmetic, or extra functions from some JMESPath implementations are deliberately blocked here, since they are not part of the core.

How it works

Step by step

  1. 1

    Paste JSON or open a file

    Paste JSON or open a JSON or TXT file up to 100 MB.

  2. 2

    Enter the JMESPath expression

    Enter a JMESPath core expression, for example people[?age > `30`].name.

  3. 3

    Export the result

    Choose the output format and copy or download the result.

Features

Strict core specification

Blocks community extensions like root $, let, or arithmetic for maximum standard compliance.

Four output formats

JSON, JSON Lines, CSV, or plain text for the query result.

Local processing

Your data never leaves your device; evaluation runs entirely in the browser.

Frequently asked questions

Why does my query return null?

JMESPath returns null when a path doesn't exist — check field names, list projections, and filter conditions.

Is my data uploaded?

No. Evaluation runs entirely locally in the browser.

More tools