changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "$schema": "http://json-schema.org/draft-07/schema#",
+ "additionalProperties": false,
+ "properties": {
+ "models": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "capabilities": {
+ "description": "Any of: vision, image_gen, transcription, audio_in, audio_out, audio (legacy, means either audio direction), tools, reasoning, web_search.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "contextLength": {
+ "description": "Context window in tokens.",
+ "type": "number"
+ },
+ "displayName": {
+ "description": "Human-readable model name.",
+ "type": "string"
+ },
+ "id": {
+ "description": "Model id to pass to chat_complete and to the OpenAI-compatible API, e.g. \"anthropic/claude-sonnet-5\".",
+ "type": "string"
+ },
+ "pricing": {
+ "additionalProperties": false,
+ "properties": {
+ "inputPer1MRub": {
+ "description": "Price of 1M input tokens in rubles, decimal string, e.g. \"182.40\". \"0.00\" when unit is not \"token\".",
+ "type": "string"
+ },
+ "isFree": {
+ "description": "True only for genuinely free models. Do not infer this from a zero price: models billed per image or per minute also report \"0.00\" token rates.",
+ "type": "boolean"
+ },
+ "outputPer1MRub": {
+ "description": "Price of 1M output tokens in rubles, decimal string. \"0.00\" when unit is not \"token\".",
+ "type": "string"
+ },
+ "unit": {
+ "description": "Billing unit. \"token\" — priced per token, the two Rub fields below are meaningful. \"unit\" — priced per image, per minute, per character and so on; token fields are \"0.00\" and the real price is in models_get_pricing → perUnit. \"unknown\" — no pricing on record.",
+ "enum": [
+ "token",
+ "unit",
+ "unknown"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "unit",
+ "inputPer1MRub",
+ "outputPer1MRub",
+ "isFree"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "id",
+ "displayName",
+ "capabilities",
+ "contextLength",
+ "pricing"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "nextCursor": {
+ "description": "Pass back as `cursor` to fetch the next page. Absent when the last page was returned.",
+ "type": "string"
+ }
+ },
+ "required": [
+ "models"
+ ],
+ "type": "object"
+}