DokumenGambarMediaAlat PDF

JSON Path Finder Online

Klik nilai JSON mana pun dan dapatkan path-nya seketika. Gratis, di browser Anda.

Click any path to copy

Processed in your browser

Temukan JSON path dengan satu klik

Kompatibel dengan JSONPath dan jq

Path yang dihasilkan valid dalam JSONPath standar, jq, jsonata, dan sebagian besar library manipulasi JSON.

100% pribadi

JSON Anda diproses di browser. Tidak pernah dikirim ke server mana pun. Aman untuk JSON dengan data API internal.

Pohon visual interaktif

JSON ditampilkan sebagai pohon dengan kode warna berdasarkan tipe (string, number, boolean, array, object) untuk navigasi yang mudah.

Instan

Path muncul saat Anda mengklik. Tanpa formulir, tanpa tombol, tanpa menunggu.

Tiga langkah, tanpa kerumitan

1

Tempel JSON Anda

Masukkan JSON yang ingin Anda jelajahi. Alat ini memvalidasinya dan menampilkan pohon secara interaktif dengan kode warna berdasarkan tipe.

2

Klik nilai mana pun

Klik pada kunci atau nilai mana pun dalam JSON. Alat ini segera menghitung dan menampilkan path lengkap dalam notasi titik dan sintaks JSONPath.

3

Salin path-nya

Salin path yang dihasilkan, misalnya data.users[0].address.city, untuk digunakan langsung dalam kode, kueri jq, atau alat API Anda.

Ada pertanyaan?

JSON path adalah urutan kunci dan/atau indeks array yang diperlukan untuk mengakses nilai tertentu dalam struktur JSON bersarang. Misalnya, dalam {user: {name: Alice}}, path ke nama adalah user.name dalam notasi titik, atau $.user.name dalam sintaks JSONPath. Path sangat penting untuk mengekstrak nilai secara programatik, mengonfigurasi aturan bisnis berbasis data JSON, dan menulis kueri transformasi data.

JSONPath adalah bahasa kueri untuk JSON, serupa dengan XPath untuk XML, yang diusulkan oleh Stefan Goessner pada 2007. Tanda $ merepresentasikan root dokumen. Titik . mengakses properti objek, misalnya $.store.book. Kurung siku [] mengakses indeks array, misalnya $.users[0]. Kueri rekursif menggunakan ..: $..name mengambil semua field name di level mana pun. Filter diekspresikan sebagai [?(@.price < 10)].

JSON path memiliki berbagai kegunaan praktis: (1) Debugging API untuk mengidentifikasi tepat di mana suatu nilai berada dalam respons besar; (2) Kueri jq menggunakan ekspresi seperti .data.users[0].name untuk mengekstrak nilai di terminal; (3) Ekstraksi konfigurasi dari file JSON yang kompleks; (4) Transformasi data dengan alat seperti JSONata atau jolt; (5) Aturan validasi dalam JSON Schema yang mereferensikan field tertentu.

Array dalam JSON diindeks dari nol. Elemen pertama adalah [0], elemen kedua [1], dan seterusnya. Dalam JSONPath, $.items[0] mengakses elemen pertama, $.items[-1] yang terakhir pada implementasi yang mendukung indeks negatif, dan $.items[0,2] mengakses elemen pada indeks 0 dan 2. Untuk mengakses semua elemen array, gunakan wildcard: $.items[*].

Alat ini menangani JSON dengan level bersarang apa pun. Namun, untuk JSON yang sangat dalam atau yang memiliki ribuan node, merender pohon interaktif mungkin melambat di browser dengan sumber daya terbatas. Dalam praktiknya, sebagian besar REST API dan file konfigurasi memiliki kurang dari 10 level bersarang, yang ditangani alat ini tanpa masalah.

JSONPath: spesifikasi Stefan Goessner 2007, RFC 9535, jq, dan debugging REST API

JSONPath diusulkan oleh Stefan Goessner pada 2007 sebagai bahasa kueri untuk JSON yang serupa dengan XPath untuk XML. Tidak seperti XPath, JSONPath tidak pernah distandardisasi secara formal sampai RFC 9535 di tahun 2024. Berbagai implementasi dalam berbagai bahasa seperti Jayway di Java, jsonpath di Python, jsonpath-ng, dan jp di Go mengadopsi variasi yang sedikit berbeda dari spesifikasi aslinya. RFC 9535 akhirnya menyatukan sintaks untuk memastikan perilaku yang konsisten di antara berbagai implementasi.

jq adalah alat baris perintah paling populer untuk memproses JSON, dibuat oleh Stephen Dolan pada 2012. Alat ini bekerja sebagai pemroses aliran: menerima JSON melalui stdin, menerapkan filter berupa ekspresi path dan transformasi, dan mengeluarkan JSON melalui stdout. Perintah seperti curl ke URL API dan disalurkan ke jq memungkinkan ekstraksi nilai dari respons API langsung di terminal. Sintaks akses path jq sangat mirip dengan JSONPath, meskipun terdapat perbedaan pada array dan filter.

Dalam pengembangan REST API modern, melakukan debug pada respons JSON yang kompleks adalah tugas harian. Alat seperti Postman, Insomnia, dan Bruno memungkinkan penulisan ekspresi JSONPath untuk mengekstrak nilai respons dalam pengujian dan pre-script. AWS menggunakan JSONPath dalam Step Functions untuk mengekstrak data di antara langkah-langkah workflow. Kubernetes menggunakan JSONPath dalam kubectl dengan flag --jsonpath untuk mengekstrak field dari objek cluster. Mengetahui path tepat dari field dalam JSON yang kompleks sangat fundamental untuk bekerja secara efisien dengan API dan data terstruktur.