{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/stackit/main/json-schema/stackit-get-chat-model-response-schema.json",
  "title": "GetChatModelResponse",
  "x-generated": "2026-10-18",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/stackit-model-serving-openapi.yml#/components/schemas/GetChatModelResponse",
  "properties": {
    "message": {
      "type": "string"
    },
    "model": {
      "$ref": "#/$defs/ChatModelDetails"
    }
  },
  "required": [
    "model"
  ],
  "type": "object",
  "$defs": {
    "ChatModelDetails": {
      "properties": {
        "bits": {
          "enum": [
            1,
            2,
            4,
            8,
            16
          ],
          "format": "int32",
          "type": "integer",
          "x-enum-varnames": [
            "ONE_BIT",
            "TWO_BITS",
            "FOUR_BITS",
            "EIGHT_BITS",
            "SIXTEEN_BITS"
          ]
        },
        "category": {
          "enum": [
            "standard",
            "plus",
            "premium"
          ],
          "type": "string"
        },
        "contextLength": {
          "format": "int64",
          "type": "integer"
        },
        "description": {
          "maxLength": 2000,
          "pattern": "^[0-9a-zA-Z\\s.:\\/\\-]+$",
          "type": "string"
        },
        "displayedName": {
          "maxLength": 200,
          "minLength": 1,
          "pattern": "^[0-9a-zA-Z\\s_-]+$",
          "type": "string"
        },
        "id": {
          "description": "generated uuid to identify a model",
          "format": "uuid",
          "type": "string"
        },
        "name": {
          "description": "huggingface name",
          "maxLength": 200,
          "minLength": 1,
          "pattern": "^[0-9a-zA-Z\\s.:\\/\\-]+$",
          "type": "string"
        },
        "quantizationMethod": {
          "enum": [
            "PTQ",
            "QAT"
          ],
          "type": "string",
          "x-enum-descriptions": [
            "Post training quanitization",
            "Quantization-aware training"
          ]
        },
        "region": {
          "type": "string"
        },
        "size": {
          "description": "model size in bytes",
          "format": "int64",
          "type": "integer"
        },
        "skus": {
          "items": {
            "$ref": "#/$defs/SKU"
          },
          "type": "array"
        },
        "tags": {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "url": {
          "description": "url of the model",
          "maxLength": 200,
          "minLength": 1,
          "pattern": "^[0-9a-zA-Z\\s.:\\/\\-]+$",
          "type": "string"
        }
      },
      "required": [
        "id",
        "name",
        "displayedName",
        "description",
        "size",
        "contextLength",
        "tags",
        "url",
        "category",
        "skus",
        "region"
      ],
      "type": "object"
    },
    "SKU": {
      "properties": {
        "description": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "required": [
        "id"
      ],
      "type": "object"
    }
  }
}