{
  "slug": "json-merge",
  "name": "gizza-ai/json-merge",
  "version": "0.1.0",
  "title": "JSON Merge — deep-merge JSON objects — gizza.ai",
  "description": "Deep-merge two or more JSON objects, with configurable array handling and last-wins conflict resolution — in your browser. Nothing is uploaded.",
  "tags": [
    "json merge",
    "deep merge json",
    "combine json",
    "merge objects",
    "json patch"
  ],
  "category": "data",
  "urls": {
    "page": "https://gizza.ai/tools/json-merge/",
    "markdown": "https://gizza.ai/tools/json-merge/index.md",
    "descriptor": "https://gizza.ai/tools/json-merge/tool.json",
    "deep_link_example": "https://gizza.ai/tools/json-merge/?documents=%7B%22a%22%3A%201%2C%20%22nested%22%3A%20%7B%22x%22%3A%201%7D%7D%0A%7B%22b%22%3A%202%2C%20%22nested%22%3A%20%7B%22y%22%3A%202%7D%7D&concat_arrays=true&indent=2"
  },
  "cli": "gizza tool json-merge '{\"a\": 1, \"nested\": {\"x\": 1}}\n{\"b\": 2, \"nested\": {\"y\": 2}}'",
  "tool": {
    "description": "Deep-merge two or more JSON documents (provided concatenated, whitespace/newline separated) left-to-right. Objects merge recursively; on a scalar/type conflict the later document wins. Arrays are replaced by default, or concatenated when concat_arrays=true. Output indentation is configurable (indent=0 minifies). Returns the merged JSON. Runs locally.",
    "parameters": {
      "additionalProperties": false,
      "properties": {
        "concat_arrays": {
          "default": false,
          "description": "When arrays collide: false (default) = the later array replaces the earlier; true = concatenate them.",
          "type": "boolean"
        },
        "documents": {
          "description": "Two or more JSON values to merge, concatenated (whitespace/newline separated), e.g. '{\"a\":1}\\n{\"b\":2}'. Merged left-to-right.",
          "type": "string"
        },
        "indent": {
          "default": 2,
          "description": "Output indentation in spaces (1-8). Use 0 to minify. Default 2.",
          "maximum": 8,
          "minimum": 0,
          "type": "integer"
        }
      },
      "required": [
        "documents"
      ],
      "type": "object"
    }
  }
}