{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/edgechat-ai/json-schema/edgechat-ai-get-stats-response-schema.json",
  "title": "GetStatsResponse",
  "description": "Shape read from a live answer of 2026-10-07; fields may be added, never renamed or removed. Every field is optional: an answer carries the fields of its own branch. Without topic or geo: `corpus`. With one: that node's `node`, counts, and `children`. `articles` here counts distinct articles; /geo and /trees/geo count placements (an article in two periods counts twice there).",
  "x-generated": "2026-11-06",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/edgechat-ai-openapi.json#/components/schemas/GetStatsResponse",
  "type": "object",
  "properties": {
    "corpus": {
      "type": "object",
      "properties": {
        "articles": {
          "type": "integer"
        },
        "links": {
          "type": "integer"
        },
        "other_names": {
          "type": "integer"
        },
        "topic_nodes": {
          "type": "integer"
        },
        "geo_nodes": {
          "type": "integer"
        }
      }
    },
    "license": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "summary": {
          "type": "string"
        }
      }
    },
    "node": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "label": {
          "type": "string"
        },
        "tree": {
          "type": "string",
          "enum": [
            "topics",
            "geo"
          ]
        }
      }
    },
    "articles": {
      "type": "integer"
    },
    "links": {
      "type": "integer"
    },
    "other_names": {
      "type": "integer"
    },
    "by_period": {
      "type": "object",
      "additionalProperties": {
        "type": "integer"
      }
    },
    "children": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "articles": {
            "type": "integer"
          },
          "links": {
            "type": "integer"
          },
          "other_names": {
            "type": "integer"
          },
          "by_period": {
            "type": "object",
            "additionalProperties": {
              "type": "integer"
            }
          }
        }
      }
    },
    "periods": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  }
}