Documentation for automated readers
A curated documentation index is available at: https://grafana.com/llms.txt
A complete documentation index is available at: https://grafana.com/llms-full.txt
These indexes can help with page discovery before fetching individual documents.
This page is also available in Markdown, which may be easier for automated readers and AI tools to parse than HTML. The Markdown version is available at https://grafana.com/docs/alloy/latest/reference/stdlib/json_path.md, or by sending Accept: text/markdown to https://grafana.com/docs/alloy/latest/reference/stdlib/json_path/. For broader documentation discovery, the curated index is available at https://grafana.com/llms.txt and the complete index is available at https://grafana.com/llms-full.txt.
json_path
The json_path function lookup values using jsonpath syntax.
The function expects two strings. The first string is the JSON string used look up values. The second string is the JSONPath expression.
json_path always returns a list of values. If the JSONPath expression doesn’t match any values, an empty list is returned.
A common use case of json_path is to decode and filter the output of a local.file or remote.http component to an Alloy syntax value.
Remember to escape double quotes when passing JSON string literals to
json_path.For example, the JSON value
{"key": "value"}is properly represented by the string"{\"key\": \"value\"}".
Examples
> json_path("{\"key\": \"value\"}", ".key")
["value"]
> json_path("[{\"name\": \"Department\",\"value\": \"IT\"},{\"name\":\"TestStatus\",\"value\":\"Pending\"}]", "[?(@.name == \"Department\")].value")
["IT"]
> json_path("{\"key\": \"value\"}", ".nonexists")
[]
> json_path("{\"key\": \"value\"}", ".key")[0]
valueWas this page helpful?
Related resources from Grafana Labs


