Lompat ke konten
SPCX Tools

JSONPath Tester

Evaluasi dan uji ekspresi JSONPath pada data JSON Anda secara instan di browser.

Berjalan secara lokal — file tidak pernah meninggalkan perangkat Anda

Memuat alat…

Cara menggunakan JSONPath Tester

  1. 1Tempel atau ketik data JSON Anda ke panel input kiri, atau klik "Sample" untuk memuat data contoh.
  2. 2Masukkan ekspresi JSONPath Anda di kolom input pada bagian atas halaman.
  3. 3Klik salah satu tombol contoh cepat di bawah input untuk melihat cara kerja pola kueri yang umum.
  4. 4Lihat hasil yang cocok, jumlah total kecocokan, dan path pasti dari elemen yang cocok di panel kanan.

Tester JSONPath yang cepat dan privat

Saat mengolah data JSON yang besar atau berlapis, mengekstrak informasi spesifik yang Anda butuhkan bisa jadi merepotkan. Tester JSONPath ini menyediakan lingkungan live untuk menulis, menguji, dan men-debug kueri Anda. Saat Anda mengetik ekspresi, alat ini langsung mengevaluasinya pada payload JSON Anda, menampilkan nilai yang diekstrak beserta path persis di mana nilai tersebut berada.

Karena ini adalah evaluator JSONPath client-side sepenuhnya, semua pemrosesan dilakukan secara lokal di perangkat Anda. Data JSON Anda tidak pernah dikirim ke server. Artinya, Anda bisa dengan aman menempelkan (paste) payload API production, hasil ekspor database, atau file konfigurasi sensitif tanpa khawatir akan kebocoran data atau pelanggaran privasi.

Fitur utama untuk developer

  • Evaluasi live: Hasilnya langsung diperbarui saat Anda mengubah data JSON atau kueri. Tidak perlu mengklik tombol submit atau menunggu respons server.
  • Parsing aman: Alat ini menggunakan engine evaluasi yang aman (eval: 'safe') untuk memproses kueri Anda, mencegah eksekusi kode berbahaya namun tetap mendukung penuh ekspresi filter yang kompleks.
  • Ekstraksi path: Selain menampilkan nilai yang cocok, alat ini juga menghasilkan path absolut untuk setiap kecocokan. Ini sangat berguna jika Anda perlu memperbarui node spesifik tersebut secara terprogram nantinya.
  • Contoh bawaan: Jika Anda belum terbiasa dengan sintaksnya, Anda bisa memuat dataset contoh toko buku dan mengklik beberapa ekspresi yang sudah tersedia untuk melihat cara kerja berbagai operator.

Cara menulis query JSONPath

JSONPath menggunakan sintaks khusus untuk menavigasi objek dan array JSON. Jika Anda ingin menguji logika ekspresi JSONPath, Anda perlu memahami operator-operator dasarnya:

  • $ mewakili objek atau array root. Setiap ekspresi JSONPath absolut dimulai dengan simbol ini.
  • @ mewakili node saat ini yang sedang diproses. Simbol ini utamanya digunakan di dalam ekspresi filter.
  • . atau [] adalah operator child yang digunakan untuk memilih properti. Sebagai contoh, $.store.book dan $['store']['book'] memiliki fungsi yang sama.
  • .. adalah operator recursive descent. Operator ini mencari key tertentu di mana saja dalam pohon JSON, tidak peduli seberapa dalam tingkatannya (misalnya, $..price menemukan semua harga).
  • * adalah wildcard yang cocok dengan semua elemen dalam objek atau array. Misalnya, $.store.* memilih semua hal yang ada langsung di dalam objek store.
  • [?()] menerapkan ekspresi filter. Anda dapat menggunakan operator logika standar di dalamnya. Sebagai contoh, $..book[?(@.author == 'Nigel Rees')] akan menemukan semua buku yang ditulis oleh penulis tersebut.
  • [start:end:step] memungkinkan Anda untuk memotong (slice) array, mirip dengan Python. $.store.book[-1:] memilih buku terakhir di dalam array.

Contoh penggunaan

Pengembangan dan debugging API. API REST dan GraphQL modern sering kali mengembalikan payload JSON yang sangat besar. Daripada menulis kode sementara untuk mem-parsing dan memeriksa respons, Anda dapat menempelkan payload ke alat JSONPath online ini untuk memverifikasi struktur data dengan cepat dan memastikan query Anda mengekstrak field yang tepat.

Pengujian otomatis. Saat menulis integration test atau end-to-end test (menggunakan alat seperti Postman, RestAssured, atau Playwright), Anda sering kali perlu memastikan bahwa nilai tertentu ada dalam respons JSON. Menggunakan jsonpath tester membantu Anda menyempurnakan string query sebelum menulisnya langsung (hardcode) ke dalam test suite Anda.

Ekstraksi dan transformasi data. Jika Anda sedang memigrasikan data atau membangun pipeline ETL (Extract, Transform, Load), Anda sering kali perlu mengisolasi array atau objek tertentu. Anda dapat menggunakan alat ini untuk mengetahui path persis yang dibutuhkan guna mengekstrak data target Anda. Jika data sumber Anda dalam format XML, Anda bisa menggunakan konverter XML to JSON terlebih dahulu, dan jika Anda perlu memformat data yang di-minify sebelum memeriksanya, JSON Formatter dapat membantu. Anda juga dapat menggunakan alat JSON Compare untuk melihat bagaimana data Anda berubah sebelum dan sesudah transformasi.

Pertanyaan yang sering diajukan

Apa itu JSONPath?
JSONPath adalah bahasa kueri untuk data JSON, mirip dengan penggunaan XPath pada XML. Bahasa ini memungkinkan Anda memilih dan mengekstrak node, array, atau nilai tertentu dari struktur JSON yang kompleks menggunakan ekspresi string yang ringkas.
Apakah data JSON saya aman?
Ya. Alat ini berjalan sepenuhnya secara lokal di browser Anda. Data JSON dan kueri Anda tidak pernah diunggah ke server mana pun, sehingga sangat aman untuk menguji respons API yang sensitif, file konfigurasi, atau data internal.
Bagaimana cara memfilter data berdasarkan kondisi tertentu?
Anda dapat menggunakan ekspresi filter dengan sintaks [?(@.property == 'value')]. Misalnya, $.store.book[?(@.price < 10)] akan menampilkan semua buku dalam array store yang harganya kurang dari 10.
Bisakah saya melihat lokasi persis dari elemen yang cocok?
Ya. Di bawah output hasil utama, terdapat bagian "Paths" yang dapat diperluas. Jika dibuka, bagian ini akan menampilkan JSONPath absolut yang akurat untuk setiap elemen yang cocok dalam kumpulan hasil Anda.
Mengapa saya mendapatkan error "Invalid JSON"?
JSON memerlukan format yang ketat. Pastikan semua kunci dan nilai string Anda diapit tanda kutip ganda (bukan kutip tunggal), dan tidak ada koma di akhir setelah item terakhir dalam objek atau array.
Spesifikasi JSONPath apa yang digunakan alat ini?
Alat ini menggunakan library jsonpath-plus yang populer, yang sepenuhnya mendukung spesifikasi JSONPath asli sekaligus menambahkan beberapa fitur lanjutan yang aman untuk query yang lebih kompleks. Alat ini mengevaluasi ekspresi secara aman tanpa menggunakan fungsi eval() JavaScript.