List models
List every available model with context window, capabilities and pricing; no key required.
/model/v1/models● SupportedRequest parameters
supported_apiarray可选query: Match any comma-separated declared protocol ID; omitted or empty includes all models. Combined with type and output_modalities using AND. Invalid IDs return 400 with all legal values.
typearray可选query: Filter by one or more model types (comma-separated).
Filter by comma-separated model types; invalid values return 400 with the legal values.
output_modalitiesarray可选query: Match any comma-separated output modality; all disables modality filtering. Combined with type using AND.
Match any comma-separated output modality; all disables modality filtering. Combined with type using AND.
limitstring可选○ Currently ignoredquery: Accepted for compatibility and ignored: this endpoint always returns the full model catalog. Filter with type and output_modalities instead.
Accepted but currently has no effect; this endpoint returns the full model catalog.
qstring可选○ Currently ignoredquery: Accepted for compatibility and ignored: this endpoint always returns the full model catalog. Filter with type and output_modalities, or match ids on the client.
Accepted but currently has no effect; this endpoint returns the full model catalog.
Returns
200 list
OCR models have type ocr and pricing.page as a decimal string in USD per page, a Praxis extension to the Vercel model list shape; the four token prices are 0. Other models omit pricing.page.
Platform errors (auth, rate limits, validation) and OCR errors use problem+json; other model call errors follow the endpoint's own format (OpenAI or Anthropic) — see error codes
Response
HTTP 200
Model list
application/json
| Name | Type | Description |
|---|---|---|
| object | string | Object type; always `list`. |
| data | array<object> | Published models, in the order the catalog returns them, filtered by type, supported_api and output_modalities when given. |
| data[].id | string | Model id to pass as `model` in other calls. It can carry a creator prefix such as deepseek/deepseek-v4-pro. |
| data[].object | string | Object type; always `model`. |
| data[].created | number | Unix time in seconds at which the model was first published. |
| data[].owned_by | string | Organization that serves the model on this platform; always `deepractice`. |
| data[].name | string | Display name, prefixed with the vendor when one is known, for example `Vendor: Model`. |
| data[].description | string | null | Free-text description of the model; null when none is published. |
| data[].context_window | number | null | Maximum context length in tokens (input plus output); null when the catalog has no figure. |
| data[].max_tokens | number | null | Maximum number of output tokens the model can produce in one call; null when the catalog has no figure. |
| data[].type | string | Kind of model; it decides which endpoint accepts it. |
| data[].supported_apis | array<string> | Declared protocol IDs in stable lexicographic order; an empty array means no protocol is declared. Use these IDs with supported_api to find models for an operation. |
| data[].tags | array<string> | Capability tags of the model such as `tools`, `vision` or `reasoning`; use them to filter for features. |
| data[].architecture | object | Native modalities of the model. |
| data[].x_praxis | object | Platform extension. input_modalities states, per input format, how the model takes it. |
| data[].pricing | object | Prices in USD per named unit, as decimal strings. A unit that is absent is unpriced, which is not the same as free. |
| data[].released | string | Date (YYYY-MM-DD, UTC) on which the model was first published. |