> ## Documentation Index
> Fetch the complete documentation index at: https://docs.prem.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Models

> Browse Router model IDs and discover the models available to your API key.

<Badge color="blue">Beta</Badge>

Router provides a key-aware model catalog. Model availability, context windows,
log probabilities, and streaming requirements can differ by API key.

## List models available to your key

Call the authenticated Models endpoint with the same API key that you will use
for chat requests:

```bash theme={"system"}
curl --silent --show-error https://router.prem.io/v1/models \
  --header "Authorization: Bearer $PREM_ROUTER_API_KEY"
```

With the OpenAI Python SDK:

```python theme={"system"}
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["PREM_ROUTER_API_KEY"],
    base_url="https://router.prem.io/v1",
)

for model in client.models.list().data:
    print(model.model_dump(exclude_none=True))
```

The response includes:

* `id`: The public model ID to send in chat requests.
* `context_length`: The context window available to the key.
* `input_modalities`: Supported input types.
* `capabilities`: Feature flags such as tools, vision, and log probabilities.
* `streaming_required`: Present and set to `true` when the key must use streaming for that model.

## Base catalog

The base catalog currently includes six models:

| Model ID          | Family   | Context window     | Base64 images | Logprobs      | Streaming     |
| ----------------- | -------- | ------------------ | ------------- | ------------- | ------------- |
| `kimi-k3`         | Kimi     | Up to 1.05M tokens | Yes           | No            | Optional      |
| `qwen-3.7-max`    | Qwen     | 1M tokens          | No            | Yes           | Key-dependent |
| `qwen-3.7-plus`   | Qwen     | 1M tokens          | Yes           | Yes           | Key-dependent |
| `qwen-3.6-plus`   | Qwen     | 1M tokens          | Yes           | Yes           | Key-dependent |
| `qwen-3.5-9b`     | Qwen     | 262K tokens        | Yes           | Key-dependent | Optional      |
| `deepseek-v4-pro` | DeepSeek | Up to 1.05M tokens | No            | Key-dependent | Optional      |

Use the exact lowercase model ID returned for your key. Do not add a provider
prefix or a slash.

## Optional aliases

Some API keys also return `qwen-3.8-max`. Use this alias only when
`GET /v1/models` returns it for the same key. Optional aliases can have different
capabilities and can change during the beta.

If you change API keys, retrieve the model list again. Remove optional aliases
that the new key does not return.

## Streaming requirements

When a model includes `"streaming_required": true`, set `stream=True` in Python
or `stream: true` in JavaScript. If the field is absent, streaming is optional.

See [API capabilities](/router/capabilities) for tool calls, structured output,
reasoning controls, vision, log probabilities, and streamed usage.
