onlinetools.dev

Testador de JSONPath

Consulte JSON com expressões JSONPath e veja cada match com seu caminho

Roda localmente
loading…
Sobre esta ferramenta

Teste expressões JSONPath contra o seu próprio JSON e veja cada match com seu valor e seu caminho concreto. Suporta a sintaxe que cobre o uso do dia a dia: notação de ponto e de colchetes, índices de array (inclusive negativos), curingas, unions (['a','b']) e descida recursiva ($..price).

A saída de caminho por match é a parte discretamente útil: consulte $..id em um documento profundo e cada resultado diz exatamente onde ele mora ($.data.items[3].id), pronto para colar no código. Ela transforma "em algum lugar deste blob" em um endereço exato.

Expressões de filtro ([?(@.price < 10)]) ainda não estão implementadas — a ferramenta diz isso explicitamente em vez de devolver resultados errados. Para extração estrutural, que é a maior parte do uso de JSONPath, tudo funciona.

Perguntas frequentes

Qual é a diferença entre $.a.b e $..b?
$.a.b segue uma rota exata: a chave a na raiz, depois a chave b dentro dela. $..b (descida recursiva) encontra todo b em qualquer lugar do documento, em qualquer profundidade. A descida recursiva é poderosa mas pode surpreender — ela também casa chaves b aninhadas dentro de coisas que você não considerou.
Como acesso chaves com espaços ou hífens?
Notação de colchetes com aspas: $['my key'] ou $.data['content-type']. A notação de ponto só funciona para chaves que sejam nomes válidos no estilo de identificadores.
Índices negativos de array funcionam?
Sim — [-1] é o último elemento, [-2] o penúltimo, seguindo a convenção popularizada pelo Python e adotada pelo RFC 9535. [0] continua sendo o primeiro elemento.
JSONPath é padronizado?
Desde 2024, sim — o RFC 9535 define a sintaxe e a semântica. Implementações escritas antes dele divergem em casos de borda (especialmente filtros e unions), então a mesma expressão pode se comportar diferente entre bibliotecas; teste contra a implementação com que você faz o deploy.
Ferramentas relacionadas