{ "openapi": "3.1.0", "info": { "title": "Provider Monitor Schema V2", "version": "2.4", "description": "A provider’s declaration of a model, expressed as typed input/output modality objects that own their pricing and capacity. Only request-scoped entries live at the document root." }, "components": { "schemas": { "ModelDocumentV2": { "type": "object", "properties": { "schema_version": { "type": "string", "enum": [ "2.4" ] }, "id": { "type": "string" }, "hugging_face_id": { "type": "string" }, "name": { "type": "string" }, "created": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991 }, "quantization": { "anyOf": [ { "$ref": "#/components/schemas/Quantization" }, { "type": "null" } ] }, "tokenizer": { "type": "string" }, "description": { "type": "string" }, "input_modalities": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/InputModality" } }, "output_modalities": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/OutputModality" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/RequestPricingEntry" }, "description": "Entries must be unique by type" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/RequestCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "deprecation_date": { "anyOf": [ { "type": "string", "format": "date", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$" }, { "type": "string", "format": "date-time", "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$" } ] }, "is_ready": { "type": "boolean" }, "is_free": { "type": "boolean" }, "discount_to_user": { "type": "number", "exclusiveMaximum": 1 }, "openrouter": { "type": "object", "properties": { "slug": { "type": "string" } }, "required": [ "slug" ], "additionalProperties": false }, "datacenters": { "type": "array", "items": { "$ref": "#/components/schemas/Datacenter" } }, "deployment_region": { "type": "string", "minLength": 1 }, "compliance": { "$ref": "#/components/schemas/Compliance" } }, "required": [ "schema_version", "id", "name", "input_modalities", "output_modalities" ], "additionalProperties": false }, "InputModality": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "text" ] }, "supported_inputs": { "type": "object", "properties": { "max_context_length": { "$ref": "#/components/schemas/IntegerInputLimit" }, "max_prompt_length": { "$ref": "#/components/schemas/IntegerInputLimit" } }, "additionalProperties": false }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/InputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (ttl_seconds, implicit, utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/InputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "image" ] }, "supported_inputs": { "$ref": "#/components/schemas/ImageSupportedInputs" }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/InputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (ttl_seconds, implicit, utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/InputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "video" ] }, "supported_inputs": { "type": "object", "properties": { "sources": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/MediaSource" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "formats": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/VideoInputFormat" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "max_duration_seconds": { "$ref": "#/components/schemas/NumberInputLimit" }, "max_content_size_bytes": { "$ref": "#/components/schemas/IntegerInputLimit" } }, "additionalProperties": false }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/InputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (ttl_seconds, implicit, utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/InputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "audio" ] }, "supported_inputs": { "type": "object", "properties": { "sources": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/MediaSource" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "formats": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/AudioInputFormat" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "max_duration_seconds": { "$ref": "#/components/schemas/NumberInputLimit" }, "max_content_size_bytes": { "$ref": "#/components/schemas/IntegerInputLimit" } }, "additionalProperties": false }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/InputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (ttl_seconds, implicit, utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/InputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } } }, "required": [ "type" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "file" ] }, "supported_inputs": { "type": "object", "properties": { "sources": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/MediaSource" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "formats": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/FileInputFormat" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "references": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "integer" ] }, "min": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991 }, "max": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991 }, "unit": { "$ref": "#/components/schemas/DescriptorUnit" } }, "required": [ "type" ], "additionalProperties": false }, "max_content_size_bytes": { "$ref": "#/components/schemas/IntegerInputLimit" } }, "additionalProperties": false }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/InputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (ttl_seconds, implicit, utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/InputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } } }, "required": [ "type" ], "additionalProperties": false } ] }, "OutputModality": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "text" ] }, "max_length": { "$ref": "#/components/schemas/IntegerInputLimit" }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "image" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "video" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "speech" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "transcription" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "embeddings" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "rerank" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "audio" ] }, "supported_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "passthrough_parameters": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "pricing": { "type": "array", "items": { "$ref": "#/components/schemas/OutputPricingEntry" }, "description": "Entries must be unique by type together with the qualifier fields (utc_start, utc_end)" }, "capacity": { "type": "array", "items": { "$ref": "#/components/schemas/OutputCapacityEntry" }, "description": "Entries must be unique by type, unit, and window" }, "streaming": { "type": "boolean" } }, "required": [ "type", "supported_parameters" ], "additionalProperties": false } ] }, "InputCapacityEntry": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/InputPricingType" }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "per": { "$ref": "#/components/schemas/CapacityWindow" }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "per", "value" ], "additionalProperties": false }, "OutputCapacityEntry": { "anyOf": [ { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/OutputPricingType" }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character", "request" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "per": { "$ref": "#/components/schemas/CapacityWindow" }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "per", "value" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "concurrency" ] }, "unit": { "type": "string", "enum": [ "request" ] }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "value" ], "additionalProperties": false } ] }, "RequestCapacityEntry": { "anyOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "request" ] }, "unit": { "type": "string", "enum": [ "request" ] }, "per": { "$ref": "#/components/schemas/CapacityWindow" }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "per", "value" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "web_search" ] }, "unit": { "type": "string", "enum": [ "search" ] }, "per": { "$ref": "#/components/schemas/CapacityWindow" }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "per", "value" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "concurrency" ] }, "unit": { "type": "string", "enum": [ "request" ] }, "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 } }, "required": [ "type", "unit", "value" ], "additionalProperties": false } ] }, "CapacityWindow": { "type": "string", "enum": [ "minute", "hour", "day" ] }, "InputPricingEntry": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "prompt" ] }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } }, "utc_start": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_end": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_days": { "minItems": 1, "type": "array", "items": { "type": "string", "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ] }, "description": "UTC weekdays the entry applies on; absent means every day" } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false, "dependentRequired": { "utc_start": [ "utc_end" ], "utc_end": [ "utc_start" ] }, "description": "Time-window qualifiers: utc_start and utc_end must be declared together and must differ; the window is half-open [utc_start, utc_end) and may wrap midnight. utc_days scopes the entry to specific UTC weekdays: with a window it scopes the window, without one it covers the listed whole UTC days." }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "cached_prompt" ] }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } }, "ttl_seconds": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, "implicit": { "default": false, "type": "boolean" }, "utc_start": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_end": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_days": { "minItems": 1, "type": "array", "items": { "type": "string", "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ] }, "description": "UTC weekdays the entry applies on; absent means every day" } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false, "dependentRequired": { "utc_start": [ "utc_end" ], "utc_end": [ "utc_start" ] }, "description": "Time-window qualifiers: utc_start and utc_end must be declared together and must differ; the window is half-open [utc_start, utc_end) and may wrap midnight. utc_days scopes the entry to specific UTC weekdays: with a window it scopes the window, without one it covers the listed whole UTC days." }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "cache_write" ] }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } }, "ttl_seconds": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, "implicit": { "default": false, "type": "boolean" }, "utc_start": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_end": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_days": { "minItems": 1, "type": "array", "items": { "type": "string", "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ] }, "description": "UTC weekdays the entry applies on; absent means every day" } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false, "dependentRequired": { "utc_start": [ "utc_end" ], "utc_end": [ "utc_start" ] }, "description": "Time-window qualifiers: utc_start and utc_end must be declared together and must differ; the window is half-open [utc_start, utc_end) and may wrap midnight. utc_days scopes the entry to specific UTC weekdays: with a window it scopes the window, without one it covers the listed whole UTC days." } ] }, "OutputPricingEntry": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/OutputPricingType" }, "unit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character", "request" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } }, "utc_start": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_end": { "type": "integer", "minimum": 0, "maximum": 2359, "description": "HHMM UTC clock time; the minute component must be 00-59" }, "utc_days": { "minItems": 1, "type": "array", "items": { "type": "string", "enum": [ "monday", "tuesday", "wednesday", "thursday", "friday", "saturday", "sunday" ] }, "description": "UTC weekdays the entry applies on; absent means every day" } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false, "dependentRequired": { "utc_start": [ "utc_end" ], "utc_end": [ "utc_start" ] }, "description": "Time-window qualifiers: utc_start and utc_end must be declared together and must differ; the window is half-open [utc_start, utc_end) and may wrap midnight. utc_days scopes the entry to specific UTC weekdays: with a window it scopes the window, without one it covers the listed whole UTC days." }, "RequestPricingEntry": { "oneOf": [ { "type": "object", "properties": { "type": { "type": "string", "enum": [ "request" ] }, "unit": { "type": "string", "enum": [ "request" ] }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false }, { "type": "object", "properties": { "type": { "type": "string", "enum": [ "web_search" ] }, "unit": { "type": "string", "enum": [ "search" ] }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" }, "overrides": { "type": "array", "items": { "$ref": "#/components/schemas/PricingOverride" } } }, "required": [ "type", "unit", "cost_usd" ], "additionalProperties": false } ] }, "InputPricingType": { "type": "string", "enum": [ "prompt", "cached_prompt", "cache_write" ] }, "OutputPricingType": { "type": "string", "enum": [ "completion", "internal_reasoning" ] }, "RequestPricingType": { "type": "string", "enum": [ "request", "web_search" ] }, "PricingUnit": { "type": "string", "enum": [ "token", "image", "megapixel", "second", "character", "request", "search" ], "description": "`megapixel` prices resolution-scaled media: `cost_usd` is the rate per megapixel (1,000,000 pixels) of media area, so cost scales linearly with the pixel dimensions of the input consumed or output generated." }, "PricingOverride": { "type": "object", "properties": { "when": { "$ref": "#/components/schemas/PricingPredicate" }, "cost_usd": { "type": "string", "pattern": "^\\d+(\\.\\d+)?$", "description": "Non-negative decimal number string, e.g. \"0.000008\"" } }, "required": [ "when", "cost_usd" ], "additionalProperties": false }, "PricingPredicate": { "anyOf": [ { "$ref": "#/components/schemas/PricingParameterPredicate" }, { "$ref": "#/components/schemas/PricingCompositionPredicate" } ] }, "PricingParameterPredicate": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/PricingCondition" }, "minProperties": 1 }, "PricingCompositionPredicate": { "anyOf": [ { "type": "object", "properties": { "allOf": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/PricingPredicate" } } }, "required": [ "allOf" ], "additionalProperties": false }, { "type": "object", "properties": { "anyOf": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/PricingPredicate" } } }, "required": [ "anyOf" ], "additionalProperties": false }, { "type": "object", "properties": { "not": { "$ref": "#/components/schemas/PricingPredicate" } }, "required": [ "not" ], "additionalProperties": false } ] }, "PricingCondition": { "anyOf": [ { "type": "object", "properties": { "equals": { "type": [ "string", "number", "boolean" ] } }, "required": [ "equals" ], "additionalProperties": false }, { "type": "object", "properties": { "gte": { "type": "number" } }, "required": [ "gte" ], "additionalProperties": false }, { "type": "object", "properties": { "lte": { "type": "number" } }, "required": [ "lte" ], "additionalProperties": false }, { "type": "object", "properties": { "min_items": { "type": "integer", "minimum": 0, "maximum": 9007199254740991 } }, "required": [ "min_items" ], "additionalProperties": false } ] }, "ParameterDescriptor": { "type": "object", "properties": { "type": { "$ref": "#/components/schemas/ParameterDescriptorType" }, "min": { "type": "number" }, "max": { "type": "number" }, "default": { "type": [ "string", "number", "boolean" ] }, "values": { "type": "array", "items": { "type": [ "string", "number" ] } }, "unit": { "$ref": "#/components/schemas/DescriptorUnit" }, "max_items": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, "properties": { "type": "object", "propertyNames": { "type": "string" }, "additionalProperties": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "items": { "$ref": "#/components/schemas/ParameterDescriptor" } }, "required": [ "type" ], "additionalProperties": false, "allOf": [ { "if": { "properties": { "type": { "enum": [ "range" ] } }, "required": [ "type" ] }, "then": { "properties": { "values": false, "max_items": false, "properties": false, "items": false } } }, { "if": { "properties": { "type": { "enum": [ "integer" ] } }, "required": [ "type" ] }, "then": { "properties": { "values": false, "max_items": false, "properties": false, "items": false } } }, { "if": { "properties": { "type": { "enum": [ "boolean" ] } }, "required": [ "type" ] }, "then": { "properties": { "min": false, "max": false, "values": false, "unit": false, "max_items": false, "properties": false, "items": false } } }, { "if": { "properties": { "type": { "enum": [ "enum" ] } }, "required": [ "type" ] }, "then": { "properties": { "min": false, "max": false, "unit": false, "max_items": false, "properties": false, "items": false }, "required": [ "values" ] } }, { "if": { "properties": { "type": { "enum": [ "array" ] } }, "required": [ "type" ] }, "then": { "properties": { "min": false, "max": false, "values": false, "unit": false, "properties": false } } }, { "if": { "properties": { "type": { "enum": [ "object" ] } }, "required": [ "type" ] }, "then": { "properties": { "min": false, "max": false, "values": false, "unit": false, "max_items": false, "items": false }, "required": [ "properties" ] } }, { "if": { "properties": { "type": { "enum": [ "unknown" ] } }, "required": [ "type" ] }, "then": { "properties": { "min": false, "max": false, "values": false, "unit": false, "max_items": false, "properties": false, "items": false } } } ] }, "ParameterDescriptorType": { "type": "string", "enum": [ "range", "integer", "boolean", "enum", "array", "object", "unknown" ] }, "DescriptorUnit": { "type": "string", "enum": [ "second", "pixel", "byte", "token", "character" ] }, "MediaSource": { "type": "string", "enum": [ "url", "base64" ] }, "Quantization": { "type": "string", "enum": [ "int4", "int8", "fp4", "mxfp4", "nvfp4", "fp6", "fp8", "mxfp8", "fp16", "bf16", "fp32" ] }, "ImageInputFormat": { "type": "string", "enum": [ "image/png", "image/jpeg", "image/webp", "image/gif" ] }, "VideoInputFormat": { "type": "string", "enum": [ "video/mp4", "video/webm" ] }, "AudioInputFormat": { "type": "string", "enum": [ "audio/wav", "audio/mpeg" ] }, "FileInputFormat": { "type": "string", "enum": [ "application/pdf", "text/plain", "text/markdown", "text/html", "text/csv", "application/json" ] }, "ImageDetailLevel": { "type": "string", "enum": [ "auto", "low", "high", "original" ] }, "ImageInputRole": { "type": "string", "enum": [ "reference", "first_frame", "last_frame" ] }, "ImageSupportedInputs": { "type": "object", "properties": { "sources": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/MediaSource" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "formats": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/ImageInputFormat" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "detail_levels": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/ImageDetailLevel" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "references": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "integer" ] }, "min": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991 }, "max": { "type": "integer", "minimum": -9007199254740991, "maximum": 9007199254740991 }, "unit": { "$ref": "#/components/schemas/DescriptorUnit" } }, "required": [ "type" ], "additionalProperties": false }, "role": { "type": "object", "properties": { "type": { "type": "string", "enum": [ "enum" ] }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/ImageInputRole" } } }, "required": [ "type", "values" ], "additionalProperties": false }, "max_content_size_bytes": { "$ref": "#/components/schemas/IntegerInputLimit" } }, "additionalProperties": false }, "IntegerInputLimit": { "type": "object", "properties": { "value": { "type": "integer", "minimum": 1, "maximum": 9007199254740991 }, "unit": { "$ref": "#/components/schemas/DescriptorUnit" } }, "required": [ "value" ], "additionalProperties": false }, "NumberInputLimit": { "type": "object", "properties": { "value": { "type": "number", "exclusiveMinimum": 0 }, "unit": { "$ref": "#/components/schemas/DescriptorUnit" } }, "required": [ "value" ], "additionalProperties": false }, "Datacenter": { "type": "object", "properties": { "country_code": { "type": "string", "pattern": "^[A-Z]{2}$" }, "region": { "type": "string" } }, "required": [ "country_code" ], "additionalProperties": false }, "Compliance": { "type": "object", "properties": { "zdr": { "type": "boolean" }, "hipaa": { "type": "boolean" } }, "additionalProperties": { "type": "boolean" } } } } }