pressione ⌘K para trocar de ferramenta
VALIDATE & INSPECT

Avaliador JSONPath

Avalia expressões JSONPath em dados JSON.

local
jsonpath-finder

Examples: $..price, $.store.book[0], $..book[?(@.price>15)]

§01 SOBRE ESTA FERRAMENTA

Visão geral

JSONPath é para JSON o que XPath é para XML: uma linguagem de consulta para extrair valores específicos de estruturas aninhadas. Este avaliador executa a sua expressão sobre o JSON colado enquanto você digita — útil para prototipar extrações no estilo jq, escrever asserções de API ou descobrir por que um caminho no seu código não devolve nada.

Como usar

  1. Digite uma expressão no campo JSONPath, por exemplo $.store.book[*].title.
  2. Cole o seu documento na área de texto JSON.
  3. Os valores encontrados aparecem em Result como um array JSON formatado. Erros de interpretação em qualquer uma das entradas são mostrados ali mesmo.

Exemplos

  • $.store.book[*].title nos dados de exemplo → ["A", "B"]
  • $..price[10, 20] (descida recursiva por todas as chaves price)
  • $..book[?(@.price>15)] → os objetos de livro cujo preço passa de 15

Observações

A avaliação roda a cada tecla pressionada, então documentos muito grandes podem dar a sensação de lentidão. As expressões de filtro usam uma sintaxe de comparação parecida com a de JavaScript; lembre-se de que @ se refere ao nó que está sendo testado no momento.

O resultado sai sempre como array JSON, mesmo quando há um único valor, porque uma mesma expressão pode casar com qualquer quantidade de nós.

FAQ
Meus dados JSON são enviados para algum lugar?
Não. A expressão é avaliada inteiramente no seu navegador com a biblioteca jsonpath-plus. Seu JSON nunca sai da página.
Quais recursos de JSONPath são suportados?
A ferramenta usa jsonpath-plus, que cobre a sintaxe Goessner mais comum: notação com ponto e com colchetes, curingas ($.store.book[*]), descida recursiva ($..price), fatias de array e expressões de filtro como $..book[?(@.price>15)].
Por que o resultado é sempre um array?
Uma consulta JSONPath pode casar com zero, um ou muitos nós, então o resultado é devolvido como um array JSON com todos os valores encontrados. Um array vazio significa que o caminho não casou com nada.