JSON-Path-Finder Online
Klicke auf einen JSON-Wert und erhalte seinen Pfad sofort. Kostenlos, in deinem Browser.
Click any path to copy
Wofür es gedacht ist
JSON-Pfade per Klick finden
Kompatibel mit JSONPath und jq
Generierte Pfade sind in Standard-JSONPath, jq, jsonata und den meisten JSON-Manipulationsbibliotheken gültig.
100% privat
Dein JSON wird im Browser verarbeitet. Nie an Server gesendet. Sicher für JSONs mit internen API-Daten.
Interaktiver visueller Baum
Das JSON wird als farblich nach Typ kodierter Baum angezeigt (string, number, boolean, array, object) für einfache Navigation.
Sofortig
Der Pfad erscheint in dem Moment, in dem du klickst. Keine Formulare, keine Buttons, kein Warten.
So funktioniert es
Drei Schritte, kein Aufwand
Dein JSON einfügen
Gib das JSON ein, das du erkunden möchtest. Das Tool validiert es und zeigt den Baum interaktiv, farblich nach Typ kodiert.
Auf einen beliebigen Wert klicken
Klicke auf einen beliebigen Schlüssel oder Wert im JSON. Das Tool berechnet und zeigt sofort den vollständigen Pfad in Punkt-Notation und JSONPath-Syntax an.
Den Pfad kopieren
Kopiere den generierten Pfad (z. B. data.users[0].address.city), um ihn direkt in deinem Code, einer jq-Abfrage oder einem API-Tool zu verwenden.
FAQ
Noch Fragen?
Ein JSON-Pfad ist die Abfolge von Schlüsseln und/oder Array-Indizes, die benötigt werden, um auf einen bestimmten Wert in einer verschachtelten JSON-Struktur zuzugreifen. In {"user": {"name": "Alice"}} wäre der Pfad zum Namen user.name in Punkt-Notation oder $.user.name in JSONPath-Syntax. Pfade sind unverzichtbar zum programmatischen Extrahieren von Werten, zum Konfigurieren von Geschäftsregeln auf Basis von JSON-Daten und zum Schreiben von Datentransformationsabfragen.
JSONPath ist eine Abfragesprache für JSON, analog zu XPath für XML, vorgeschlagen von Stefan Goessner im Jahr 2007. Das $-Zeichen repräsentiert den Dokumentstamm. Der Punkt . greift auf eine Objekteigenschaft zu: $.store.book. Klammern [] greifen auf Array-Indizes zu: $.users[0]. Rekursive Abfragen verwenden ..: $..name ruft alle name-Felder auf beliebiger Ebene ab. Filter werden als [?(@.price < 10)] ausgedrückt.
JSON-Pfade haben mehrere praktische Verwendungen: (1) API-Debugging - genau feststellen, wo sich ein Wert in einer großen Antwort befindet; (2) jq-Abfragen - jq '.data.users[0].name' zum Extrahieren von Werten im Terminal; (3) Konfigurations-Extraktion - Skripte, die Werte aus komplexen JSON-Konfigurationsdateien lesen; (4) Datentransformationen mit Tools wie JSONata oder jolt; (5) Validierungsregeln in JSON-Schema mit Verweis auf bestimmte Felder.
Arrays in JSON sind nullbasiert indiziert. Das erste Element ist [0], das zweite [1] und so weiter. In JSONPath greift $.items[0] auf das erste Element zu, $.items[-1] auf das letzte (in Implementierungen, die negative Indizes unterstützen), und $.items[0,2] greift auf Elemente bei Index 0 und 2 zu. Um auf alle Array-Elemente zuzugreifen, verwende den Platzhalter: $.items[*].
Das Tool verarbeitet JSON mit beliebiger Verschachtelungstiefe. Bei extrem tief verschachtelten JSONs oder solchen mit Tausenden von Knoten kann das Rendern des interaktiven Baums in Browsern mit begrenzten Ressourcen langsamer werden. In der Praxis haben die meisten REST-APIs und Konfigurationsdateien weniger als 10 Verschachtelungsebenen, mit denen das Tool problemlos umgeht.
JSONPath: Stefan Goessners Spezifikation 2007, RFC 9535, jq und REST-API-Debugging
JSONPath wurde 2007 von Stefan Goessner als Abfragesprache für JSON vorgeschlagen, analog zu XPath für XML. Im Gegensatz zu XPath wurde JSONPath bis zum RFC 9535 (2024) nie formal standardisiert. Mehrere Implementierungen in verschiedenen Sprachen (Jayway in Java, jsonpath in Python, jsonpath-ng, jp in Go) übernahmen leicht unterschiedliche Varianten der ursprünglichen Spezifikation. RFC 9535 vereinheitlichte schließlich die Syntax, um konsistentes Verhalten über Implementierungen hinweg zu gewährleisten.
jq ist das beliebteste Befehlszeilen-Tool zur JSON-Verarbeitung, erstellt von Stephen Dolan im Jahr 2012. Es funktioniert als Stream-Prozessor: empfängt JSON über stdin, wendet einen Filter (Pfadausdruck und Transformation) an und gibt JSON über stdout aus. Befehle wie curl https://api.example.com/users | jq '.[0].email' ermöglichen es, Werte aus API-Antworten direkt im Terminal zu extrahieren. Die Pfad-Zugriffssyntax von jq ist sehr ähnlich zu JSONPath, wenn auch mit Unterschieden bei Arrays und Filtern.
In der modernen REST-API-Entwicklung ist das Debuggen komplexer JSON-Antworten eine tägliche Aufgabe. Tools wie Postman, Insomnia und Bruno ermöglichen das Schreiben von JSONPath-Ausdrücken zum Extrahieren von Antwortwerten in Tests und Pre-Scripts. AWS verwendet JSONPath in Step Functions zum Extrahieren von Daten zwischen Workflow-Schritten. Kubernetes verwendet JSONPath in kubectl mit --jsonpath zum Extrahieren von Feldern aus Cluster-Objekten. Die genauen Pfade von Feldern in komplexem JSON zu kennen, ist fundamental für effizientes Arbeiten mit APIs und strukturierten Daten.