{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/hootlens-com/json-schema/hootlens-com-overview-trends-schema.json",
  "title": "OverviewTrends",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/hootlens-com-openapi.json#/components/schemas/OverviewTrends",
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "compared",
        "current-only",
        "not-covered"
      ]
    },
    "windows": {
      "type": "object",
      "properties": {
        "current": {
          "type": "object",
          "properties": {
            "from": {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
            },
            "to": {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
            }
          },
          "required": [
            "from",
            "to"
          ],
          "additionalProperties": false
        },
        "previous": {
          "type": "object",
          "properties": {
            "from": {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
            },
            "to": {
              "type": "string",
              "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
            }
          },
          "required": [
            "from",
            "to"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "current",
        "previous"
      ],
      "additionalProperties": false
    },
    "countedFrom": {
      "type": "string",
      "pattern": "^\\d{4}-\\d{2}-\\d{2}$"
    },
    "current": {
      "type": "object",
      "properties": {
        "pageViews": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "clicks": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "snags": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "snagRate": {
          "anyOf": [
            {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "pageViews",
        "clicks",
        "snags",
        "snagRate"
      ],
      "additionalProperties": false
    },
    "previous": {
      "type": "object",
      "properties": {
        "pageViews": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "clicks": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "snags": {
          "type": "integer",
          "minimum": 0,
          "maximum": 9007199254740991
        },
        "snagRate": {
          "anyOf": [
            {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            },
            {
              "type": "null"
            }
          ]
        }
      },
      "required": [
        "pageViews",
        "clicks",
        "snags",
        "snagRate"
      ],
      "additionalProperties": false
    },
    "changes": {
      "type": "object",
      "properties": {
        "pageViews": {
          "type": "object",
          "properties": {
            "direction": {
              "type": "string",
              "enum": [
                "up",
                "down",
                "flat"
              ]
            },
            "absolute": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "percent": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            }
          },
          "required": [
            "direction",
            "absolute"
          ],
          "additionalProperties": false
        },
        "clicks": {
          "type": "object",
          "properties": {
            "direction": {
              "type": "string",
              "enum": [
                "up",
                "down",
                "flat"
              ]
            },
            "absolute": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            },
            "percent": {
              "type": "integer",
              "minimum": -9007199254740991,
              "maximum": 9007199254740991
            }
          },
          "required": [
            "direction",
            "absolute"
          ],
          "additionalProperties": false
        },
        "snagRate": {
          "type": "object",
          "properties": {
            "direction": {
              "type": "string",
              "enum": [
                "up",
                "down",
                "flat"
              ]
            },
            "points": {
              "type": "number"
            }
          },
          "required": [
            "direction",
            "points"
          ],
          "additionalProperties": false
        }
      },
      "required": [
        "pageViews",
        "clicks"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "status",
    "windows"
  ],
  "additionalProperties": false
}