Models List Metadata API
Models
Models List Metadata API
- GET /v1/models — basic list
-
expandquery parameter to include category, capability tags, and parameter schema
- For automation, dynamic forms, pre-validation
GET
Models List Metadata API
The model list metadata endpoint (
GET /v1/models) returns only basic fields such as the model name by default. Adding the expand query parameter appends the following metadata to each model:- Category (
category):chat/image/video/audio - Capability tags (
capability_tags): such asText to VideoandImage to Image - Parameter schema (
parameters): standard JSON Schema indicating required/optional, enums, ranges, and defaults
Backward compatible: Without expand (or with an unrecognized value), the response is identical to the existing format, so existing clients are unaffected.
Get model list (with metadata)
GET/v1/models
Request headers
Query parameters
The returned model scope is the same as when
expand is omitted: it is controlled by the API key’s model restrictions and assigned group.
Example 1: Just category
cURL
Example 2: Full parameter contract for video models
cURL
input_schema.properties shows only selected fields):
Response field description
Item fields
category=unknown indicates the platform has not yet cataloged metadata for that model (usually non-standard names configured in the Key’s whitelist). The model itself can still be called normally.
Capability tags
parameters block
How to read input_schema
Standard JSON Schema. Most tooling (ajv, pydantic, openapi-generator, etc.) can consume it directly:- Required parameters = the top-level
requiredarray;anyOfmeans “at least one of the following combinations” (in the example above, choose one ofprompt,messages, or the three reference-media inputs) - Enum values =
enumon properties - Range =
minimum/maximum - Default =
default additionalProperties: true— allows extra fields not listed in the schema (typically passed viametadata)
Query a single model
In addition to the list, single-model contracts have a dedicated endpoint (same shape, with extra idempotency and response contract explanation blocks):Notes
- Chat / audio models currently only have
categoryandcapability_tags, with noparameters(parameter contracts currently cover image / video only and will be added for other categories in later versions). - The schema is a best-effort contract; server-side validation is authoritative: some dynamic constraints, such as specific resolution and duration combinations, may not be fully expressed in the schema. The server may still reject a request and return a specific reason.
- Data freshness is measured in minutes: the catalog is cached, so newly added models or parameter changes may take a few minutes to appear.
- A full
expand=parametersresponse can reach hundreds of KB: filter bycategorywhen possible and sendAccept-Encoding: gzip. - This parameter only affects OpenAI-format model lists; Anthropic / Gemini dialect model lists do not support
expand.