Ir para o conteúdo
Totalmente local

Extrator de JSONPath

Extraia valores correspondentes de um documento JSON com uma expressão JSONPath ou JSON Pointer.

Entrada
Saída

Extrator de JSONPath

Cole um documento JSON, escreva uma consulta e esta ferramenta retorna apenas os valores que correspondem — sem necessidade de escrever um script ou abrir um REPL para extrair um campo de uma estrutura de dados grande. Suporta dois estilos de consulta: expressões JSONPath como $.users[*].email e referências RFC 6901 JSON Pointer como /users/0/email. Alterne entre eles com a opção de sintaxe dependendo de qual você já tem à mão, a partir de documentação de API, uma linha de registo ou um relatório de erro.

O suporte para JSONPath cobre os padrões que as pessoas realmente usam: notação de ponto e acesso entre parênteses ($.user.name ou $['user name'] para chaves com espaços), o curinga [*] para expandir sobre cada elemento de um array ou cada valor de um objeto, índices numéricos incluindo índices negativos contados do final ($.items[-1]), e .. descida recursiva para encontrar uma chave em qualquer profundidade, independentemente de quão profundamente está aninhada ($..email). Expressões filtradas e intervalos de fatia não são suportados — se sua consulta precisa de lógica condicional, primeiro extraia o array pai e depois filtre-o.

Duas opções moldam a saída. "Lista de linhas" imprime cada valor encontrado em sua própria linha — strings são impressas como estão, objetos e arrays são impressos como JSON compacto — o que é conveniente para passar diretamente para outra ferramenta baseada em linhas como sort ou dedupe. "Array JSON" envolve cada correspondência em um único array JSON, útil quando você quer um subconjunto limpo e analisável do documento original. Ative "Mostrar caminho para cada resultado" para prefixar o caminho resolvido a cada resultado, o que ajuda quando vários campos diferentes podem plausibilmente explicar um valor dado.

Tudo funciona localmente no seu navegador: o documento que você cola e a expressão que você escreve nunca são enviados para lugar nenhum. Isso o torna seguro para apontar para respostas reais de API, exportações de configuração interna ou trechos de registo de produção. A contagem sob a saída relata exatamente quantas correspondências foram encontradas, então um resultado inesperadamente vazio é fácil de distinguir de uma consulta que silenciosamente retornou nada.

FAQ

Qual é a diferença entre JSONPath e JSON Pointer?
As expressões JSONPath como $.users[*].email podem corresponder a muitos valores ao mesmo tempo usando curingas e descida recursiva. As referências JSON Pointer como /users/0/email sempre se resolvem para no máximo um valor — é um esquema de endereçamento mais simples e mais literal, comum em JSON Schema e cargas HTTP PATCH.
Quais recursos JSONPath são suportados?
Notação de ponto e acesso entre parênteses, o curinga [*], índices numéricos de array (incluindo negativos) e .. descida recursiva para uma chave em qualquer profundidade. Expressões filtradas como [?(@.price<10)] e intervalos de fatia como [0:2] não são suportados.
O que acontece se minha expressão não corresponder a nada?
Você obtém um resultado vazio e uma contagem de 0 correspondências — isso não é tratado como um erro. Um erro é mostrado apenas para entrada JSON inválida ou uma expressão malformada.
Posso ver de onde veio cada valor?
Ative "Mostrar caminho para cada resultado" e cada resultado é prefixado com o caminho exato onde foi encontrado, na mesma sintaxe da consulta — caminhos JSONPath como $.users[0].email, ou o pointer original para consultas JSON Pointer.
Meu documento JSON é enviado para algum lugar?
Não. A análise e o processamento de consultas acontecem completamente no seu navegador — o documento e a expressão nunca deixam seu dispositivo.