{
  "slug": "jsonata-query",
  "name": "gizza-ai/jsonata-query",
  "version": "0.1.0",
  "title": "JSONata Online — Query & Transform JSON — gizza.ai",
  "description": "Run a JSONata expression against any JSON document right in your browser — query, filter, aggregate, and reshape JSON. Pure-Rust engine, nothing is uploaded, free.",
  "tags": [
    "jsonata",
    "json query",
    "jsonata online",
    "json transform",
    "jsonata playground",
    "json query language"
  ],
  "category": "data",
  "urls": {
    "page": "https://gizza.ai/tools/jsonata-query/",
    "markdown": "https://gizza.ai/tools/jsonata-query/index.md",
    "descriptor": "https://gizza.ai/tools/jsonata-query/tool.json",
    "deep_link_example": "https://gizza.ai/tools/jsonata-query/?query=%24sum%28items.price%29&json=%7B%20%22items%22%3A%20%5B%20%7B%20%22price%22%3A%202%20%7D%2C%20%7B%20%22price%22%3A%203%20%7D%20%5D%20%7D&pretty=true"
  },
  "cli": "gizza tool jsonata-query '$sum(items.price)' 'json={ \"items\": [ { \"price\": 2 }, { \"price\": 3 } ] }'",
  "tool": {
    "description": "Evaluate a JSONata query/transformation expression against a JSON document and return the result, using a pure-Rust JSONata engine. JSONata is a lightweight language for querying, filtering, aggregating, and reshaping JSON — e.g. navigate paths ('Account.Order.Product.Price'), filter ('items[price > 10].name'), aggregate ('$sum(items.price)', '$count(orders)'), and construct output ('{ \"total\": $sum(lines.amount) }'). The result is returned as a serialized JSON string in `output`; set pretty=true to indent. A query that matches nothing returns JSON null.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "json": {
          "description": "The JSON document to evaluate the expression against.",
          "type": "string"
        },
        "pretty": {
          "default": false,
          "description": "Pretty-print (indent) the JSON output. Default false (compact).",
          "type": "boolean"
        },
        "query": {
          "description": "The JSONata expression, e.g. '$sum(items.price)' or 'Account.Order.Product.{ \"name\": ProductName, \"total\": Price * Quantity }'.",
          "type": "string"
        }
      },
      "required": [
        "query",
        "json"
      ],
      "type": "object"
    }
  }
}