Consulta JSON con JSONPath
Consulta JSON con JSONPath: comodines, descenso recursivo, slices y filtros como [?(@.price < 10)]. Los resultados se actualizan al escribir. No usa sintaxis jq.
$ es la raíz; .name o ['name'] selecciona un hijo; [0] un elemento del array; [*] todos los elementos; .. busca a cualquier profundidad; [?(@.price < 10)] filtra; [-1:] toma el último elemento.
Se ejecuta completamente en tu navegador. Tus datos nunca se suben.
Herramientas Relacionadas
Ver Todas¿Qué es Consulta JSON (JSONPath)?
La herramienta JSON Query evalúa expresiones JSONPath sobre tu JSON y muestra todos los valores que coinciden como un array JSON. Admite comodines, descenso recursivo, slices de arrays y expresiones de filtro. Ojo: usa la sintaxis JSONPath ($.store.book[*].title), no la sintaxis de tuberías de jq.
Cómo usar Consulta JSON (JSONPath)
- Pega JSON en el cuadro JSON de entrada (o haz clic en un ejemplo, que también carga datos de muestra).
- Escribe una Expresión JSONPath, por ejemplo
$..price. - Lee los valores que coinciden en la salida; la etiqueta indica cuántos hay.
- Copia el array de resultados con Copiar.
Ejemplo
{"store":{"book":[{"title":"A","price":8},{"title":"B","price":12}]}}
Query: $.store.book[?(@.price < 10)].title [ "A" ]
Cuándo usar Consulta JSON (JSONPath)
Úsalo para probar expresiones JSONPath antes de usarlas en herramientas que aceptan JSONPath (API gateways, kubectl -o jsonpath de Kubernetes, frameworks de pruebas, monitorización). Si necesitas funciones de jq como tuberías, map o construcción de objetos, usa jq directamente: no están soportadas. Para una sola ruta exacta, el Buscador de rutas JSON es más sencillo.
Cómo funciona Consulta JSON (JSONPath)
Las consultas se evalúan con la librería jsonpath-plus (JSONPath de Goessner más extensiones). $ es la raíz, .name o ['name'] selecciona una propiedad, [0] un índice, [*] todos los hijos, .. busca a cualquier profundidad, [start:end] hace slices de arrays (los índices negativos cuentan desde el final) y [?(…)] filtra usando @ como elemento actual. Las expresiones de filtro se ejecutan en el evaluador seguro de jsonpath-plus, que admite comparaciones y operadores lógicos pero no ejecuta JavaScript arbitrario. El resultado siempre es un array de coincidencias, impreso con sangría de 2 espacios.
Casos de Uso Comunes
- Extraer todos los precios o ids de una respuesta de API
- Probar JSONPath para pruebas de API o reglas de monitorización
- Filtrar elementos de un array según una condición
- Prototipar consultas al estilo de kubectl jsonpath
Nota de Seguridad
Todo se ejecuta localmente en tu navegador; el código que pegas no se sube a ningún servidor.
Preguntas Frecuentes
¿Esto es jq?
No. Usa JSONPath, un lenguaje de consulta distinto. Las tuberías y funciones de jq no están soportadas.
¿Por qué el resultado siempre es un array?
Una expresión JSONPath puede coincidir con cualquier número de valores, así que todas las coincidencias se devuelven en un array.
¿Se envía mi JSON a un servidor?
No, la consulta se ejecuta en tu navegador.
¿Los números grandes pierden precisión aquí?
Sí, los valores se evalúan como números de JavaScript, así que los enteros mayores que 2^53 pueden redondearse en los resultados.