Get Model Catalog Entry
Endpoint
GET /apiops/projects/{projectName}/llm-models/{modelName}/
Authentication
Requires a Personal API Access Token.
Header
Authorization: Bearer YOUR_TOKEN
Request
Headers
| Header | Value | Required |
|---|---|---|
| Authorization | Bearer {token} | Yes |
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| projectName | string | Yes | Project name |
| modelName | string | Yes | Model catalog entry name, in \{providerCode\}/\{modelId\} form (e.g. openai/gpt-5) |
Query Parameters
None
Response
Success Response (200 OK)
{
"status": "SUCCESS",
"resultList": [
{
"id": "6644f0a1c2e4b81234567890",
"projectId": null,
"name": "openai/gpt-5",
"providerDefinitionId": "6640aa12c2e4b8000000ef01",
"providerCode": "openai",
"modelId": "gpt-5",
"displayName": "GPT-5",
"contextWindow": 128000,
"maxOutputTokens": 16384,
"pricePerMillionInput": 1.25,
"pricePerMillionOutput": 10.00,
"pricePerMillionCached": 0.125,
"pricePerImage": null,
"pricePerAudioMinute": null,
"pricePerCharacterTts": null,
"capabilities": ["chat", "function_calling", "vision", "reasoning"],
"modality": "TEXT",
"isDeprecated": false,
"deprecatedAt": null,
"sunsetAt": null,
"builtIn": true,
"lastUpdatedAt": "2026-05-14T09:30:00Z"
}
],
"resultCount": 1
}
Response Fields
| Field | Type | Description |
|---|---|---|
| status | string | Response status: SUCCESS or FAILURE |
| resultList | array | Single-element array containing the requested entry |
| resultCount | integer | Number of entries returned (always 1 on success) |
Model Catalog Entry Object Fields
| Field | Type | Description |
|---|---|---|
| id | string | Internal identifier (read-only) |
| projectId | string | Owning project id; null for global built-in entries |
| name | string | Catalog name in \{providerCode\}/\{modelId\} form (e.g. openai/gpt-5) |
| providerDefinitionId | string | Reference to the owning LLM provider definition |
| providerCode | string | Denormalized provider code (e.g. openai, anthropic) |
| modelId | string | Provider-facing model identifier (e.g. gpt-5) |
| displayName | string | Human-readable label (e.g. GPT-5) |
| contextWindow | integer | Context window size in tokens |
| maxOutputTokens | integer | Maximum output tokens; null means the provider default is used |
| pricePerMillionInput | number | USD per 1M input tokens |
| pricePerMillionOutput | number | USD per 1M output tokens |
| pricePerMillionCached | number | USD per 1M cached input tokens; null if unsupported |
| pricePerImage | number | USD per generated image; null if unsupported |
| pricePerAudioMinute | number | USD per minute of audio (STT); null if unsupported |
| pricePerCharacterTts | number | USD per input character (TTS); null if unsupported |
| capabilities | array[string] | Capability tags (e.g. chat, function_calling, vision, embedding, json_mode, reasoning) |
| modality | string | Model modality: TEXT, VISION, AUDIO, EMBEDDING, RERANK, MULTIMODAL, IMAGE |
| isDeprecated | boolean | Whether the model is deprecated |
| deprecatedAt | string | Deprecation announcement time (ISO-8601); null if not deprecated |
| sunsetAt | string | Planned removal time (ISO-8601); null if not scheduled |
| builtIn | boolean | true = Apinizer-shipped seed entry (price-only edit, no delete); false = custom. |
| lastUpdatedAt | string | Last built-in update time (ISO-8601); null for custom entries |
EnumStatus
SUCCESS- Operation successfulFAILURE- Operation failed
Error Response (400 Bad Request)
{
"status": "FAILURE",
"resultMessage": "Model catalog entry (name: openai/gpt-5) was not found!"
}
or
{
"status": "FAILURE",
"resultMessage": "Model catalog entry name can not be empty!"
}
Error Response (401 Unauthorized)
{
"status": "FAILURE",
"resultMessage": "Token is not valid!"
}
cURL Example
curl -X GET \
"https://demo.apinizer.com/apiops/projects/MyProject/llm-models/openai%2Fgpt-5/" \
-H "Authorization: Bearer YOUR_TOKEN"
Notes and Warnings
- Name form: The catalog name uses the LiteLLM-style
{providerCode}/{modelId}format. Because it contains a/, URL-encode the slash as%2Fin the path. - Case-insensitive lookup: The entry is matched by name, case-insensitively, within the project.
- Built-in visibility: Global built-in entries (
builtIn=true,projectId: null) are visible from every project. - No secret fields: All fields are returned in plaintext — the catalog carries no
@SecretDatafields and no_classdiscriminator.
Related Documentation
- List Model Catalog Entries - List all entries in a project
- Update Model Catalog Entry - Update an existing entry
- Model Catalog API - Resource overview
- Authentication Guide - How to obtain and use API tokens
- Error Handling - Error response formats