JSON Key ExtractorONLINE

List every JSON object key path or unique key name from a local document.

1 MiB per input · Ctrl / ⌘ + Enter to run

Paths use unambiguous bracket notation. Unique names are JSON-quoted. Duplicate object names are rejected.

Result
Ready. Paste input, then run the tool.
Your JSON stays in your browser. Core processing happens locally.
THE PRACTICAL GUIDE

List JSON keys and paths for a data inventory

JSON Key Extractor lists object member names or their full paths. It is useful for documenting a large payload without manually traversing every branch.

When should you use it?

  • Inventory fields in an API response.
  • Find the exact path to a repeated name.
  • Build a list of distinct property names.
WORKED EXAMPLE

Example: list nested key locations

Path mode records both the parent member and its nested member. Unique-name mode would output "user" and "name".

JSON input
{"user":{"name":"Alex"}}
Path mode output
$["user"]
$["user"]["name"]

Use full paths when names repeat

A field named id may appear under a customer, an order, and each line item. Distinct key names answer which names exist; full bracket paths answer where they occur. Choose the latter when preparing a mapping or investigating a renamed field. Array indexes identify positions in this particular document, so they do not automatically describe every future record.

Use the inventory as a review aid

A path list can reveal unexpected nesting or a field introduced by an upstream change. It does not describe requiredness or every possible type. Use a schema for those rules and JSONPath when you want the values at selected locations. The extractor rejects documents with more than 10,000 key paths instead of returning a partial inventory. Use a smaller representative branch if that limit is reached.

AT THE WORKBENCH

Find every key without scanning the document.

Choose complete locations for nested object members or a deduplicated list of names. Values stay in your browser.

  1. Paste valid JSON

    Arrays and nested objects are traversed in document order.

  2. Choose the output

    Show every bracket-notation path or each distinct key name.

  3. Copy or download

    Use the plain-text list in documentation or follow-up work.

IN PRACTICE

How do I list every nested key path in a JSON response?

Choose path mode to traverse object members through arrays and nested objects. Each result contains the full bracket location, so repeated names in different records remain distinguishable. Choose unique-name mode when you only need a field inventory.

Two paths for the same property name

text
{"users":[{"id":1},{"id":2}]}
$["users"][0]["id"]
$["users"][1]["id"]

Unique-name mode lists "users" and "id" once each; it does not show which array item contained the name.

Quoted bracket names distinguish a literal dot, bracket, or space in a property name from path syntax. This avoids ambiguity in documents with unusual keys.

BEFORE YOU USE THE RESULT

What should you check before using the result?

Name mode loses the location of each occurrence. Duplicate names within one object are rejected, and extraction stops after 10,000 key paths.

Paths versus names

A path identifies one object member, including array indexes and quoted names. Unique-name mode removes repeated names and does not preserve location. This is extraction, not a JSONPath query evaluator.

Limits and ambiguity

The tool accepts up to 1 MiB of JSON and stops after 10,000 key paths. Duplicate names in the same object are rejected because their paths would be ambiguous.

Understand JSON paths

Technical reference: JSON syntax and interoperability · RFC 8259

THE JSON FIELD GUIDE
All guides