JSONPath é uma linguagem de consulta para JSON, semelhante ao XPath para XML. Suporta wildcards, filtros e descida recursiva. JSON Pointer (RFC 6901) é mais simples: aponta apenas para uma localização específica. Use JSONPath quando precisar corresponder a múltiplos nós ou filtrar por condições.
$ representa a raiz do documento JSON. Todas as expressões JSONPath começam com $. Por exemplo, $.store.book[0].title navega da raiz → store → array book → primeiro elemento → propriedade title.
Use [*] para selecionar todos os elementos. Por exemplo, $.users[*].name retorna a propriedade name de cada objeto no array users. Pode também usar .. para descida recursiva para encontrar todas as chaves correspondentes em qualquer profundidade.
Sim, use expressões de filtro como $.books[?(@.price < 10)] para selecionar livros mais baratos que $10. O símbolo @ refere-se ao elemento atual a ser avaliado. Pode combinar condições com && (e) e || (ou).
Extrair campos específicos de respostas de API, navegar em ficheiros de configuração complexos, testar saída de API em testes automatizados e consultar grandes conjuntos de dados. JSONPath também é usado em ferramentas como Postman, Kubernetes e vários pipelines ETL.