{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "definitions": {
    "InputModality": {
      "description": "Canonical user-input modality tags advertised by a model.",
      "oneOf": [
        {
          "description": "Plain text turns and tool payloads.",
          "enum": [
            "text"
          ],
          "type": "string"
        },
        {
          "description": "Image attachments included in user turns.",
          "enum": [
            "image"
          ],
          "type": "string"
        }
      ]
    },
    "Model": {
      "properties": {
        "defaultReasoningEffort": {
          "$ref": "#/definitions/ReasoningEffort"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "hidden": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "inputModalities": {
          "default": [
            "text",
            "image"
          ],
          "items": {
            "$ref": "#/definitions/InputModality"
          },
          "type": "array"
        },
        "isDefault": {
          "type": "boolean"
        },
        "model": {
          "type": "string"
        },
        "supportedReasoningEfforts": {
          "items": {
            "$ref": "#/definitions/ReasoningEffortOption"
          },
          "type": "array"
        },
        "supportsPersonality": {
          "default": false,
          "type": "boolean"
        },
        "upgrade": {
          "type": [
            "string",
            "null"
          ]
        }
      },
      "required": [
        "defaultReasoningEffort",
        "description",
        "displayName",
        "hidden",
        "id",
        "isDefault",
        "model",
        "supportedReasoningEfforts"
      ],
      "type": "object"
    },
    "ReasoningEffort": {
      "description": "See https://platform.openai.com/docs/guides/reasoning?api-mode=responses#get-started-with-reasoning",
      "enum": [
        "none",
        "minimal",
        "low",
        "medium",
        "high",
        "xhigh"
      ],
      "type": "string"
    },
    "ReasoningEffortOption": {
      "properties": {
        "description": {
          "type": "string"
        },
        "reasoningEffort": {
          "$ref": "#/definitions/ReasoningEffort"
        }
      },
      "required": [
        "description",
        "reasoningEffort"
      ],
      "type": "object"
    }
  },
  "properties": {
    "data": {
      "items": {
        "$ref": "#/definitions/Model"
      },
      "type": "array"
    },
    "nextCursor": {
      "description": "Opaque cursor to pass to the next call to continue after the last item. If None, there are no more items to return.",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "data"
  ],
  "title": "ModelListResponse",
  "type": "object"
}